From patchwork Fri Nov 28 11:29:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125499 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 4DB8B3857C7B for ; Fri, 28 Nov 2025 11:30:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4DB8B3857C7B Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=UNodGadl X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [IPv6:2a00:1450:4864:20::434]) by sourceware.org (Postfix) with ESMTPS id 215593858D38 for ; Fri, 28 Nov 2025 11:29:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 215593858D38 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 215593858D38 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::434 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329358; cv=none; b=ZCLb4XduN53gHcTV4bWednAMynfSbRortpmp6oqqE+SkvBQ+a0o5bsrYna1tWQC5HX/LxWxVbIIJgjYkHpJAvNbqzLwguavgTLO7KFxrdXSeRbfdbNpsE+knoG8b0cFUAZQB6AvNLYoj6jZ92MMjSv6M1S/MXQ5CSYCU4RwpRh0= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329358; c=relaxed/simple; bh=K0VCxcZg1Nd9JCAdhVc/dqPz35uSwcndy5eUaxr4YcM=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=Cl9vRYkhdxoVOUYMIwRDSa72otJSu5hhKDB1R7FB4S4JGBHT1ZKauC9GwLX5qYYACiJxzyxzVNo2Fs4WxTvA62YabOGUO21Nnj02ekTUMZW7dzIpFqEJoWZRyEhT9dXtAatfrhjFN9Nd51giifDsGPStk6fIycqxKRh4GPSeVUY= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 215593858D38 Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-42b3c5defb2so1262010f8f.2 for ; Fri, 28 Nov 2025 03:29:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764329357; x=1764934157; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=aBPh9euSS2x+Rev51ognQ4oRWM3ShOgYqB1DM2jWgGU=; b=UNodGadl3+aHS96EzRZ3qyWl8glTa7/5REw42vqdG+epbkhS7WC5cOPSLKMPWvSjfO 8YTMWFu4wT2p3gHplZaNhwK3bvACOtw41VWGG3qhw+wZ7rSuPl+KN/BJl1/GBWJjbZTR sqbzKncMoV57EsofP3XLl/F1q6ePHibE5pHMOgQiSGPIqV+A02ocyiUd5Fvca7wF5iCL CwexjQc9ZajmGDzLQjxuzshjw51Y1RYmqn755tLfoYg6/2tJcCNYMfnQnUNr8BUfPJyY Ps85hSX01WzmL/+u5HEYdtAdRSisY1lWLiCmYNVQPVFaSzbpfl+3cEOdrYsH2tJmpQ9Q gd3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764329357; x=1764934157; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=aBPh9euSS2x+Rev51ognQ4oRWM3ShOgYqB1DM2jWgGU=; b=X4yrpKoS/Ww+sMuUgEJKRWHw4ml1vBY6jhKu0RQ1Ev6QfzySfVHMc8Z8w1HkqLbXL+ x7zSzASYI7ikFjwrnNEQGgsJa0QDz683kYhyqPujMcibzKTkysFDE9LDnYWEnZkImtcs mAONhziGGLX8MLHSLNO5V/rUzNbRz/I30+5X98QcEJjvgizwCpXe/XktVsPS7QU5iJxE pzxZMEMIR06LOHXfGqJKyOmhNMFtfc9H6MPhWjdfIVI5/30p8ZjG5LFyRn95gjtbMUSG pNhvyYba2/bywcatu72RugbBA2CuIDDaBvQUME8/XJtyLrsYTHVXHxl1BdyY56KOYuxe zD/A== X-Gm-Message-State: AOJu0YxckVc1csYR6tWRDtgOc+kFTNZxA7XWwa4XBT4Wx+R42MIDg6f/ c2uFIGXzZnylNdeNOT68EQqHP/uy0TWjIJRtCXwqL+vCbe4npsX9mtBockrBu415x2SSNybx+nc OPTo= X-Gm-Gg: ASbGncvEJ/KLpIFHXsUUImrIpEJ7QWIUQuBOe7A7L6Ss2uRQvoQhrgunLU6M3aUotpB Jeo6hCWbam3wKg4ArE0Zr+8i0qIMzO5z/qoJf5w+/1tfqKwWnIUMuaU10QGbY1cx7tqjgqwRYyC yxd19wwJtd3NAjG6DgGP+h3e/mRcdyla35yBvGpNZb22nMfZXVTk76dV8GPPFECW6RPO0HIaiU4 ngbbwF4Kp7RliuSt/1SXkAUGQE4UVqqwpcuTm4ArnU6wx5Tc1w7r5KPRUZ34/vnC7IRHlsqtiNB F9b7sI+o3bJILLJXXCXF04r5ANkwqXbzKUEL63skNO0yvjliFnzAKFDTDDOiTnFIZC5PY4biuOF xCGB97Md6D5gG0BU8OvScmXuyKnZY9Q17X19o2B87WME927Y6eESPhmWSCvOIaqtfkw13d9F00o R4c4wznSzZWKMHem5YvTt55pAtcR3HzUXBGiB0ftbuOnEpDeH7AnzbTaVPHS845PFBIlqUcrOxs +c= X-Google-Smtp-Source: AGHT+IHK1WcJV08WTiQUHC7Py2vqzrIWbDlgAyF34V+5p3n0gMNOvLhy13oQ59tq8NlOGv4ffLj8RA== X-Received: by 2002:a05:6000:1448:b0:42b:3090:2683 with SMTP id ffacd0b85a97d-42cc1d23070mr28302664f8f.53.1764329356790; Fri, 28 Nov 2025 03:29:16 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1ca1a310sm9307791f8f.26.2025.11.28.03.29.16 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:29:16 -0800 (PST) Message-ID: Date: Fri, 28 Nov 2025 12:29:15 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 01/14] bfd: drop BFD_RELOC_I370_D12 From: Jan Beulich To: Binutils References: Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org i370 support is long gone from binutils, and this relocation is entirely unused. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -4118,9 +4118,6 @@ enum bfd_reloc_code_real BFD_RELOC_PPC64_GOT_DTPREL_PCREL34, BFD_RELOC_PPC64_TLS_PCREL, - /* IBM 370/390 relocations. */ - BFD_RELOC_I370_D12, - /* The type of reloc used to build a constructor table - at the moment probably a 32 bit wide absolute relocation, but the target can choose. It generally does map to one of the other relocation types. */ --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1671,7 +1671,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_PPC64_GOT_TPREL_PCREL34", "BFD_RELOC_PPC64_GOT_DTPREL_PCREL34", "BFD_RELOC_PPC64_TLS_PCREL", - "BFD_RELOC_I370_D12", "BFD_RELOC_CTOR", "BFD_RELOC_ARM_PCREL_BRANCH", "BFD_RELOC_ARM_PCREL_BLX", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -2886,11 +2886,6 @@ ENUMDOC PowerPC and PowerPC64 thread-local storage relocations. ENUM - BFD_RELOC_I370_D12 -ENUMDOC - IBM 370/390 relocations. - -ENUM BFD_RELOC_CTOR ENUMDOC The type of reloc used to build a constructor table - at the moment From patchwork Fri Nov 28 11:29:35 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125498 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 266B3385828B for ; Fri, 28 Nov 2025 11:30:11 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) by sourceware.org (Postfix) with ESMTPS id D0E123858D2A for ; Fri, 28 Nov 2025 11:29:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D0E123858D2A Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D0E123858D2A Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::335 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329379; cv=none; b=MMvulLp3X1mgdgSovC34dai431xDuRIxnbADFIVw5bAqfYGkxj+fMKi1ZOc1PQQOdzZq2gXTxg6HThMzmdbN4/7ltqNfYYTU3ZHwln3ThY8kq7buzYxzyX04GfvvDQgSWfXXAXB5O6W7sDDUBcYhsqOIwOUmP+snvP6+4dC7PSU= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329379; c=relaxed/simple; bh=9tdVImQMfOTnyMYavLoq0RqIGBAw6dtbEx74u1xzLNs=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=RNtdLPjJK0dkyfF93hU6sLoXXZrw7b5ExD8Iq81aheDNVPGnsvJz1kZnscZvAp2CxNbjbLw82y8J/9T3QxMK1spcL4HA7MFXPTCFY2aUYWgTVj5+r3E0PCYoMplGVUZPH0Ffx3friffVL+btbvhVfUMtRmhe7y/VebzBtTegF9g= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D0E123858D2A Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=C0Gr1MvU Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-4779adb38d3so11780515e9.2 for ; Fri, 28 Nov 2025 03:29:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764329377; x=1764934177; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=M4O/4tuPj/4JkGm+d6KHDWpTEYFa2mFAzZfcBaeOeuw=; b=C0Gr1MvUovCspH3FJr1Xjj0Ht/BHPG7KtNnMme8x8Yd59uEB6RksF7GqUYWlpuy4LG NukC0juqZI2RJEl4Q0D0cpLLgXne3gNlfNnRAtnyAXwjhNGwYe76R/gmOXt+wzNuRorM n5d04jZ17gVHGovPtrs6tmMQpdaxa23GuerQlMLFtnHFloAHXo3leSwsmaNGoh9e/WlC tBSEHR0fHwlD7G2Iwt1+hLI5FeXgIqq5JLTemwdZckJrerGkhDpCknBJ+Y6yIrMSgLjF 9+LUghvFg7eX0TXM98T4R+aQiGhgKMlZSjUGrU0gWDZA8wCFPDc1qSCEtLZL0lxhHAJC NfYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764329377; x=1764934177; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=M4O/4tuPj/4JkGm+d6KHDWpTEYFa2mFAzZfcBaeOeuw=; b=rx2ahpzV3inZrn9E17sXmAomyEzzkFHn1l/QIsoW6fLqTAbDTuTgeZVToOQLcTFq0n PvwRRWA6MKH5HOZfX4FcjnqsR9KYOj/D+G4Ql4hrmfU9eHxHiANnuGBrX/8Ehw4puvpJ e6ygQALubu0jCS7a8rlFGkTtuJJJm99bCtyXRnzeuLcZOYH4zG8h1q2kEkiE0UrwNGpv HdNBNICvkrqBwWU9/8yy+h0h40XHGeZLoZGfLI95uXOqs5desI6LJMvcIEz/bxxP4kxA cIpAw+WYSWKz6YBpLUUn0tY1L6zQ32MldBiE/GvRv8N6Wys8wE9Mr+QHbjl6k+iBCstV Fteg== X-Gm-Message-State: AOJu0YyT3B9Zq7NSHNecfdP512f8DG/tSPnl6+t21W3rXEWdMInIHPom vaSH7ZS7efAnSbADuY+atK46EzdX08EMmXFFKvXJfujozpSUyC3CvBySj7/eZERHhVE37w0WDV6 qQkw= X-Gm-Gg: ASbGncsEQHQstRrwhF+a3at3taZhnIV1OgQpL0S7nMu/7cCdDjeM/fwoBel050SnvVF IgIHtPiv3UPFgqOEt7mZFYxgWrRyxMbeiZJDfHzGVCHh/Iq0dIZZoYEMe4+ogGh6qSkXF/+jXW4 AlV3q+zSHPe0OVr4nVj2c6i6tqhIFzAAxcQHnt6p0Y0zs7wfKsEK4uWChnHPry+mrrFXBAoOe5f kzhwIzEUaHs6Y2/smbkgeJFrwDy+ODhmZgzZArp5hMmFimvMpzvRTj7ouBwLqL6voY9CtFoeXEF QCde+iNOhmRdDW5lfYEZioMqYcQoeqNXifKDak/ac10xuhyt6i12ZYV+2eU6JpTpOb8tH1dXUvU uq4AkEgkClS6kd7nWqxJY/GYcxSanrXLMBY/3KwWIIuWgVgIM1urmbtIMC+txeLTHWfXaiDLUS1 nFcssy1xyClzQ2shJD2j+2eN1+tu4Aodo+hY2rkVytLZK8fvO/5e1dJZkINzZuHgr3mVxAdKEYk w/aXMy4USokOA== X-Google-Smtp-Source: AGHT+IGEf4y7JuOr9y63XD0NrhM4H+ikpHzpZ+yIkZYxOEEDDfRDZclmOT0RN0RkFy19zBjWagzlmA== X-Received: by 2002:a05:600c:460a:b0:471:700:f281 with SMTP id 5b1f17b1804b1-47904b1b2dfmr88822715e9.25.1764329376498; Fri, 28 Nov 2025 03:29:36 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-479040b329bsm90645405e9.2.2025.11.28.03.29.35 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:29:36 -0800 (PST) Message-ID: Date: Fri, 28 Nov 2025 12:29:35 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 02/14] bfd: drop BFD_RELOC_VPE4KMATH_* From: Jan Beulich To: Binutils References: Content-Language: en-US Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org These relocation types are entirely unused. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -5699,10 +5699,6 @@ enum bfd_reloc_code_real /* Scenix IP2K - 7-bit sp or dp offset. */ BFD_RELOC_IP2K_FR_OFFSET, - /* Scenix VPE4K coprocessor - data/insn-space addressing. */ - BFD_RELOC_VPE4KMATH_DATA, - BFD_RELOC_VPE4KMATH_INSN, - /* These two relocations are used by the linker to determine which of the entries in a C++ virtual function table are actually used. When the --gc-sections option is given, the linker will zero out the --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -2581,8 +2581,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_IP2K_PC_SKIP", "BFD_RELOC_IP2K_TEXT", "BFD_RELOC_IP2K_FR_OFFSET", - "BFD_RELOC_VPE4KMATH_DATA", - "BFD_RELOC_VPE4KMATH_INSN", "BFD_RELOC_VTABLE_INHERIT", "BFD_RELOC_VTABLE_ENTRY", "BFD_RELOC_IA64_IMM14", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -5430,12 +5430,6 @@ ENUM BFD_RELOC_IP2K_FR_OFFSET ENUMDOC Scenix IP2K - 7-bit sp or dp offset. -ENUM - BFD_RELOC_VPE4KMATH_DATA -ENUMX - BFD_RELOC_VPE4KMATH_INSN -ENUMDOC - Scenix VPE4K coprocessor - data/insn-space addressing. ENUM BFD_RELOC_VTABLE_INHERIT From patchwork Fri Nov 28 11:30:05 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125500 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id DCFD03857007 for ; Fri, 28 Nov 2025 11:30:51 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [IPv6:2a00:1450:4864:20::333]) by sourceware.org (Postfix) with ESMTPS id 77733385842D for ; Fri, 28 Nov 2025 11:30:14 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 77733385842D Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 77733385842D Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::333 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329414; cv=none; b=EnHubmIpmiigheLJgPQceLfmlbIOHBFoZS662DfjJsUg4uV4beXoXliZxL+LgDtQHsbqiNIFupRWaVyzGQMheSYrGaoJhCm9WDTqGLEKyVwI+lL4Esu90oXHe7MvYMzsqUfFK+ZHS54DgbK0koILbTI7p3aa1ZET2o5OzmPxdk8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329414; c=relaxed/simple; bh=TbDGqHFzO7y9G/5L6ZyjcuhqqBxoNRkwUGxAyPTlmRE=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=hK3qJkCJoV+7hEg6aZc0wQWwHQ4V2cNKCxxL8zcZvTvy435W/Plv8wjdfknbRiZzFpST9WJu9aW1KJuoLUh3DNzyfx9n4fh3QvM5yVSv0W5UL4LTG3mOxigCe/jm7P2Hl/dLhI2qY0BG7vlZLJtV6A0E1uDaiV8YlzFZHcXx4f8= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-4779adb38d3so11784165e9.2 for ; Fri, 28 Nov 2025 03:30:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764329407; x=1764934207; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=E8qGQg+rBYv7OYHkVIdhCPCkqJ6WVxeRMAIcT+fYVJw=; b=bZHaUb+NpTz+bhhaEMLzE/S7XCRxspz+hd9wucizyynh7+Z6vh45o4GiULZZJ7olv/ fSX8+sIwJoPMKQfEoUzyK50DozWvwUM7s0Zme2BlUx9n7v9q/5bEDjtEOYUeXgxhB/5W fIVVz6JcjbH+jkFGoF7H5wJlmVNslulr5BQzb007dMjDRPc8sK36s0hX4+jd3KBn9KPD 1rZoDaquCfDXYY6W/OdC2oh4cw5AW+BgvgcYtdfRSAoc9wuRh4//MazeNTac2V58zMaE BBOJKngtzXi1UK0I18aGtdO/QlY+UiTTMpe0yDU3CyIQHg2gfzmBOgrmCsTMusIEJTcz nW+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764329407; x=1764934207; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=E8qGQg+rBYv7OYHkVIdhCPCkqJ6WVxeRMAIcT+fYVJw=; b=sDqndufoM6YGOEzLDgUtJp6/+rcuBQn7DmPuG3ctlNwM0ZVnLHQhHYfGH/Q+nrAJe2 YxeRgTt7XL7LvFdxKWgGBK9HY+MsrEMXRxophbx4izrr7m7dT9N/UhfR9h4BkhQu283n DIETIJ/IS2BwHrc0Lhpn/mUAQWkKY6fceX3ttjzETJoq2pbkulcV0g2VPgTPUDPqzGoD KruUyYLBHz5ciwhAlo1XmZnp4N5ALwkhwMDIwt/LcsfrKlamoXoPZzLSdn3rLQrKgH9G 8c4/zmekrQFgO8Vxq1bzh1kxoAzhERvRxrN2Jl6ZdWlYx2y1iosHAjXKElrseOGk3E+g 1MbA== X-Gm-Message-State: AOJu0Yz3pANIu/rHchPie5JNVuFjaFWdY+1lk8z0esa3fpJQRrTVCSuJ fC44tzZaYOFx9Y0WePTe/IdoUQ0c5CQzq1oanjNSlOPbHu9v4i/A2Vx0gr356AliFD90H7CiJUt aM9U= X-Gm-Gg: ASbGncseaLf/R2zEKQeMKJmLLQCy51AnDsWPYBL+dLNy6fik5HKQzhL8sBlm3fzSJO1 SoohlqXPpjtKrJmRgun8y+CPzZSF7SzkfKUH4eGnorfg/+9HcazbtqkwvWfeZ+MKE5OV1Q7jpzA glNsTw5aY2AuBLEolEkHBKIYnjSY1Tan1lli84MuV+02FXtUjpnRsMogzhT6xhcl47432kHKdQe XoTX+GnJICc5GfhcU5dCwk0GBikUiBJei/EPrfhXQA+tr15TX9X3VrNOFKFfHTkIeWK8JrMQTM1 SEZaGIxc+25jHAgbIg3QTRSB62Pj4XdJIAPIMfh1li2k1eMXwVcKiOVMH4cGqQucwpNO85bwSMR jOUIotdYigxZOz8rICo32FkdQG/kqS03SKKbJAOWQwFJ6gYvgE6HtGmJj5ARsKnIBm8vq6Z0eRa 53njot7TVk6baNLzxLl2ltd3i/g1HMSX9tOMjQvzrpjyWy3/WuQbSboEREP1e704v2xJ2qfrRAd jQ= X-Google-Smtp-Source: AGHT+IFN7Zo09ZFzTuzh9vovODzhD5xGU+LbEZi426tzoRdkQD2MtBoRPA/tUbqK/BR1eanjoUkdlw== X-Received: by 2002:a05:600c:4f41:b0:477:942:7521 with SMTP id 5b1f17b1804b1-47904ae2429mr165275725e9.14.1764329407073; Fri, 28 Nov 2025 03:30:07 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-479052cfd9dsm88329065e9.7.2025.11.28.03.30.06 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:30:06 -0800 (PST) Message-ID: <53eff588-0e5f-4bd6-acff-0f6151b52970@suse.com> Date: Fri, 28 Nov 2025 12:30:05 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 03/14] x86-64: use BFD_RELOC_64_PLTOFF in favor of custom type From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: "H.J. Lu" Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org No reason to have a separate type when the generic one has no (other) meaning for this target. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3902,7 +3902,6 @@ enum bfd_reloc_code_real BFD_RELOC_X86_64_GOTPCREL64, BFD_RELOC_X86_64_GOTPC64, BFD_RELOC_X86_64_GOTPLT64, - BFD_RELOC_X86_64_PLTOFF64, BFD_RELOC_X86_64_GOTPC32_TLSDESC, BFD_RELOC_X86_64_TLSDESC_CALL, BFD_RELOC_X86_64_TLSDESC, --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -260,7 +260,7 @@ static const struct elf_reloc_map x86_64 { BFD_RELOC_X86_64_GOTPCREL64,R_X86_64_GOTPCREL64, }, { BFD_RELOC_X86_64_GOTPC64, R_X86_64_GOTPC64, }, { BFD_RELOC_X86_64_GOTPLT64, R_X86_64_GOTPLT64, }, - { BFD_RELOC_X86_64_PLTOFF64, R_X86_64_PLTOFF64, }, + { BFD_RELOC_64_PLTOFF, R_X86_64_PLTOFF64, }, { BFD_RELOC_SIZE32, R_X86_64_SIZE32, }, { BFD_RELOC_SIZE64, R_X86_64_SIZE64, }, { BFD_RELOC_X86_64_GOTPC32_TLSDESC, R_X86_64_GOTPC32_TLSDESC, }, --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1466,7 +1466,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_X86_64_GOTPCREL64", "BFD_RELOC_X86_64_GOTPC64", "BFD_RELOC_X86_64_GOTPLT64", - "BFD_RELOC_X86_64_PLTOFF64", "BFD_RELOC_X86_64_GOTPC32_TLSDESC", "BFD_RELOC_X86_64_TLSDESC_CALL", "BFD_RELOC_X86_64_TLSDESC", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -2458,8 +2458,6 @@ ENUMX ENUMX BFD_RELOC_X86_64_GOTPLT64 ENUMX - BFD_RELOC_X86_64_PLTOFF64 -ENUMX BFD_RELOC_X86_64_GOTPC32_TLSDESC ENUMX BFD_RELOC_X86_64_TLSDESC_CALL --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1393,7 +1393,7 @@ gotrel[] = { .bitfield = { .imm32 = 1, .imm64 = 1 } }, false }, #endif { STRING_COMMA_LEN ("PLTOFF"), { _dummy_first_bfd_reloc_code_real, - BFD_RELOC_X86_64_PLTOFF64 }, + BFD_RELOC_64_PLTOFF }, { .bitfield = { .imm64 = 1 } }, true }, { STRING_COMMA_LEN ("PLT"), { BFD_RELOC_386_PLT32, BFD_RELOC_X86_64_PLT32 }, @@ -3963,15 +3963,11 @@ _reloc (unsigned int size, if (size == 8) switch (other) { + case BFD_RELOC_64_PLTOFF: + case BFD_RELOC_X86_64_GOTPLT64: + return other; case BFD_RELOC_X86_64_GOT32: return BFD_RELOC_X86_64_GOT64; - break; - case BFD_RELOC_X86_64_GOTPLT64: - return BFD_RELOC_X86_64_GOTPLT64; - break; - case BFD_RELOC_X86_64_PLTOFF64: - return BFD_RELOC_X86_64_PLTOFF64; - break; case BFD_RELOC_X86_64_GOTPC32: other = BFD_RELOC_X86_64_GOTPC64; break; @@ -18469,7 +18465,7 @@ tc_gen_reloc (asection *section ATTRIBUT case BFD_RELOC_X86_64_GOTPCREL64: case BFD_RELOC_X86_64_GOTPC64: case BFD_RELOC_X86_64_GOTPLT64: - case BFD_RELOC_X86_64_PLTOFF64: + case BFD_RELOC_64_PLTOFF: case BFD_RELOC_X86_64_GOTPC32_TLSDESC: case BFD_RELOC_X86_64_CODE_4_GOTPC32_TLSDESC: case BFD_RELOC_X86_64_CODE_5_GOTPC32_TLSDESC: @@ -18583,7 +18579,7 @@ tc_gen_reloc (asection *section ATTRIBUT case BFD_RELOC_X86_64_GOTPCREL64: case BFD_RELOC_X86_64_GOTPC64: case BFD_RELOC_X86_64_GOTPLT64: - case BFD_RELOC_X86_64_PLTOFF64: + case BFD_RELOC_64_PLTOFF: as_bad_where (fixp->fx_file, fixp->fx_line, _("cannot represent relocation type %s in x32 mode"), bfd_get_reloc_code_name (code)); From patchwork Fri Nov 28 11:30:35 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125503 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id BDABC3858D20 for ; Fri, 28 Nov 2025 11:33:30 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BDABC3858D20 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=JMfcLNxX X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [IPv6:2a00:1450:4864:20::331]) by sourceware.org (Postfix) with ESMTPS id B1365385B512 for ; Fri, 28 Nov 2025 11:31:08 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B1365385B512 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org B1365385B512 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::331 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329468; cv=none; b=PdIKlxrB4tswxtZ3722i++B0boB7DtzuPgMAan1+cepefOHymcrrV7TD31aKeUAbtSaedvU/A335LTFTCmzOItl0Ca1q6Cp+YLhX2txFi/rIsTqJWUN3aHwBr0QsL2y3SLm0uUb++TTLi2+PxACS3azSJftvBCGng+GKONx38gQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329468; c=relaxed/simple; bh=rNU1ftFEBNgPzyUhTReuaVKYfUG5bZzkrW/pwgcBAi0=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=v+0bDUWsWWEQdKOWsgcjQsMF0jQKNhLab0a5O0zv9dqrCOz5HZL7gfcla0rAq/E1oxDyDpKEG0YKP/2fqdjE+JMEBirSAZYUyBm3f+9FzS7Ahmpj3h+5+wZKTDXYZ9DRBIwLdGiZ7dXWorwaDDyMffXh+2aM8h0lMzzMNvWTN1I= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-477a1c28778so19469705e9.3 for ; Fri, 28 Nov 2025 03:31:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764329437; x=1764934237; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=vYEjjbXE5c9mMCBFzI7Vl2byJV/xCV6Qut2KQcv7juY=; b=JMfcLNxXdmhg4hy8/8VIyOg5z/Xg/q/7FOusAIs1at8b0HDF6XUZYwreGsmfVgC5WO aEexqLywyL1+hkGA7KaNrlozYm7fT/6xLpW6f/bdpAhMTuwDWvigA47pcT3snPewAIH0 R86VtJctQ6rrx12v8k/1dznZzipqetClYBK0+O430ryCpUzbN+55pFhbOJ5u83tFVmJA 7zP4hBu2lbt/RXLV8APKeCG69FzH5IOrByRxpFWHTpWz+HIT+zReTCSNnCjyigTHB67c 5lc5NbV6wHqWHSnnbdYC5XIwJ0hfw5Y9GthJUqCSMK8+oNuq8NBDAKpf3b2iCkCFPZCh 2O/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764329437; x=1764934237; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=vYEjjbXE5c9mMCBFzI7Vl2byJV/xCV6Qut2KQcv7juY=; b=PlghT52fXUkETKa4SAa0ka7syR148v5a7UT9FaiIvnSlbZJ5qkgdmMFVHUA4v+l6k9 3uvK/zdqXaP2gVKB8ayenHd/4GU/v/EiEJAV/DoMZJUJSG969GtdESZMmci5Jf9DNlPt JZN6FVUEqh4dEQ1WEAjZYd9jTcfbLRYy38LzWl83Z/3kXha77jbTt3YPQEsLyE4vO3O9 SuOkfHIRaJvKK1qN0OtGD3j2ijfvusTejYU8AQ9+qjATTpaopBZVOb7C//RoA6aYwcIk P4R9uElaxNC0jA5Q27wNk/m9ZZDf40EPwLT03VV5xcG77Sdq9qeN4n5cyizSTGqgrBqD V0Rg== X-Gm-Message-State: AOJu0Ywkfip3fK6I1F6jFaNuDJWJwWQxABLg/tqDq/PcvyoW7rzsWokA k1lYOV4KtyH7MSO4q0NxQYpqeeKf92Glw4guFFwbmYjXOh7E1GgZdBuYWgVzDVIgYZpyFQsNsGT HVzk= X-Gm-Gg: ASbGncvI5hbNAN/d/caRMJblpcpncs058tz1LUt/CHif2Q5yHaOZMumijjUIxR6YXVV fIUTDg3ad6cE//zucCr4iKT8cD+I2luVxWFs5DfeW94GEYiSIEswE2dHcczvj2N3rdpQs+vRSEQ XzBaQugDiV6I63m5voVF4r81Esc1p9lr0QKe5Lxld9bN/oMMzeI09GCSCF8gzCqFaGsYsztKFri ldgmxhe7kvML8Q3dSp6naRsgq/zPS7GW+lBLj3J/rhQyU3C7gr3ZExkXSIHUqLeO7xPTeBZaiX1 WCHwc9s9lFpAMEtATClMiqu6rob1vSzwl6ckipsDDl0cvubw6SqXGZEAmETmKzWwdEBd9fUmmvx wdIVVBsFXKGz33NzcrE949M7yhqt/MlIh1C5qFcwTDk3qLSHntHsW49DaKVTeuH/Oj/ub9tBaRi +/GlNi4+SJkIvefNg2ZoVv5n8D2+Crjfztj/5lparJLumkvla6SfPVllQv1aQ65GI99UXa8w3Tm ZcmJLMjRDw2xA== X-Google-Smtp-Source: AGHT+IFgB3PhTPWblidz6Cm5pqHfj4zkamIso2W2SZUJXG1aWAO1asj0iEPZNvFBkNw0D9vb0rG4AQ== X-Received: by 2002:a05:600c:1c8a:b0:477:6d96:b3e5 with SMTP id 5b1f17b1804b1-47904acadd7mr163372335e9.7.1764329437310; Fri, 28 Nov 2025 03:30:37 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1c5c30c4sm9748441f8f.9.2025.11.28.03.30.36 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:30:37 -0800 (PST) Message-ID: <611266b3-9805-4326-bb1e-407055f94af2@suse.com> Date: Fri, 28 Nov 2025 12:30:35 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 04/14] x86-64: use BFD_RELOC_32_PLT_PCREL in favor of custom type From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: "H.J. Lu" Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org No reason to have a separate type when the generic one has no (other) meaning for this target. --- Why is it that BFD_RELOC_386_PLT32 (but not BFD_RELOC_X86_64_PLT32) is among the types checked in TC_FORCE_RELOCATION_LOCAL()? Without that, the type could also be replaced by BFD_RELOC_32_PLT_PCREL, then even simplifying a couple of expressions. Code and comment in tc_i386_fix_adjustable() as well as the conditional in i386_validate_fix() suggest that PLT32 relocs can also be absolute. The relocation types (32- and 64-bit) are clearly specified as PC- relative, though. What's the deal? (Questionable commit is 1b714c14e40f ["x86: Turn PLT32 to PC32 only for PC-relative relocations"].) PR gas/32196 really pointed at a bigger problem: If the programmer says @plt, a PLT32 relocation ought to be generated, no matter what. Just like for any of the other @... relocation modifiers. Dropping the relocation is an optimization, which ought to not be active by default. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3881,7 +3881,6 @@ enum bfd_reloc_code_real /* x86-64/elf relocations. */ BFD_RELOC_X86_64_GOT32, - BFD_RELOC_X86_64_PLT32, BFD_RELOC_X86_64_COPY, BFD_RELOC_X86_64_GLOB_DAT, BFD_RELOC_X86_64_JUMP_SLOT, --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -233,7 +233,7 @@ static const struct elf_reloc_map x86_64 { BFD_RELOC_64, R_X86_64_64, }, { BFD_RELOC_32_PCREL, R_X86_64_PC32, }, { BFD_RELOC_X86_64_GOT32, R_X86_64_GOT32,}, - { BFD_RELOC_X86_64_PLT32, R_X86_64_PLT32,}, + { BFD_RELOC_32_PLT_PCREL, R_X86_64_PLT32,}, { BFD_RELOC_X86_64_COPY, R_X86_64_COPY, }, { BFD_RELOC_X86_64_GLOB_DAT, R_X86_64_GLOB_DAT, }, { BFD_RELOC_X86_64_JUMP_SLOT, R_X86_64_JUMP_SLOT, }, --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1445,7 +1445,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_386_IRELATIVE", "BFD_RELOC_386_GOT32X", "BFD_RELOC_X86_64_GOT32", - "BFD_RELOC_X86_64_PLT32", "BFD_RELOC_X86_64_COPY", "BFD_RELOC_X86_64_GLOB_DAT", "BFD_RELOC_X86_64_JUMP_SLOT", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -2416,8 +2416,6 @@ ENUMDOC ENUM BFD_RELOC_X86_64_GOT32 ENUMX - BFD_RELOC_X86_64_PLT32 -ENUMX BFD_RELOC_X86_64_COPY ENUMX BFD_RELOC_X86_64_GLOB_DAT --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1396,7 +1396,7 @@ gotrel[] = BFD_RELOC_64_PLTOFF }, { .bitfield = { .imm64 = 1 } }, true }, { STRING_COMMA_LEN ("PLT"), { BFD_RELOC_386_PLT32, - BFD_RELOC_X86_64_PLT32 }, + BFD_RELOC_32_PLT_PCREL }, OPERAND_TYPE_IMM32_32S_DISP32, false }, { STRING_COMMA_LEN ("GOTPLT"), { _dummy_first_bfd_reloc_code_real, BFD_RELOC_X86_64_GOTPLT64 }, @@ -4138,7 +4138,7 @@ tc_i386_fix_adjustable (fixS *fixP) /* Resolve PLT32 relocation against local symbol to section only for PC-relative relocations. */ if (fixP->fx_r_type == BFD_RELOC_386_PLT32 - || fixP->fx_r_type == BFD_RELOC_X86_64_PLT32) + || fixP->fx_r_type == BFD_RELOC_32_PLT_PCREL) return fixP->fx_pcrel; return 1; } @@ -11778,7 +11778,7 @@ output_jump (void) if (flag_code == CODE_64BIT && size == 4 && jump_reloc == NO_RELOC && i.op[0].disps->X_add_number == 0 && need_plt32_p (i.op[0].disps->X_add_symbol)) - jump_reloc = BFD_RELOC_X86_64_PLT32; + jump_reloc = BFD_RELOC_32_PLT_PCREL; #endif jump_reloc = reloc (size, 1, 1, jump_reloc); @@ -13424,7 +13424,7 @@ x86_cons (expressionS *exp, int size) *input_line_pointer = c; } else if ((got_reloc == BFD_RELOC_386_PLT32 - || got_reloc == BFD_RELOC_X86_64_PLT32) + || got_reloc == BFD_RELOC_32_PLT_PCREL) && exp->X_op != O_symbol) { char c = *input_line_pointer; @@ -15768,7 +15768,7 @@ elf_symbol_resolved_in_segment_p (symbol switch ((enum bfd_reloc_code_real) fr_var) { case BFD_RELOC_386_PLT32: - case BFD_RELOC_X86_64_PLT32: + case BFD_RELOC_32_PLT_PCREL: /* Symbol with PLT relocation may be preempted. */ return 0; default: @@ -16229,7 +16229,7 @@ md_estimate_size_before_relax (fragS *fr && fragP->tc_frag_data.code == CODE_64BIT && fragP->fr_offset == 0 && need_plt32_p (fragP->fr_symbol)) - reloc_type = BFD_RELOC_X86_64_PLT32; + reloc_type = BFD_RELOC_32_PLT_PCREL; #endif old_fr_fix = fragP->fr_fix; @@ -16633,7 +16633,7 @@ md_apply_fix (fixS *fixP, valueT *valP, switch (fixP->fx_r_type) { case BFD_RELOC_386_PLT32: - case BFD_RELOC_X86_64_PLT32: + case BFD_RELOC_32_PLT_PCREL: /* Make the jump instruction point to the address of the operand. At runtime we merely add the offset to the actual PLT entry. NB: Subtract the offset size only for jump instructions. */ @@ -18350,7 +18350,7 @@ i386_validate_fix (fixS *fixp) if (fixp->fx_addsy && fixp->fx_pcrel && (fixp->fx_r_type == BFD_RELOC_386_PLT32 - || fixp->fx_r_type == BFD_RELOC_X86_64_PLT32) + || fixp->fx_r_type == BFD_RELOC_32_PLT_PCREL) && symbol_section_p (fixp->fx_addsy)) fixp->fx_r_type = BFD_RELOC_32_PCREL; if (!object_64bit) @@ -18426,7 +18426,7 @@ tc_gen_reloc (asection *section ATTRIBUT #endif /* Fall through. */ - case BFD_RELOC_X86_64_PLT32: + case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_X86_64_GOT32: case BFD_RELOC_X86_64_GOTPCREL: case BFD_RELOC_X86_64_GOTPCRELX: @@ -18593,7 +18593,7 @@ tc_gen_reloc (asection *section ATTRIBUT else switch (code) { - case BFD_RELOC_X86_64_PLT32: + case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_X86_64_GOT32: case BFD_RELOC_X86_64_GOTPCREL: case BFD_RELOC_X86_64_GOTPCRELX: From patchwork Fri Nov 28 11:31:04 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125506 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 758D73858D20 for ; Fri, 28 Nov 2025 11:37:34 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 758D73858D20 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=E0Ge0g93 X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com [IPv6:2a00:1450:4864:20::42b]) by sourceware.org (Postfix) with ESMTPS id 7B82D3858402 for ; Fri, 28 Nov 2025 11:31:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7B82D3858402 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7B82D3858402 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::42b ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329476; cv=none; b=hzIvc/K2j327RTn2OkrGxK6rtaE1a+HhBQOev7NuM9gbDw3Nse3WPbRZkT0YUg7tUj7pAKLf1m1zRlYIN0M3kxqAItm2P5tl2b3VRJM0UQqYGIml/gEuhoA5UgPUzCrxRPPtWXraaGgC5fNBIBikRlS0BhZdeIK/sLGT4MaWJi4= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329476; c=relaxed/simple; bh=Ut4Qz+WSMVxZWaccr3YaILsmv2+IIN0alOiWvZ6SY6M=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=JlCmjv1aH9faF7d//YqR7+Oyh9AbhY2zdEFruyEn8nJqI0Sp6NOu/MdWOXCOBc0D7BnfJriarDP/PA4HloOBec5+6J+UmBLkY19TLpRR+OopRnNGxN5Wc6SX3Pp239dvb6XFwhrrwdrKd7qp+jt/S83JBSDUFsKZBld4uJLQmo0= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7B82D3858402 Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-42b3108f41fso1145770f8f.3 for ; Fri, 28 Nov 2025 03:31:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764329465; x=1764934265; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=wlyhfykVSvxS9yxZ2DNmLxX7Vz5aurlYeb0rly7ZCiM=; b=E0Ge0g935axObC2PSE0yyPq8i8dZBNSd8M7a6PhxZlmO+Zl0qGnGdUoAV6zEk8WBdv shxJpA7cumddbaOoeu6rbdKuTrwM+AaB2xaSXIniiS9iDQ8o8GQfzJMOboyy4pWcUFkj HwFQk/Q7tXbrXWRgKMDvguRYNpcgyHTuuEoRkGfqBoVPrGptftb83huq7YoGQMfcP3lC rDbjXizncZsMePd9lujb7qNrbvBGRvsaGxVOf25HtacVaZ5lfWSmXRpaB3hg80T+fKcU +Pn1RFeeTkfzer1Y4zyTkeksoUQ6kEurseQivR0CbdSrsMXHkOD0I55SeSmxrGwaXdVs S28A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764329465; x=1764934265; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=wlyhfykVSvxS9yxZ2DNmLxX7Vz5aurlYeb0rly7ZCiM=; b=DUSLss+SBmxUgONuWAkgxy/omTPLMDCU/KkzvmtW+A5jCRS2hnxtzrj2N4i38qUaYF Bn6iMG+waW8akLDoY5hqnItWmx4EE3YXd0ZjYOEPJygMiSj2wdzozTEDXxXDQk3TqvEq ERXbYuVLhNSuyyUMulr6GIJ3v069cH8Of7wBJsj5IwsNMPq9DKD7ZNg3VxxAZbAjwjOs +tk9ODspRpKGUE5X+GDFT5t0uHODeNfkrVhsjXrW3OSXPFB/gNNE6lKBHqLqWTvUPH0C Cg/Im6uoxWqkfjlpzOuyNw9KXrJwHnrIA47PKVahmkx/jdZwG544A5xorCC3WoEDbk3F SrzQ== X-Gm-Message-State: AOJu0Yy8R5DP/Oy+NxZep3aLnwzdHIW8diPIfPgmbKpHbj9RbujtBrCE MKUQhT7mbZ0tyWiRlaYIE41HaHZQzpgYe7wgBFGxMF7vmJ9Z4t3KxpClPfAJgLbzEvQpDHvvdwN dABk= X-Gm-Gg: ASbGncsFteHi6LOC9/yVFGBX8QzO4P0jbedk/nl6OnFwVw9NdfoZQXPiH+wbFRrJKFZ MYqpr6ntOj8rTqGU379OxlbRdNanIuOGLuL7Ma2zFbeE4r/aRxcz2sENjN96Azy1RS4qHkkO3lt rgzcPVPnMab0s1oqrqIRX4c7ASuTJhPKmxLQKGtdWH1ZTG/kKCPHsYu6NvTPXYCyD8gATg3Dr5s cyzqKZZz7LaBJC+Uvw7uVb3744gmezu+5EUn7S+u8yhmHcpHaRzfdsFlu+Ky19U6pQ7Dgztgi2e I/3OCDTvyLasAsCNTU8I1HDcA9DPfmCg+rq/xfcXxtsgLG0pOKHJ8NYg7cZOoBhHG8Xzrsg07Xi W2jcD3nGBUMM6ijWYM+QNfQe/FfVxAGYOPBMVsG22yYVw6s6wIVWONJa5l0M4YvebtISZ3s12GK EiT/G4wtUxJl8y15Cdt5XV9OBE2z8+k2kYBB4F4DnvzPfr1SJ1F/S5Tko5C93EsSDASQcdY47m7 2g= X-Google-Smtp-Source: AGHT+IEQRUtaa5XHk9fQoVbrYz2SqWjQDwB4O/zzGp7eJWR6JZVsgcEJFmY9I12aL0j8qkYqechV4g== X-Received: by 2002:a05:6000:2507:b0:42b:549d:cdfd with SMTP id ffacd0b85a97d-42cc1abe156mr28895655f8f.2.1764329465497; Fri, 28 Nov 2025 03:31:05 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1c5168acsm8445408f8f.0.2025.11.28.03.31.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:31:05 -0800 (PST) Message-ID: Date: Fri, 28 Nov 2025 12:31:04 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 05/14] Arm: use BFD_RELOC_32_PLT_PCREL in favor of custom type From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: Nick Clifton , "ramana.radhakrishnan@arm.com" , Richard Earnshaw Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org No reason to have a separate type when the generic one has no (other) meaning for this target. Doing the adjustments makes obvious that elf32_arm_reloc_map[] had two identical entries; that duplicate is being removed. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -4219,7 +4219,6 @@ enum bfd_reloc_code_real BFD_RELOC_ARM_JUMP_SLOT, BFD_RELOC_ARM_GLOB_DAT, BFD_RELOC_ARM_GOT32, - BFD_RELOC_ARM_PLT32, BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, BFD_RELOC_ARM_GOTPC, --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -2023,13 +2023,12 @@ static const struct elf32_arm_reloc_map {BFD_RELOC_ARM_GOTPC, R_ARM_GOTPC}, {BFD_RELOC_ARM_GOT_PREL, R_ARM_GOT_PREL}, {BFD_RELOC_ARM_GOT32, R_ARM_GOT32}, - {BFD_RELOC_ARM_PLT32, R_ARM_PLT32}, + {BFD_RELOC_32_PLT_PCREL, R_ARM_PLT32}, {BFD_RELOC_ARM_TARGET1, R_ARM_TARGET1}, {BFD_RELOC_ARM_ROSEGREL32, R_ARM_ROSEGREL32}, {BFD_RELOC_ARM_SBREL32, R_ARM_SBREL32}, {BFD_RELOC_ARM_PREL31, R_ARM_PREL31}, {BFD_RELOC_ARM_TARGET2, R_ARM_TARGET2}, - {BFD_RELOC_ARM_PLT32, R_ARM_PLT32}, {BFD_RELOC_ARM_TLS_GOTDESC, R_ARM_TLS_GOTDESC}, {BFD_RELOC_ARM_TLS_CALL, R_ARM_TLS_CALL}, {BFD_RELOC_ARM_THM_TLS_CALL, R_ARM_THM_TLS_CALL}, --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1712,7 +1712,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARM_JUMP_SLOT", "BFD_RELOC_ARM_GLOB_DAT", "BFD_RELOC_ARM_GOT32", - "BFD_RELOC_ARM_PLT32", "BFD_RELOC_ARM_RELATIVE", "BFD_RELOC_ARM_GOTOFF", "BFD_RELOC_ARM_GOTPC", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -3040,8 +3040,6 @@ ENUMX ENUMX BFD_RELOC_ARM_GOT32 ENUMX - BFD_RELOC_ARM_PLT32 -ENUMX BFD_RELOC_ARM_RELATIVE ENUMX BFD_RELOC_ARM_GOTOFF --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -3849,7 +3849,7 @@ s_arm_elf_cons (int nbytes) reloc); int size = bfd_get_reloc_size (howto); - if (reloc == BFD_RELOC_ARM_PLT32) + if (reloc == BFD_RELOC_32_PLT_PCREL) { as_bad (_("(plt) is only valid on branch targets")); reloc = BFD_RELOC_UNUSED; @@ -9304,11 +9304,11 @@ encode_branch (int default_reloc) { if (inst.operands[0].hasreloc) { - constraint (inst.operands[0].imm != BFD_RELOC_ARM_PLT32 + constraint (inst.operands[0].imm != BFD_RELOC_32_PLT_PCREL && inst.operands[0].imm != BFD_RELOC_ARM_TLS_CALL, _("the only valid suffixes here are '(plt)' and '(tlscall)'")); - inst.relocs[0].type = inst.operands[0].imm == BFD_RELOC_ARM_PLT32 - ? BFD_RELOC_ARM_PLT32 + inst.relocs[0].type = inst.operands[0].imm == BFD_RELOC_32_PLT_PCREL + ? BFD_RELOC_32_PLT_PCREL : thumb_mode ? BFD_RELOC_ARM_THM_TLS_CALL : BFD_RELOC_ARM_TLS_CALL; } else @@ -12019,7 +12019,7 @@ do_t_branch23 (void) the branch encoding is now needed to deal with TLSCALL relocs. So if we see a PLT reloc now, put it back to how it used to be to keep the preexisting behaviour. */ - if (inst.relocs[0].type == BFD_RELOC_ARM_PLT32) + if (inst.relocs[0].type == BFD_RELOC_32_PLT_PCREL) inst.relocs[0].type = BFD_RELOC_THUMB_PCREL_BRANCH23; #if defined(OBJ_COFF) @@ -23899,7 +23899,7 @@ static struct reloc_entry reloc_names[] { { "got", BFD_RELOC_ARM_GOT32 }, { "GOT", BFD_RELOC_ARM_GOT32 }, { "gotoff", BFD_RELOC_ARM_GOTOFF }, { "GOTOFF", BFD_RELOC_ARM_GOTOFF }, - { "plt", BFD_RELOC_ARM_PLT32 }, { "PLT", BFD_RELOC_ARM_PLT32 }, + { "plt", BFD_RELOC_32_PLT_PCREL}, { "PLT", BFD_RELOC_32_PLT_PCREL}, { "target1", BFD_RELOC_ARM_TARGET1 }, { "TARGET1", BFD_RELOC_ARM_TARGET1 }, { "target2", BFD_RELOC_ARM_TARGET2 }, { "TARGET2", BFD_RELOC_ARM_TARGET2 }, { "sbrel", BFD_RELOC_ARM_SBREL32 }, { "SBREL", BFD_RELOC_ARM_SBREL32 }, @@ -27245,7 +27245,7 @@ md_pcrel_from_section (fixS * fixP, segT case BFD_RELOC_ARM_PCREL_BRANCH: case BFD_RELOC_ARM_PCREL_JUMP: - case BFD_RELOC_ARM_PLT32: + case BFD_RELOC_32_PLT_PCREL: #ifdef TE_WINCE /* When handling fixups immediately, because we have already discovered the value of a symbol, or the address of the frag involved @@ -28197,7 +28197,7 @@ md_apply_fix (fixS * fixP, } /* Fall through. */ - case BFD_RELOC_ARM_PLT32: + case BFD_RELOC_32_PLT_PCREL: #endif case BFD_RELOC_ARM_PCREL_BRANCH: temp = 3; @@ -29419,7 +29419,7 @@ tc_gen_reloc (asection *section, fixS *f case BFD_RELOC_ARM_GOT32: case BFD_RELOC_ARM_GOTOFF: case BFD_RELOC_ARM_GOT_PREL: - case BFD_RELOC_ARM_PLT32: + case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_ARM_TARGET1: case BFD_RELOC_ARM_ROSEGREL32: case BFD_RELOC_ARM_SBREL32: @@ -29748,7 +29748,7 @@ arm_fix_adjustable (fixS * fixP) return false; /* Don't allow symbols to be discarded on GOT related relocs. */ - if (fixP->fx_r_type == BFD_RELOC_ARM_PLT32 + if (fixP->fx_r_type == BFD_RELOC_32_PLT_PCREL || fixP->fx_r_type == BFD_RELOC_ARM_GOT32 || fixP->fx_r_type == BFD_RELOC_ARM_GOTOFF || fixP->fx_r_type == BFD_RELOC_ARM_TLS_GD32 @@ -30062,7 +30062,7 @@ md_begin (void) { struct reloc_entry * entry = reloc_names + i; - if (arm_is_eabi() && entry->reloc == BFD_RELOC_ARM_PLT32) + if (arm_is_eabi() && entry->reloc == BFD_RELOC_32_PLT_PCREL) /* This makes encode_branch() use the EABI versions of this relocation. */ entry->reloc = BFD_RELOC_UNUSED; From patchwork Fri Nov 28 11:31:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125501 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A9A26385841F for ; Fri, 28 Nov 2025 11:32:14 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com [IPv6:2a00:1450:4864:20::42b]) by sourceware.org (Postfix) with ESMTPS id D97443858D1E for ; Fri, 28 Nov 2025 11:31:45 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D97443858D1E Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D97443858D1E Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::42b ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329506; cv=none; b=dHqm1dQLw450xCdc4TxrzpFBGWQa01O63oBqyNkL7SVnuCRmk+k5GO1liBgmDKgIYjqXyuQK9ehxS0wSQGjAKZcr10vtLy2F9Lg+uGT+npaWFqJTlt+MjEZsNaypz7u0Z6xweaG39j9diJ5VxL403y2xzHvvLk6ypMOw4uPPGK4= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329506; c=relaxed/simple; bh=y5DTwxV7h727IvYfjIf6VVh0nVaKeRZXL+fNu1xv61w=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=ilRpM6HSvNBgyHf54bnkbAACypEOov9h5/koav+eRpsPHGMbj0p/UCzWdBc2UVm2cwEqkjwYlqPWD3JCs8sC68bQ+ZpSg66u4IRCAUpcfoduyJgF9Y8x84FrgoaiN4YlFQfLfmuNE55F14y0O2LdmZl69yomLoRGRTA+QmC0lwE= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-42b38de7940so844882f8f.3 for ; Fri, 28 Nov 2025 03:31:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764329504; x=1764934304; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=OW5z/Dblukken+yUxdFtLobHVP8uozjIql/xEE/+KAU=; b=efnFzJ7sdix5oBLoxJLZ8DpcFU96+jbY8YssVzJ1rbRHuSbGgDn03kdSVHIYBA9pZe jI/9DzVfatjgzfJgAzYVAaGS0/4GTSKPomCuBXOH6OXMsZU6IZZZhihu/rksAU6kgLSu TkVT5GZm+Rzkw9OlXW7OiI01AWN/DNOo+iJUqY8fdLm66+cJtzSCmB++qsfDfveX6dtL oy0PBvRtx+Yw42AAHzd9+I3YisXi9mTI9bv+nut9BYK2YtDkti+ruk0gcQP0czSlQkQB WIR0TMkAujNJKpPOGiwIjMSPBAaFdZGZD7oYRDtGuspYjszoHoCP6ASX6AWnaD0B3beO SgEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764329504; x=1764934304; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=OW5z/Dblukken+yUxdFtLobHVP8uozjIql/xEE/+KAU=; b=eAb1yYDEhSkiZOpvIuYbayk8//KPEtyDksajcbITRiz1xyeeXHLvObklAKxG4HGSlz jdaQoNpXn8qXUxj/mqDZxgbEz8IvpXsJxEsRicqmslv3kQzLMr5wRZbieGzLajl1TB90 Xook1i0mj24O8gpDfXuSRI7Erug4OPt4B7AeltWRtLtuNdt0WkJje6TQnWYHAqhCZG6U d0EzQxNNhASfmgvz8gEs4wTqbOKXg9JQijL3yoAXzYwxDy2qtJyBIkm8BFO2YffoIYga iQ5IbV3/Mq9qVIGeE0r/12DK88jZicRGTWBW1meXq1tdK2FTwaJpJiAiCWmegdyN3IVL QP3A== X-Gm-Message-State: AOJu0Yz1CbItIhdv5zbD6ujbpgY0TqMe5ghfESsxT76HtUezp9zemOJT xq4ExJBdlAMrnXT9CtRVsr3XdfzgXE83DHicst68FZxrSNWYkILNs/wZZI9Va/xI/0kds8Ym05W 4IsU= X-Gm-Gg: ASbGncuiFubT85K06Qhh2vasChrZtHXr/ilNXweQCdbpGuw1OcrjW4h9gru+GD3IuWT ONcuoGefkgCcWSPaJxeqR1u1CUHB2Yl1Z63bBGOESPGowBrG419fqJ4t2SfaIShwlhb9PZJdvEU TBANXL78SMv/ArGP5H2ELM5wDaiYpbk5Livg33dXr9LLg/Q9lK3zwMxFSv7sRDIoPchXs2KhvFJ XRWt1UuYFtR4An1X3JiHHsPizePFfMAYFWhlexqfEwbhXNYhESKrgqltPqcMWUa9MBXZqcKMO93 uKNOCflarfjhI0gWEokRQJRFzigh/al8dB+kdQ6DMeYUvv/SxH3LeIAPJKBZ++fETKSJxhIQunZ xW0D1tHcU3NPF1JZyGhd37/ElyWjwPb8noxrSu4/Rm9dGYBBjXEFWF/73Dyt7OiD/w4lVSeZhZg 8FMt1PZxbTE+C9bvp47st+DspggJtfw45Yul/iwYcLaRv+dGkHgfKbSStfcwsXYN76myQP8KYRE +8= X-Google-Smtp-Source: AGHT+IH6ZyuqbsDTpN5v8MjNV/wNAzBDLAplGg9sZS8h/xezXe7rAzCNd9rUMHe3h4pSPnqA6tVLJQ== X-Received: by 2002:a05:6000:288f:b0:42b:3246:1682 with SMTP id ffacd0b85a97d-42cc1ac93aemr26468119f8f.16.1764329504515; Fri, 28 Nov 2025 03:31:44 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1c5d6064sm9258519f8f.13.2025.11.28.03.31.43 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:31:44 -0800 (PST) Message-ID: Date: Fri, 28 Nov 2025 12:31:42 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 06/14] Arc: use generic BFD_RELOC_... in favor of custom types From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: Claudiu Zissulescu Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP, UPPERCASE_50_75 autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org No reason to have separate types when the generic ones have no (other) meaning for this target. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -4412,11 +4412,6 @@ enum bfd_reloc_code_real BFD_RELOC_SH_FUNCDESC, /* ARC relocs. */ - BFD_RELOC_ARC_NONE, - BFD_RELOC_ARC_8, - BFD_RELOC_ARC_16, - BFD_RELOC_ARC_24, - BFD_RELOC_ARC_32, BFD_RELOC_ARC_N8, BFD_RELOC_ARC_N16, BFD_RELOC_ARC_N24, @@ -4455,10 +4450,8 @@ enum bfd_reloc_code_real BFD_RELOC_ARC_SDA_12, BFD_RELOC_ARC_SDA16_ST2, BFD_RELOC_ARC_32_PCREL, - BFD_RELOC_ARC_PC32, BFD_RELOC_ARC_GOT32, BFD_RELOC_ARC_GOTPC32, - BFD_RELOC_ARC_PLT32, BFD_RELOC_ARC_COPY, BFD_RELOC_ARC_GLOB_DAT, BFD_RELOC_ARC_JMP_SLOT, --- a/bfd/elf32-arc.c +++ b/bfd/elf32-arc.c @@ -377,15 +377,18 @@ arc_elf_link_hash_table_create (bfd *abf #define ARC_RELOC_HOWTO(TYPE, VALUE, SIZE, BITSIZE, RELOC_FUNCTION, OVERFLOW, FORMULA) \ { BFD_RELOC_##TYPE, R_##TYPE }, +/* Aliases. */ +#define BFD_RELOC_ARC_NONE BFD_RELOC_NONE +#define BFD_RELOC_ARC_8 BFD_RELOC_8 +#define BFD_RELOC_ARC_16 BFD_RELOC_16 +#define BFD_RELOC_ARC_24 BFD_RELOC_24 +#define BFD_RELOC_ARC_32 BFD_RELOC_32 +#define BFD_RELOC_ARC_PC32 BFD_RELOC_32_PCREL +#define BFD_RELOC_ARC_PLT32 BFD_RELOC_32_PLT_PCREL + static const struct arc_reloc_map arc_reloc_map[] = { #include "elf/arc-reloc.def" - - {BFD_RELOC_NONE, R_ARC_NONE}, - {BFD_RELOC_8, R_ARC_8}, - {BFD_RELOC_16, R_ARC_16}, - {BFD_RELOC_24, R_ARC_24}, - {BFD_RELOC_32, R_ARC_32}, }; #undef ARC_RELOC_HOWTO --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1888,11 +1888,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SH_GOTOFFFUNCDESC", "BFD_RELOC_SH_GOTOFFFUNCDESC20", "BFD_RELOC_SH_FUNCDESC", - "BFD_RELOC_ARC_NONE", - "BFD_RELOC_ARC_8", - "BFD_RELOC_ARC_16", - "BFD_RELOC_ARC_24", - "BFD_RELOC_ARC_32", "BFD_RELOC_ARC_N8", "BFD_RELOC_ARC_N16", "BFD_RELOC_ARC_N24", @@ -1931,10 +1926,8 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARC_SDA_12", "BFD_RELOC_ARC_SDA16_ST2", "BFD_RELOC_ARC_32_PCREL", - "BFD_RELOC_ARC_PC32", "BFD_RELOC_ARC_GOT32", "BFD_RELOC_ARC_GOTPC32", - "BFD_RELOC_ARC_PLT32", "BFD_RELOC_ARC_COPY", "BFD_RELOC_ARC_GLOB_DAT", "BFD_RELOC_ARC_JMP_SLOT", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -3417,16 +3417,6 @@ ENUMDOC Renesas / SuperH SH relocs. Not all of these appear in object files. ENUM - BFD_RELOC_ARC_NONE -ENUMX - BFD_RELOC_ARC_8 -ENUMX - BFD_RELOC_ARC_16 -ENUMX - BFD_RELOC_ARC_24 -ENUMX - BFD_RELOC_ARC_32 -ENUMX BFD_RELOC_ARC_N8 ENUMX BFD_RELOC_ARC_N16 @@ -3503,14 +3493,10 @@ ENUMX ENUMX BFD_RELOC_ARC_32_PCREL ENUMX - BFD_RELOC_ARC_PC32 -ENUMX BFD_RELOC_ARC_GOT32 ENUMX BFD_RELOC_ARC_GOTPC32 ENUMX - BFD_RELOC_ARC_PLT32 -ENUMX BFD_RELOC_ARC_COPY ENUMX BFD_RELOC_ARC_GLOB_DAT --- a/gas/config/tc-arc.c +++ b/gas/config/tc-arc.c @@ -544,9 +544,9 @@ static const struct arc_reloc_op_tag { DEF (gotoff, BFD_RELOC_ARC_GOTOFF, 1), DEF (gotpc, BFD_RELOC_ARC_GOTPC32, 0), - DEF (plt, BFD_RELOC_ARC_PLT32, 0), + DEF (plt, BFD_RELOC_32_PLT_PCREL, 0), DEF (sda, DUMMY_RELOC_ARC_ENTRY, 1), - DEF (pcl, BFD_RELOC_ARC_PC32, 1), + DEF (pcl, BFD_RELOC_32_PCREL, 1), DEF (tlsgd, BFD_RELOC_ARC_TLS_GD_GOT, 0), DEF (tlsie, BFD_RELOC_ARC_TLS_IE_GOT, 0), DEF (tpoff9, BFD_RELOC_ARC_TLS_LE_S9, 0), @@ -1593,7 +1593,7 @@ get_register (symbolS *sym) } /* Return true if a RELOC is generic. A generic reloc is PC-rel of a - simple ME relocation (e.g. RELOC_ARC_32_ME, BFD_RELOC_ARC_PC32. */ + simple ME relocation (e.g. RELOC_ARC_32_ME, BFD_RELOC_32_PCREL. */ static bool generic_reloc_p (extended_bfd_reloc_code_real_type reloc) @@ -2785,7 +2785,7 @@ md_pcrel_from_section (fixS *fixP, { switch (fixP->fx_r_type) { - case BFD_RELOC_ARC_PC32: + case BFD_RELOC_32_PCREL: /* The hardware calculates relative to the start of the insn, but this relocation is relative to location of the LIMM, compensate. The base always needs to be @@ -2793,7 +2793,7 @@ md_pcrel_from_section (fixS *fixP, relocation for short instructions. */ base -= 4; /* Fall through. */ - case BFD_RELOC_ARC_PLT32: + case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_ARC_S25H_PCREL_PLT: case BFD_RELOC_ARC_S21H_PCREL_PLT: case BFD_RELOC_ARC_S25W_PCREL_PLT: @@ -3001,9 +3001,9 @@ md_apply_fix (fixS *fixP, fixP->fx_offset += fixP->fx_frag->fr_address; /* Fall through. */ case BFD_RELOC_32: - fixP->fx_r_type = BFD_RELOC_ARC_PC32; + fixP->fx_r_type = BFD_RELOC_32_PCREL; /* Fall through. */ - case BFD_RELOC_ARC_PC32: + case BFD_RELOC_32_PCREL: /* fixP->fx_offset += fixP->fx_where - fixP->fx_dot_value; */ break; default: @@ -3101,11 +3101,11 @@ md_apply_fix (fixS *fixP, case BFD_RELOC_ARC_GOTOFF: case BFD_RELOC_ARC_32_ME: - case BFD_RELOC_ARC_PC32: + case BFD_RELOC_32_PCREL: md_number_to_chars_midend (fixpos, value, fixP->fx_size); return; - case BFD_RELOC_ARC_PLT32: + case BFD_RELOC_32_PLT_PCREL: md_number_to_chars_midend (fixpos, value, fixP->fx_size); return; @@ -4216,7 +4216,7 @@ tc_arc_fix_adjustable (fixS *fixP) switch (fixP->fx_r_type) { case BFD_RELOC_ARC_GOTPC32: - case BFD_RELOC_ARC_PLT32: + case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_ARC_S25H_PCREL_PLT: case BFD_RELOC_ARC_S21H_PCREL_PLT: case BFD_RELOC_ARC_S25W_PCREL_PLT: --- a/gas/config/tc-arc.h +++ b/gas/config/tc-arc.h @@ -130,7 +130,7 @@ extern const char *arc_target_format; make sure that the fixup refers to some sort of label. */ #define TC_VALIDATE_FIX(FIXP,SEG,SKIP) \ if ((FIXP->fx_r_type == BFD_RELOC_ARC_GOTPC32 \ - || FIXP->fx_r_type == BFD_RELOC_ARC_PLT32 \ + || FIXP->fx_r_type == BFD_RELOC_32_PLT_PCREL \ || FIXP->fx_r_type == BFD_RELOC_ARC_S25W_PCREL_PLT \ || FIXP->fx_r_type == BFD_RELOC_ARC_S25H_PCREL_PLT \ || FIXP->fx_r_type == BFD_RELOC_ARC_S21W_PCREL_PLT \ --- a/opcodes/arc-opc.c +++ b/opcodes/arc-opc.c @@ -2737,7 +2737,7 @@ const struct arc_reloc_equiv_tab arc_rel { "plt", 0, { F_NULL }, BFD_RELOC_ARC_S21W_PCREL, BFD_RELOC_ARC_S21W_PCREL_PLT }, - { "plt", 0, { F_NULL }, BFD_RELOC_ARC_32_ME, BFD_RELOC_ARC_PLT32 } + { "plt", 0, { F_NULL }, BFD_RELOC_ARC_32_ME, BFD_RELOC_32_PLT_PCREL } }; const unsigned arc_num_equiv_tab = ARRAY_SIZE (arc_reloc_equiv); From patchwork Fri Nov 28 11:32:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125504 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 469ED3858C24 for ; Fri, 28 Nov 2025 11:34:09 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 469ED3858C24 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=d/irMjOK X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com [IPv6:2a00:1450:4864:20::42f]) by sourceware.org (Postfix) with ESMTPS id 7352E385801D for ; Fri, 28 Nov 2025 11:32:37 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7352E385801D Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7352E385801D Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::42f ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329557; cv=none; b=kG3zuzaPyME/uepi/KV/vkWBXeSDtKtUmaNUsOU2brusko31oQFzM/YzJKG3HLLX/wOKoL1VSPAqwgIRTANEbPiKqGvWFdNt5EkO/6Cz2hBeSnDgifwqLIF7f/uQnebhnl7Y7mgKVkhApg1v4X8OWEZBABT84V7ETP7YtMVgcLM= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329557; c=relaxed/simple; bh=3hZijkOGkuZTFk0G3lbXmbliY3QOUrMVcVLz+8uLqpY=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=w+Q2PNH0VR7+Lv4JojNoiIM2oqeOU9vI+tfNtKY4VbqBMjUxkyS+oDpaCgC/yGTxQ+KE8WgU51IZZ5U/OyTrg3Ie+6JUEOzZi+FZ8v5TdqGBhppgNViooMVrDwyMhDixUAgKPA87ZfgHbv/CGI7buAS92Lmq6zCW+e3kAC6QfVg= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7352E385801D Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-42b3c965cc4so784330f8f.0 for ; Fri, 28 Nov 2025 03:32:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764329556; x=1764934356; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=4w1gub2tnpbjNFHbe5KTU8+iU85XI8OLOjRXJvDVqIA=; b=d/irMjOK2YVGCNM9rt3fBUu1/EYv+qsd2X7ZEfoFPkLmFv6JIBxC2MvoXtXVv/nspA 6H/HTxefO59e1Wiu7+/MtEFAH1NbODevS2NgictEUMDTjlUnIOB/Nb2edxY7XR5dTRYk OCRqGZYXCpeMbUG6CfrzG5nxQcj2dN+UW3tCdG/4J7KvAFcz0FcgAc7Vp4EINXHhPIcp 3/0jr9kbExpVcI0ylZspUElz0DHzkvQn8Kv6wmLstBA+qPSkhdnybqIfCy9U7WsVyJGw BL9WdthvmK+uIy/KUSA2K71RnZJoO+98VzC3hNMsYIYRDiA9i4YYT+IwnqzWvhuS1BXj hQwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764329556; x=1764934356; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=4w1gub2tnpbjNFHbe5KTU8+iU85XI8OLOjRXJvDVqIA=; b=CI78RPAtr6VOJfxrXoCof7B7bSNFcM0a+edVwqHmqRA45uOH3ytqmr6xIxjAbdEkww qFgB/Xb5ArANwqHoM/Uj+Aw2Z6MWos6JdBs+6PSimLLmoBttZGeFu1iMhN1cC8HZO8Pf bFbqBayeMA5iVrjCT1zN3JuJQ26zhaiNNZnazY3IqnTAxWaTKAhJsuyRHjygV8YWyY7g BpxvphUd5mFWuyTVEenyOdmN0xZAyDhaA7EtELkJfPulTy5lNKpahET8NQri7XFz3vkA Rij7bpdqtu6Jaq8bzv+a8DQxrl3HAsHU0gPWYj/kySklTUvY23nynjAFy4KE6tQGXmvo soBg== X-Gm-Message-State: AOJu0Yz62cAsaLDIqGme2jxEIczt7mQMIF1EOMf3RVc5BL5ajbFnaMqA G+3zbcnSW4rHng6qSXEZJRE4eJwoYQXZthFRWnUdXIraQQQc3rDh6fjz3x5XTTeNdmEdMh1fmch 1KlY= X-Gm-Gg: ASbGncteyhiLL6Mre0yELfFsvu7s/KTuJmp6pal38gX3G4pvfx1F99iCUSZ3PU/jAAK hnE04M0qJjEQsvxHtSnPV1l47Y3qNaY8oDTumjmZJkBQVsUCIbbgJAcB7YVbn3THVz0p6Zicjkl 40XrJli7OhxPgppP4YJqRyqPjKB6oWoley99hLKKQTWrburwgtsVavRzGEzgH7xzntsD07yFq9/ Wwu5giFxo7KyUdQjpIQNM4YfaMOqzER2sotkbCoIvIy0jrrKEkAS20eA5PfMsP6Y8IbKAeIKoY4 AK60063B0zy6FRhmGM5zmH30FXS9cPz8sdvDiOF2MRhCtwzfhrUjFYFPIrXg52raP+xoy5QUQrq UIObTlubsuXcgHUIOf15HGIDqWxZyn+r/7H+SJJu5YrtHj0mA2AEFJjCJc8byn7ghDqQT+37dZH zrBcGceObrwLYC3X9plop/sHj2yjRPR1Qdhc73RRPQSLkH7L4TPsjaYXWRC3u7U1W2IgrSl9EVD uM= X-Google-Smtp-Source: AGHT+IFEfLam++1ig2j5fUwwmjvuf5yoTKuVn7G4D9f+ZWqR4YQAabHg/wfq0M7XKAaf23eFtIVRgA== X-Received: by 2002:a05:6000:228a:b0:428:3d14:7378 with SMTP id ffacd0b85a97d-42cba7b465bmr37039208f8f.24.1764329556074; Fri, 28 Nov 2025 03:32:36 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1ca1a303sm9416314f8f.27.2025.11.28.03.32.35 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:32:35 -0800 (PST) Message-ID: <15304a9b-1ac6-43cf-936e-d62fd5f58b1a@suse.com> Date: Fri, 28 Nov 2025 12:32:34 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 07/14] Sparc: use BFD_RELOC__PLT_PCREL in favor of custom types From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: "David S. Miller" , "Jose E. Marchesi" Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org No reason to have separate types when the generic ones have no (other) meaning for this target. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3440,8 +3440,6 @@ enum bfd_reloc_code_real BFD_RELOC_SPARC_6, BFD_RELOC_SPARC_5, #define BFD_RELOC_SPARC_DISP64 BFD_RELOC_64_PCREL - BFD_RELOC_SPARC_PLT32, - BFD_RELOC_SPARC_PLT64, BFD_RELOC_SPARC_HIX22, BFD_RELOC_SPARC_LOX10, BFD_RELOC_SPARC_H44, --- a/bfd/elfxx-sparc.c +++ b/bfd/elfxx-sparc.c @@ -387,7 +387,7 @@ _bfd_sparc_elf_reloc_type_lookup (bfd *a case BFD_RELOC_SPARC_UA32: return &_bfd_sparc_elf_howto_table[R_SPARC_UA32]; - case BFD_RELOC_SPARC_PLT32: + case BFD_RELOC_32_PLT_PCREL: return &_bfd_sparc_elf_howto_table[R_SPARC_PLT32]; case BFD_RELOC_SPARC_10: @@ -438,7 +438,7 @@ _bfd_sparc_elf_reloc_type_lookup (bfd *a case BFD_RELOC_SPARC_DISP64: return &_bfd_sparc_elf_howto_table[R_SPARC_DISP64]; - case BFD_RELOC_SPARC_PLT64: + case BFD_RELOC_64_PLT_PCREL: return &_bfd_sparc_elf_howto_table[R_SPARC_PLT64]; case BFD_RELOC_SPARC_HIX22: --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1174,8 +1174,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SPARC_7", "BFD_RELOC_SPARC_6", "BFD_RELOC_SPARC_5", - "BFD_RELOC_SPARC_PLT32", - "BFD_RELOC_SPARC_PLT64", "BFD_RELOC_SPARC_HIX22", "BFD_RELOC_SPARC_LOX10", "BFD_RELOC_SPARC_H44", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -1667,10 +1667,6 @@ ENUMEQX BFD_RELOC_SPARC_DISP64 BFD_RELOC_64_PCREL ENUMX - BFD_RELOC_SPARC_PLT32 -ENUMX - BFD_RELOC_SPARC_PLT64 -ENUMX BFD_RELOC_SPARC_HIX22 ENUMX BFD_RELOC_SPARC_LOX10 --- a/gas/config/tc-sparc.c +++ b/gas/config/tc-sparc.c @@ -3915,8 +3915,8 @@ tc_gen_reloc (asection *section, fixS *f case BFD_RELOC_16_PCREL: case BFD_RELOC_32_PCREL: case BFD_RELOC_64_PCREL: - case BFD_RELOC_SPARC_PLT32: - case BFD_RELOC_SPARC_PLT64: + case BFD_RELOC_32_PLT_PCREL: + case BFD_RELOC_64_PLT_PCREL: case BFD_RELOC_VTABLE_ENTRY: case BFD_RELOC_VTABLE_INHERIT: case BFD_RELOC_SPARC_TLS_GD_HI22: @@ -4904,8 +4904,8 @@ cons_fix_new_sparc (fragS *frag, else if (*sparc_cons_special_reloc == 'p') switch (nbytes) { - case 4: r = BFD_RELOC_SPARC_PLT32; break; - case 8: r = BFD_RELOC_SPARC_PLT64; break; + case 4: r = BFD_RELOC_32_PLT_PCREL; break; + case 8: r = BFD_RELOC_64_PLT_PCREL; break; } else switch (nbytes) From patchwork Fri Nov 28 11:33:08 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125505 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 37F433858430 for ; Fri, 28 Nov 2025 11:34:34 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [IPv6:2a00:1450:4864:20::429]) by sourceware.org (Postfix) with ESMTPS id 8A4B53858D1E for ; Fri, 28 Nov 2025 11:33:39 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8A4B53858D1E Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8A4B53858D1E Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::429 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329619; cv=none; b=wZ8yGeNxtFRfB7A+3vjJJfi6aAGNdniSMD8OuxjtexYl5o4hyP//nPFBxRemZVZNP121UtjFNA8yfHMOoppXan/xx0tZ7OiV/1BH3IRduHvDSoOXFLqvoUhKsCCQDpeQifUeLtHPeCzxPoT86kiaotqSGiFypvWTQ/krSQxLuDU= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329619; c=relaxed/simple; bh=b617Fa0ufW0RA/GBeoyPDibBInVh1CqfbX+I2BfUftQ=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=G7w63/LivG6DF9lvX+9sDfX9MzPn6Co1Yu1gZvUe0bHtLniXItpQLa7gE099OTFWZSutszLa1CdJQzGHfMfJKVfALcoKFqf79wXNmvaU8+OdijfOHtQ7cOk+f14eroslm3BH/CWmZ5uScHm1X0AfAcIkm5zKZpjywA7mfuPDTzI= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-429c82bf86bso1136217f8f.1 for ; Fri, 28 Nov 2025 03:33:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764329590; x=1764934390; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=Tki99afG0EaKcE8H6vCm0Xd7P8Ig7OkjLKJLxYYdVSk=; b=Kz78OTXgnm1YtJpdXoPYQQ6z/Bata0tv91EOkxdL1sCc4gckEZt0LyHz62+hW8kFJc 4IPT/47/Rv8QKqAsU5GnDcliers/NpCKh0jVXPrK7bsiyzZ4T0nlW0qiprfVYlhPhMhk eK87nODTS2O+gTTp0Noey4JXRPqZZv7HlcNFYADpLCK3OliA5ZFxtdqtduWsQGNYczGQ v12uXQ3EiTGwNB9yZLOru+cInT0lEJ7/J8ZM0sQDiAXtEDzweDK21aiF+R9vx76d5Nl4 P+G0YhJgGAZCGziSWAiYDICBHmpptakhSAvZAXhjCG/jFNG3uwEipPeDCL2KiexZ3J4J AN7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764329590; x=1764934390; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Tki99afG0EaKcE8H6vCm0Xd7P8Ig7OkjLKJLxYYdVSk=; b=nPXsIPOsls7d+L+nmBew+hgiup/SnTOtaEvbgJRMyKuLca41JeuTi9TsUYUS+uetAU +tlgheH0EZSgsvhuyZLMvZ1Tz19XtL8HxEfVwHGw2ceC9KUxs4AnN3t2PIkgh/lLmIK6 TazER2Hptb058aJFuPwm8S9q4obicXCWod1xFvN3Sm4DKekkZRi/E0bKBcTS+7/SnmQq uE2HMFlSAw+PnF52lLnYmJYHhgf6PX+fKmZnnfcxv5K9nHMa418TLuUOHGcGcBfIR1Ly ng6KcPa1NTiQQznpvcKg5QaOcDqfUSfS3U5EFslpdn3LaPVn3UmoqC5L52VdOMWdn7s+ rlqg== X-Gm-Message-State: AOJu0YyHlxmzIFA8zOZJShpsDmTDefDjpavz9f5MCDR9I57ME2ZIYg7J Bmq9Y8sYV5s3gkWybBzkL0/lRrqKf3yBxsDKmtStJjTdCVWkU6L97ZSEV0Zry8eQepbEI7T7ZbW mK3M= X-Gm-Gg: ASbGncu7xRi5XQLw5vN0fN3ptqa4Lb6/ERlmeIaIkOkmnB68HfK/wxfmj5Tow3rRoMT fLOU036Rpcf7xoYeTfEx9p1wu0IufXKdPYAo8L7oOSo6XcllPq5XfqUqQMJyIrLc+42xLu9R3S8 /tqdQ2TqOuZbyxDile49qcr3ABa+4KH0rwBEyzbDRms5Jbq6bm24H/RoXhLXbb4n/IYAlizpW9D DQ6j7v69itnJGEeEcyt4gR6kmUlWV0qQ2WhxIbncVDuq9GFCNUt7fimiKOi94nFXOfqUyjJh72R utT14/269pus6+mSokh1xuo7Fz1Z+dMgXUu7Pn9GNoHuFVfSJiXEsl1+1LRyGjYCk8ilUt52pwp PMoYVLch+mC/9LagmXigaZTK8BIXYatNxhvBnXNmB6V0LgrpgaxZIkT2LbUN7jVT/2Y1lhQPUmj 5LUwpqFSLl9cVEcChKzggGT2jTmx0MEo1ze1J/k9G6BvyjQs6oc7b5Jw3Z9Xb86o4xbvG2SPXRY SI= X-Google-Smtp-Source: AGHT+IFtchrJjUIvYxhnu6xLd1OQhIsYsAug+6zFYmb+G4XGJ0AyT/HmispeWvlTVTLCn0FzOYg3uw== X-Received: by 2002:a05:6000:4305:b0:42b:5592:ebe6 with SMTP id ffacd0b85a97d-42cc19f327cmr30106804f8f.0.1764329590086; Fri, 28 Nov 2025 03:33:10 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1c5c3041sm8750048f8f.6.2025.11.28.03.33.09 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:33:09 -0800 (PST) Message-ID: Date: Fri, 28 Nov 2025 12:33:08 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 08/14] S/390: use BFD_RELOC__PLT_PCREL in favor of custom types From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: Andreas Krebbel Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org No reason to have separate types when the generic ones have no (other) meaning for this target. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -5510,9 +5510,6 @@ enum bfd_reloc_code_real /* 12 bit GOT offset. */ BFD_RELOC_390_GOT12, - /* 32 bit PC relative PLT address. */ - BFD_RELOC_390_PLT32, - /* Copy symbol at runtime. */ BFD_RELOC_390_COPY, @@ -5561,9 +5558,6 @@ enum bfd_reloc_code_real /* 64 bit GOT offset. */ BFD_RELOC_390_GOT64, - /* 64 bit PC relative PLT address. */ - BFD_RELOC_390_PLT64, - /* 32 bit rel. offset to GOT entry. */ BFD_RELOC_390_GOTENT, --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -201,7 +201,7 @@ elf_s390_reloc_type_lookup (bfd *abfd AT return &elf_howto_table[(int) R_390_GOT12]; case BFD_RELOC_32_GOT_PCREL: return &elf_howto_table[(int) R_390_GOT32]; - case BFD_RELOC_390_PLT32: + case BFD_RELOC_32_PLT_PCREL: return &elf_howto_table[(int) R_390_PLT32]; case BFD_RELOC_390_COPY: return &elf_howto_table[(int) R_390_COPY]; --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -215,7 +215,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_GOT12]; case BFD_RELOC_32_GOT_PCREL: return &elf_howto_table[(int) R_390_GOT32]; - case BFD_RELOC_390_PLT32: + case BFD_RELOC_32_PLT_PCREL: return &elf_howto_table[(int) R_390_PLT32]; case BFD_RELOC_390_COPY: return &elf_howto_table[(int) R_390_COPY]; @@ -257,7 +257,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_PC64]; case BFD_RELOC_390_GOT64: return &elf_howto_table[(int) R_390_GOT64]; - case BFD_RELOC_390_PLT64: + case BFD_RELOC_64_PLT_PCREL: return &elf_howto_table[(int) R_390_PLT64]; case BFD_RELOC_390_GOTENT: return &elf_howto_table[(int) R_390_GOTENT]; --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -2491,7 +2491,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_RX_RELAX", "BFD_RELOC_390_12", "BFD_RELOC_390_GOT12", - "BFD_RELOC_390_PLT32", "BFD_RELOC_390_COPY", "BFD_RELOC_390_GLOB_DAT", "BFD_RELOC_390_JMP_SLOT", @@ -2508,7 +2507,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_390_PLT32DBL", "BFD_RELOC_390_GOTPCDBL", "BFD_RELOC_390_GOT64", - "BFD_RELOC_390_PLT64", "BFD_RELOC_390_GOTENT", "BFD_RELOC_390_GOTOFF64", "BFD_RELOC_390_GOTPLT12", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -5147,10 +5147,6 @@ ENUM ENUMDOC 12 bit GOT offset. ENUM - BFD_RELOC_390_PLT32 -ENUMDOC - 32 bit PC relative PLT address. -ENUM BFD_RELOC_390_COPY ENUMDOC Copy symbol at runtime. @@ -5215,10 +5211,6 @@ ENUM ENUMDOC 64 bit GOT offset. ENUM - BFD_RELOC_390_PLT64 -ENUMDOC - 64 bit PC relative PLT address. -ENUM BFD_RELOC_390_GOTENT ENUMDOC 32 bit rel. offset to GOT entry. --- a/gas/config/tc-s390.c +++ b/gas/config/tc-s390.c @@ -1114,9 +1114,9 @@ s390_lit_suffix (char **str_p, expressio else if (suffix == ELF_SUFFIX_PLT) { if (nbytes == 4) - reloc = BFD_RELOC_390_PLT32; + reloc = BFD_RELOC_32_PLT_PCREL; else if (nbytes == 8) - reloc = BFD_RELOC_390_PLT64; + reloc = BFD_RELOC_64_PLT_PCREL; } if (suffix != ELF_SUFFIX_NONE && reloc == BFD_RELOC_UNUSED) @@ -1272,7 +1272,7 @@ s390_elf_cons (int nbytes /* 1=.byte, 2= { BFD_RELOC_UNUSED, /* ELF_SUFFIX_NONE */ BFD_RELOC_32_GOT_PCREL, /* ELF_SUFFIX_GOT */ - BFD_RELOC_390_PLT32, /* ELF_SUFFIX_PLT */ + BFD_RELOC_32_PLT_PCREL, /* ELF_SUFFIX_PLT */ BFD_RELOC_UNUSED, /* ELF_SUFFIX_GOTENT */ BFD_RELOC_32_GOTOFF, /* ELF_SUFFIX_GOTOFF */ BFD_RELOC_390_GOTPLT32, /* ELF_SUFFIX_GOTPLT */ @@ -1292,7 +1292,7 @@ s390_elf_cons (int nbytes /* 1=.byte, 2= { BFD_RELOC_UNUSED, /* ELF_SUFFIX_NONE */ BFD_RELOC_390_GOT64, /* ELF_SUFFIX_GOT */ - BFD_RELOC_390_PLT64, /* ELF_SUFFIX_PLT */ + BFD_RELOC_64_PLT_PCREL, /* ELF_SUFFIX_PLT */ BFD_RELOC_UNUSED, /* ELF_SUFFIX_GOTENT */ BFD_RELOC_390_GOTOFF64, /* ELF_SUFFIX_GOTOFF */ BFD_RELOC_390_GOTPLT64, /* ELF_SUFFIX_GOTPLT */ @@ -2390,9 +2390,9 @@ tc_s390_fix_adjustable (fixS *fixP) || fixP->fx_r_type == BFD_RELOC_390_PLT12DBL || fixP->fx_r_type == BFD_RELOC_390_PLT16DBL || fixP->fx_r_type == BFD_RELOC_390_PLT24DBL - || fixP->fx_r_type == BFD_RELOC_390_PLT32 + || fixP->fx_r_type == BFD_RELOC_32_PLT_PCREL || fixP->fx_r_type == BFD_RELOC_390_PLT32DBL - || fixP->fx_r_type == BFD_RELOC_390_PLT64 + || fixP->fx_r_type == BFD_RELOC_64_PLT_PCREL || fixP->fx_r_type == BFD_RELOC_390_GOT12 || fixP->fx_r_type == BFD_RELOC_390_GOT20 || fixP->fx_r_type == BFD_RELOC_390_GOT16 @@ -2454,12 +2454,12 @@ tc_s390_force_relocation (struct fix *fi case BFD_RELOC_390_GOTPCDBL: case BFD_RELOC_390_GOT64: case BFD_RELOC_390_GOTENT: - case BFD_RELOC_390_PLT32: + case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_390_PLT12DBL: case BFD_RELOC_390_PLT16DBL: case BFD_RELOC_390_PLT24DBL: case BFD_RELOC_390_PLT32DBL: - case BFD_RELOC_390_PLT64: + case BFD_RELOC_64_PLT_PCREL: case BFD_RELOC_390_GOTPLT12: case BFD_RELOC_390_GOTPLT16: case BFD_RELOC_390_GOTPLT20: @@ -2730,7 +2730,7 @@ md_apply_fix (fixS *fixP, valueT *valP, break; case BFD_RELOC_32_GOT_PCREL: case BFD_RELOC_390_PLTOFF32: - case BFD_RELOC_390_PLT32: + case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_390_GOTPLT32: if (fixP->fx_done) md_number_to_chars (where, value, 4); @@ -2757,7 +2757,7 @@ md_apply_fix (fixS *fixP, valueT *valP, case BFD_RELOC_390_GOT64: case BFD_RELOC_390_PLTOFF64: - case BFD_RELOC_390_PLT64: + case BFD_RELOC_64_PLT_PCREL: case BFD_RELOC_390_GOTPLT64: if (fixP->fx_done) md_number_to_chars (where, value, 8); From patchwork Fri Nov 28 11:37:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125507 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id DEF8B3858C41 for ; Fri, 28 Nov 2025 11:42:05 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DEF8B3858C41 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=ZJZXJ1VZ X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) by sourceware.org (Postfix) with ESMTPS id C69F73858D1E for ; Fri, 28 Nov 2025 11:37:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C69F73858D1E Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org C69F73858D1E Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::42c ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329839; cv=none; b=PBdXG93j9/sOOxcey2lFFUOZxwmqweOu39TntXVSkE4Sdv6kwlNdA8D6P2zw7X4+Tu7clo3ppQNAii9Lxr7wkluG5R2R+Cs9vCWphOHYn0pWBA5wrWsJQBX7HuATmFXQHdGx8q+iFOa59+nvXp/xhlvzIb/rSC8dKq2IlfU73qY= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764329839; c=relaxed/simple; bh=XbKKfrRpzuMD7Aqm5j7A2+4q28QM03ATy4dFWv+0GyU=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=HSN9jqzhOJscHRrP7VFq0N6nlOmL/mUJX4m7kLTkf860qCbvneezfBJgWylYbh2+gPf2XEYF5bgKrQLpLPbHSdbWsPa8k22rXzW3I5oucy7PDi8BN4tJU8HoLGxfXaY03W6mkrIClRJECzOoX917CJ60w/RZNHsztWmGTtrgziU= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C69F73858D1E Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-42b38693c4dso668005f8f.3 for ; Fri, 28 Nov 2025 03:37:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764329837; x=1764934637; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=ZXPoq2OCeCKIGBXC0nE+MYpuPm3II5THIc0fO5IP6KU=; b=ZJZXJ1VZjjei9vdm39ClaNB2msnvStDZEtnX+0Z4U8E7NYI/rEn3Z/p3c68B8SxLSm 4S+IFBbwcIhDZORTVT2X0YFGjzqvwScXA03sIUTO8h5dF1BsjvBeHjCzUn7Au27MeFJe PbNmrcInvhoMWDoEwz8GgPH04ErgQt9z5LXSuNj4JDTK6WexA3MvboV5l44b7tc0hLaQ hPb56lAK33W8qZVP9hl3j6yp9qndezcv596fVE8KBcn862Hq0fNxfgHrXvQz3akG8afy LDg0ZXhSg3uo/lTFX8a+jhGYEgZ+cVwznPLmxA6EzuXJEqWofxvUoiCHQbQHlVqB/tOg HbVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764329837; x=1764934637; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ZXPoq2OCeCKIGBXC0nE+MYpuPm3II5THIc0fO5IP6KU=; b=PRsbxmHqoj3e4LOX1k4X22S3xJBa0oDyXNd5lBrTSbf1q2e34OAGct1rtD7+ghBT/H kwi1ubr4OLhkBkm0ZkbK6MeKSdyUqALg+hSovWGeNOsSEe//gSuSS71qvPPcMIklM6fQ Qzc8z9qz9WpypMbivcO/PnuUqEiSJuS2qiHNpKOU0Ek+b7wWVknEtMgIZisgyOfA+LPn 8p1j9OsEgPdogDhK2wBZ7448eDP8+WdW4KRX2AKF+GFH7l9BY8rmctZMFPH0O1jP2L6H xmF5sUVXQXBAsKslE0jd62+9XIsnqkla7zlhY0rxA4NELd/2hHumSIzTGAiNyr9gXGa9 EzYA== X-Gm-Message-State: AOJu0YwczX44fAQDj7BD949wGkvp1l4xJogUWigSoLnfOLODgB7NooNO 9cZ1cv+gTPw4hGgYPplTmP9L0NBAq6ysS3pj9p8CBQw82bSoN1kcy8HIo5CQ/IXNrHp3AkQ9PRf 1Xb4= X-Gm-Gg: ASbGncuCooX4yeXpR/mlWRxjMjIiFbeF2RGk954yMo4uoAj/w7LWT6ndjZKfc/MmH0v /EvEx+GWkQhIo29OL+Hv4f4e1Cy9atF0DE4BXeYvgq0lvsJ0pBgdhRG1zOq00P1urJDob5xDGQo xQsf7vDbyhtpluulSbvngOPO3j7MMuS5s8yhXrjZPkBtwOP016VBvm3Uit9uLcLgBZf5DlyhSgu RL3dhc58B5/Iwon6Rm3VMCxJd3iCViROQPo4/LSRgMHhmhBPYDpqwpK+AZm+EnSq+HTyFkrYsxp wtp9FCTRIP3O8b/ygsla64A86YQYqeqwuUGb2qRk1cLYPXlCtDqpOleznYhvq3PgjhRP0P+To99 js6rRhQsODac3hKa+I1j/9H3opGkflr3tGVK/QjqaWqApy3mZAKrA2DWx3HJC7/k86/55y4HVmt p8Lmj/OXTBJQuA2jpCeouei+FYTCZYzlAvun5tINB+zAgQZ164v+6YjEEEuG7UC9m9MVwzOda51 yQ= X-Google-Smtp-Source: AGHT+IGo0EirdIevH2xVwOa5HXukgHA7GJ3BM75Fv55HOasri3S6ipRvJk1JOUQK06j7+BJaYoD01g== X-Received: by 2002:a05:6000:40c9:b0:42b:47da:c31c with SMTP id ffacd0b85a97d-42e0f344674mr16358223f8f.37.1764329837394; Fri, 28 Nov 2025 03:37:17 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1c5168acsm8470244f8f.0.2025.11.28.03.37.16 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:37:17 -0800 (PST) Message-ID: <57fad9b6-7300-46ec-858f-c6b233dc91a7@suse.com> Date: Fri, 28 Nov 2025 12:37:15 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 09/14] bfd/ELF: fold BFD_RELOC__IRELATIVE From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: Nick Clifton , "ramana.radhakrishnan@arm.com" , Richard Earnshaw , "H.J. Lu" , Andreas Krebbel , "David S. Miller" , "Jose E. Marchesi" , Alice Carlotti , Lifang Xia , Yunhai Shang , Paul Iannetta Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP, UPPERCASE_50_75 autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org There's no need to have a separate reloc per arch; just like for other more or less generic ones a single one will (mostly) do. Arm64, C-Sky, and KVX - sadly - are exceptions. --- Arm64, C-Sky, and KVX, explicitly and/or implicitly, do math on their enumerators. While for the former two a testsuite run pointed out the need to retain their relocs, for KVX I spotted this only by going through all the comments. Imo really all three should have build-time checks in place to make sure ordering assumptions aren't broken. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3333,6 +3333,7 @@ enum bfd_reloc_code_real BFD_RELOC_HI16_PLTOFF, BFD_RELOC_HI16_S_PLTOFF, BFD_RELOC_8_PLTOFF, + BFD_RELOC_IRELATIVE, /* Size relocations. */ BFD_RELOC_SIZE32, @@ -3417,7 +3418,6 @@ enum bfd_reloc_code_real BFD_RELOC_SPARC_GOTDATA_OP_LOX10, BFD_RELOC_SPARC_GOTDATA_OP, BFD_RELOC_SPARC_JMP_IREL, - BFD_RELOC_SPARC_IRELATIVE, /* I think these are specific to SPARC a.out (e.g., Sun 4). */ BFD_RELOC_SPARC_BASE13, @@ -3874,7 +3874,6 @@ enum bfd_reloc_code_real BFD_RELOC_386_TLS_GOTDESC, BFD_RELOC_386_TLS_DESC_CALL, BFD_RELOC_386_TLS_DESC, - BFD_RELOC_386_IRELATIVE, BFD_RELOC_386_GOT32X, /* x86-64/elf relocations. */ @@ -3902,7 +3901,6 @@ enum bfd_reloc_code_real BFD_RELOC_X86_64_GOTPC32_TLSDESC, BFD_RELOC_X86_64_TLSDESC_CALL, BFD_RELOC_X86_64_TLSDESC, - BFD_RELOC_X86_64_IRELATIVE, BFD_RELOC_X86_64_PC32_BND, BFD_RELOC_X86_64_PLT32_BND, BFD_RELOC_X86_64_GOTPCRELX, @@ -4271,9 +4269,6 @@ enum bfd_reloc_code_real /* Annotation of BX instructions. */ BFD_RELOC_ARM_V4BX, - /* ARM support for STT_GNU_IFUNC. */ - BFD_RELOC_ARM_IRELATIVE, - /* Thumb1 relocations to support execute-only code. */ BFD_RELOC_ARM_THUMB_ALU_ABS_G0_NC, BFD_RELOC_ARM_THUMB_ALU_ABS_G1_NC, @@ -5616,9 +5611,6 @@ enum bfd_reloc_code_real BFD_RELOC_390_GOTPLT20, BFD_RELOC_390_TLS_GOTIE20, - /* STT_GNU_IFUNC relocation. */ - BFD_RELOC_390_IRELATIVE, - /* Score relocations. Low 16 bit for load/store. */ BFD_RELOC_SCORE_GPREL15, --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -2043,7 +2043,7 @@ static const struct elf32_arm_reloc_map {BFD_RELOC_ARM_TLS_TPOFF32, R_ARM_TLS_TPOFF32}, {BFD_RELOC_ARM_TLS_IE32, R_ARM_TLS_IE32}, {BFD_RELOC_ARM_TLS_LE32, R_ARM_TLS_LE32}, - {BFD_RELOC_ARM_IRELATIVE, R_ARM_IRELATIVE}, + {BFD_RELOC_IRELATIVE, R_ARM_IRELATIVE}, {BFD_RELOC_ARM_GOTFUNCDESC, R_ARM_GOTFUNCDESC}, {BFD_RELOC_ARM_GOTOFFFUNCDESC, R_ARM_GOTOFFFUNCDESC}, {BFD_RELOC_ARM_FUNCDESC, R_ARM_FUNCDESC}, --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -322,8 +322,8 @@ elf_i386_reloc_type_lookup (bfd *abfd, TRACE ("BFD_RELOC_386_TLS_DESC"); return &elf_howto_table[R_386_TLS_DESC - R_386_tls_offset]; - case BFD_RELOC_386_IRELATIVE: - TRACE ("BFD_RELOC_386_IRELATIVE"); + case BFD_RELOC_IRELATIVE: + TRACE ("BFD_RELOC_IRELATIVE"); return &elf_howto_table[R_386_IRELATIVE - R_386_tls_offset]; case BFD_RELOC_386_GOT32X: --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -289,7 +289,7 @@ elf_s390_reloc_type_lookup (bfd *abfd AT return &elf_howto_table[(int) R_390_GOTPLT20]; case BFD_RELOC_390_TLS_GOTIE20: return &elf_howto_table[(int) R_390_TLS_GOTIE20]; - case BFD_RELOC_390_IRELATIVE: + case BFD_RELOC_IRELATIVE: return &elf_howto_table[(int) R_390_IRELATIVE]; case BFD_RELOC_VTABLE_INHERIT: return &elf32_s390_vtinherit_howto; --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -317,7 +317,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_GOTPLT20]; case BFD_RELOC_390_TLS_GOTIE20: return &elf_howto_table[(int) R_390_TLS_GOTIE20]; - case BFD_RELOC_390_IRELATIVE: + case BFD_RELOC_IRELATIVE: return &elf_howto_table[(int) R_390_IRELATIVE]; case BFD_RELOC_VTABLE_INHERIT: return &elf64_s390_vtinherit_howto; --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -266,7 +266,7 @@ static const struct elf_reloc_map x86_64 { BFD_RELOC_X86_64_GOTPC32_TLSDESC, R_X86_64_GOTPC32_TLSDESC, }, { BFD_RELOC_X86_64_TLSDESC_CALL, R_X86_64_TLSDESC_CALL, }, { BFD_RELOC_X86_64_TLSDESC, R_X86_64_TLSDESC, }, - { BFD_RELOC_X86_64_IRELATIVE, R_X86_64_IRELATIVE, }, + { BFD_RELOC_IRELATIVE, R_X86_64_IRELATIVE, }, { BFD_RELOC_X86_64_PC32_BND, R_X86_64_PC32_BND, }, { BFD_RELOC_X86_64_PLT32_BND, R_X86_64_PLT32_BND, }, { BFD_RELOC_X86_64_GOTPCRELX, R_X86_64_GOTPCRELX, }, --- a/bfd/elfxx-sparc.c +++ b/bfd/elfxx-sparc.c @@ -567,7 +567,7 @@ _bfd_sparc_elf_reloc_type_lookup (bfd *a case BFD_RELOC_SPARC_JMP_IREL: return &sparc_jmp_irel_howto; - case BFD_RELOC_SPARC_IRELATIVE: + case BFD_RELOC_IRELATIVE: return &sparc_irelative_howto; case BFD_RELOC_VTABLE_INHERIT: --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1099,6 +1099,7 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_HI16_PLTOFF", "BFD_RELOC_HI16_S_PLTOFF", "BFD_RELOC_8_PLTOFF", + "BFD_RELOC_IRELATIVE", "BFD_RELOC_SIZE32", "BFD_RELOC_SIZE64", "BFD_RELOC_68K_GLOB_DAT", @@ -1157,7 +1158,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SPARC_GOTDATA_OP_LOX10", "BFD_RELOC_SPARC_GOTDATA_OP", "BFD_RELOC_SPARC_JMP_IREL", - "BFD_RELOC_SPARC_IRELATIVE", "BFD_RELOC_SPARC_BASE13", "BFD_RELOC_SPARC_BASE22", "BFD_RELOC_SPARC_10", @@ -1440,7 +1440,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_386_TLS_GOTDESC", "BFD_RELOC_386_TLS_DESC_CALL", "BFD_RELOC_386_TLS_DESC", - "BFD_RELOC_386_IRELATIVE", "BFD_RELOC_386_GOT32X", "BFD_RELOC_X86_64_GOT32", "BFD_RELOC_X86_64_COPY", @@ -1466,7 +1465,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_X86_64_GOTPC32_TLSDESC", "BFD_RELOC_X86_64_TLSDESC_CALL", "BFD_RELOC_X86_64_TLSDESC", - "BFD_RELOC_X86_64_IRELATIVE", "BFD_RELOC_X86_64_PC32_BND", "BFD_RELOC_X86_64_PLT32_BND", "BFD_RELOC_X86_64_GOTPCRELX", @@ -1757,7 +1755,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARM_LDC_SB_G1", "BFD_RELOC_ARM_LDC_SB_G2", "BFD_RELOC_ARM_V4BX", - "BFD_RELOC_ARM_IRELATIVE", "BFD_RELOC_ARM_THUMB_ALU_ABS_G0_NC", "BFD_RELOC_ARM_THUMB_ALU_ABS_G1_NC", "BFD_RELOC_ARM_THUMB_ALU_ABS_G2_NC", @@ -2541,7 +2538,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_390_GOT20", "BFD_RELOC_390_GOTPLT20", "BFD_RELOC_390_TLS_GOTIE20", - "BFD_RELOC_390_IRELATIVE", "BFD_RELOC_SCORE_GPREL15", "BFD_RELOC_SCORE_DUMMY2", "BFD_RELOC_SCORE_JMP", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -1470,6 +1470,8 @@ ENUMX BFD_RELOC_HI16_S_PLTOFF ENUMX BFD_RELOC_8_PLTOFF +ENUMX + BFD_RELOC_IRELATIVE ENUMDOC For ELF. @@ -1619,8 +1621,6 @@ ENUMX BFD_RELOC_SPARC_GOTDATA_OP ENUMX BFD_RELOC_SPARC_JMP_IREL -ENUMX - BFD_RELOC_SPARC_IRELATIVE ENUMDOC SPARC ELF relocations. There is probably some overlap with other relocation types already defined. @@ -2403,8 +2403,6 @@ ENUMX ENUMX BFD_RELOC_386_TLS_DESC ENUMX - BFD_RELOC_386_IRELATIVE -ENUMX BFD_RELOC_386_GOT32X ENUMDOC i386/elf relocations. @@ -2458,8 +2456,6 @@ ENUMX ENUMX BFD_RELOC_X86_64_TLSDESC ENUMX - BFD_RELOC_X86_64_IRELATIVE -ENUMX BFD_RELOC_X86_64_PC32_BND ENUMX BFD_RELOC_X86_64_PLT32_BND @@ -3142,11 +3138,6 @@ ENUMDOC Annotation of BX instructions. ENUM - BFD_RELOC_ARM_IRELATIVE -ENUMDOC - ARM support for STT_GNU_IFUNC. - -ENUM BFD_RELOC_ARM_THUMB_ALU_ABS_G0_NC ENUMX BFD_RELOC_ARM_THUMB_ALU_ABS_G1_NC @@ -5306,11 +5297,6 @@ ENUMDOC Long displacement extension. ENUM - BFD_RELOC_390_IRELATIVE -ENUMDOC - STT_GNU_IFUNC relocation. - -ENUM BFD_RELOC_SCORE_GPREL15 ENUMDOC Score relocations. From patchwork Fri Nov 28 11:42:56 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125508 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 150F73858D38 for ; Fri, 28 Nov 2025 11:45:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 150F73858D38 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=RRgo4B9X X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) by sourceware.org (Postfix) with ESMTPS id 7F3A53858C36 for ; Fri, 28 Nov 2025 11:43:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7F3A53858C36 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7F3A53858C36 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::335 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330180; cv=none; b=SRJRPJ1QMGOgLw3fpULdoGcLifRQ9OydHXWJ6uyGnj30ywjzVx9RuHOUCryKc7xjmEgHz3oQOIi4+MoZMgkzBSbTbxZ0XQKrn0quCRsBiJV7z7nZuWdg+SSrEJLXqFVGcmBxHBNJKPNA1hGOEH2fq6+z0QwY92qHcEUDgauizLs= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330180; c=relaxed/simple; bh=Q7lbsUpf/kQSR1USrmT7suJqyGdTguwuBmXJAM2IdYs=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=KqMJxX1q3I8xRaeEC8qcJ1n9IHe8DeienAO3jFjKjJoY+oFnVAj1llvVe+Y6fjq9oNkeGm+ZUqikRhYo5OwTUBXjYPj6pnxU4k2+ArK2p5Ksj5tcjTriZbiBw9gVWq82iMc7AzBvaG+TyjWhKudH1cX0Pqr426wb6/DgMabpT2k= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7F3A53858C36 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-4777771ed1aso10380155e9.2 for ; Fri, 28 Nov 2025 03:43:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764330179; x=1764934979; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=7mpfthPxUpfUdHp4Zcw/jkjCsSI20ubBqP+LMd8apMo=; b=RRgo4B9X4fPvgkgj4OVRNHtpStO62XQAaxme4uX57HICYU1IXxw+At42KpP0Z9t5wa wydwPNUaGDUc2RcOZnFoH0w47YBVof/ebg0QcnF49R7ksxExhReEbD87bkLRRLhKmEqs V6+B+jFp007j1n7gredzbXOkdDknf8Q6y10bRsmfv6aCD5CPnWw7pu0swNiPhW8ZJ/s3 sxpGOEHGSx5h8gXBlOlprmUfLfvVikfMJT9Zt0+YVc5mBXS23yBsTJ6FKv4fctFzeLr3 s2vHaxZLJ/ucbrXOQLNNmxg5DZ+370X9Otw6VN2dcerBAoLpY55Va9MSfRK0qLtW1J6M o/Jw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764330179; x=1764934979; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=7mpfthPxUpfUdHp4Zcw/jkjCsSI20ubBqP+LMd8apMo=; b=eQrEguYkQZ2e0GsFcGXBKKYNsQVnNXdTcg9QYPcqdhOAiX/qCKVK25ozVNSluKctB4 K3PzX9BKSgnPVaZwmlHXvd+Ro5OPFxVpeCsvCHynBc1hOecLOjk5vskh3gpPmIsax8lI zpyYGmq+M2Ah3s3mj1JFz16ugnNiA3rPakrJonGqo8ajO3gxSj6apGarJlsQEfmKVO/x JUllqB1/xOEsz+ZZXqV7F16yLmj6OZTqxi0uDmkYBgJhZDfqzbDYWYrMx34Zv4DyxCuA nFdLpElu3SjoyMKAoTDhMztPNdIfIAOz9SECkk79RRGCrT/BJBAQwxHmjK5l+bxQW8Ca 3c0w== X-Gm-Message-State: AOJu0YxxvPuoWeHIZgYtceIR/abD8TW4f2rCjBOuNaQ4tnl7PxCX5I0X 9j2Og1EcKIEJASnW3VOSTJqK8fZNO3/IEjXf5xXXMg8EXp5IAVD15Y7uvaWMK/itGGOvH8ewZSb jqlw= X-Gm-Gg: ASbGncsAAtnsrS0ZkjRrvY7wpOA1l9V1P9rY44ktUjkstZbbxZsv27BYK8D7Fg6u3+i Xlsu89bTApqGVmU7tK5ntalB3DEoln0Q8fzv8Rd07VYTjwbqZxeHeRFX+6+Mjg/MyKOJakz3yZ5 xA6ItKWIN8hnlrc7arsXsKC7SetMpVoTqXB6SDXnj20UFeYG9wriCJaltolvvxQ4NYvxWIdaJPT u/a1UAIwKKpT027z6BpHUMBxGzO6O6NN57VkolNOchBcUw7bTb/44ZQImQd4zkA0rPwX+huhToU t8tVcdw4MqJsToosprNIPbI1A1MXU/TWJAvx0PgUtZd6HC/YuN8FO4i8sJB6EQmn1tps/7yF54S ROEr6LWy+IoYq6d104ppRy8rHDXOoO4hGZHIFP/ZcQPPoGYq8UsbeqaP9Ag7sPRMpUz7DG596XG DlPPf/VmBzlEwXXp+vMhwklxl6m1G8ZtyEUrPmBChgVgyUURenrSB1K/0bBHuqS/VLpIsOYqP4b YA= X-Google-Smtp-Source: AGHT+IF9xmFzxQZwLBEkYj2ez3GdgNLVyJjzPgIce2Fru5vDaqa29a8oz4MfyyxFjWIdDKMQqABY8Q== X-Received: by 2002:a05:600c:45cf:b0:477:8ba7:fe0a with SMTP id 5b1f17b1804b1-477c01c001bmr324387865e9.24.1764330178654; Fri, 28 Nov 2025 03:42:58 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4790adc6f7bsm154714045e9.2.2025.11.28.03.42.56 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:42:58 -0800 (PST) Message-ID: <006648b0-cf8f-4a3a-8908-78bb5f1d62c8@suse.com> Date: Fri, 28 Nov 2025 12:42:56 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 10/14] bfd/ELF: fold BFD_RELOC__COPY From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: Claudiu Zissulescu , Hans-Peter Nilsson , "H.J. Lu" , Jon Beniston , Doug Evans , Michael Eager , Chenghua Xu , "Maciej W. Rozycki" , Alexandre Oliva , Kuan-Lin Chen , Wei-Cheng Wang , Christian Svensson , Stefan Kristiansson , Stafford Horne , Surya Kumari Jangala , Peter Bergner , Andreas Krebbel , Joseph Myers Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP, UPPERCASE_50_75 autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org There's no need to have a separate reloc per arch; just like for other more or less generic ones a single one will (mostly) do. Arm64, C-Sky, and KVX - sadly - are exceptions. --- Why does the PPC assembler deal with COPY relocs? --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3333,6 +3333,7 @@ enum bfd_reloc_code_real BFD_RELOC_HI16_PLTOFF, BFD_RELOC_HI16_S_PLTOFF, BFD_RELOC_8_PLTOFF, + BFD_RELOC_COPY, BFD_RELOC_IRELATIVE, /* Size relocations. */ @@ -3405,7 +3406,6 @@ enum bfd_reloc_code_real BFD_RELOC_SPARC_PC10, BFD_RELOC_SPARC_PC22, BFD_RELOC_SPARC_WPLT30, - BFD_RELOC_SPARC_COPY, BFD_RELOC_SPARC_GLOB_DAT, BFD_RELOC_SPARC_JMP_SLOT, BFD_RELOC_SPARC_RELATIVE, @@ -3737,7 +3737,6 @@ enum bfd_reloc_code_real BFD_RELOC_MIPS_EH, /* MIPS ELF relocations (VxWorks and PLT extensions). */ - BFD_RELOC_MIPS_COPY, BFD_RELOC_MIPS_JUMP_SLOT, /* Moxie ELF relocations. */ @@ -3810,9 +3809,6 @@ enum bfd_reloc_code_real bytes in the instruction. */ BFD_RELOC_MN10300_GOT16, - /* Copy symbol at runtime. */ - BFD_RELOC_MN10300_COPY, - /* Create GOT entry. */ BFD_RELOC_MN10300_GLOB_DAT, @@ -3853,7 +3849,6 @@ enum bfd_reloc_code_real /* i386/elf relocations. */ BFD_RELOC_386_GOT32, BFD_RELOC_386_PLT32, - BFD_RELOC_386_COPY, BFD_RELOC_386_GLOB_DAT, BFD_RELOC_386_JUMP_SLOT, BFD_RELOC_386_RELATIVE, @@ -3878,7 +3873,6 @@ enum bfd_reloc_code_real /* x86-64/elf relocations. */ BFD_RELOC_X86_64_GOT32, - BFD_RELOC_X86_64_COPY, BFD_RELOC_X86_64_GLOB_DAT, BFD_RELOC_X86_64_JUMP_SLOT, BFD_RELOC_X86_64_RELATIVE, @@ -3953,7 +3947,6 @@ enum bfd_reloc_code_real BFD_RELOC_PPC_BA16, BFD_RELOC_PPC_BA16_BRTAKEN, BFD_RELOC_PPC_BA16_BRNTAKEN, - BFD_RELOC_PPC_COPY, BFD_RELOC_PPC_GLOB_DAT, BFD_RELOC_PPC_JMP_SLOT, BFD_RELOC_PPC_RELATIVE, @@ -4334,7 +4327,6 @@ enum bfd_reloc_code_real BFD_RELOC_SH_LABEL, BFD_RELOC_SH_LOOP_START, BFD_RELOC_SH_LOOP_END, - BFD_RELOC_SH_COPY, BFD_RELOC_SH_GLOB_DAT, BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, @@ -4445,7 +4437,6 @@ enum bfd_reloc_code_real BFD_RELOC_ARC_32_PCREL, BFD_RELOC_ARC_GOT32, BFD_RELOC_ARC_GOTPC32, - BFD_RELOC_ARC_COPY, BFD_RELOC_ARC_GLOB_DAT, BFD_RELOC_ARC_JMP_SLOT, BFD_RELOC_ARC_RELATIVE, @@ -4687,7 +4678,6 @@ enum bfd_reloc_code_real /* For PIC. */ BFD_RELOC_M32R_GOT24, BFD_RELOC_M32R_26_PLTREL, - BFD_RELOC_M32R_COPY, BFD_RELOC_M32R_GLOB_DAT, BFD_RELOC_M32R_JMP_SLOT, BFD_RELOC_M32R_RELATIVE, @@ -4784,7 +4774,6 @@ enum bfd_reloc_code_real BFD_RELOC_NDS32_GOT20, BFD_RELOC_NDS32_9_PLTREL, BFD_RELOC_NDS32_25_PLTREL, - BFD_RELOC_NDS32_COPY, BFD_RELOC_NDS32_GLOB_DAT, BFD_RELOC_NDS32_JMP_SLOT, BFD_RELOC_NDS32_RELATIVE, @@ -5024,7 +5013,6 @@ enum bfd_reloc_code_real BFD_RELOC_V850_32_GOT, BFD_RELOC_V850_22_PLT_PCREL, BFD_RELOC_V850_32_PLT_PCREL, - BFD_RELOC_V850_COPY, BFD_RELOC_V850_GLOB_DAT, BFD_RELOC_V850_JMP_SLOT, BFD_RELOC_V850_RELATIVE, @@ -5088,7 +5076,6 @@ enum bfd_reloc_code_real BFD_RELOC_C6000_SBR_GOT_H16_W, BFD_RELOC_C6000_DSBT_INDEX, BFD_RELOC_C6000_PREL31, - BFD_RELOC_C6000_COPY, BFD_RELOC_C6000_JUMP_SLOT, BFD_RELOC_C6000_EHTYPE, BFD_RELOC_C6000_PCR_H16, @@ -5178,7 +5165,6 @@ enum bfd_reloc_code_real BFD_RELOC_METAG_RELBRANCH_PLT, BFD_RELOC_METAG_GOTOFF, BFD_RELOC_METAG_PLT, - BFD_RELOC_METAG_COPY, BFD_RELOC_METAG_JMP_SLOT, BFD_RELOC_METAG_RELATIVE, BFD_RELOC_METAG_GLOB_DAT, @@ -5505,9 +5491,6 @@ enum bfd_reloc_code_real /* 12 bit GOT offset. */ BFD_RELOC_390_GOT12, - /* Copy symbol at runtime. */ - BFD_RELOC_390_COPY, - /* Create GOT entry. */ BFD_RELOC_390_GLOB_DAT, @@ -5753,7 +5736,6 @@ enum bfd_reloc_code_real BFD_RELOC_IA64_LTV64LSB, BFD_RELOC_IA64_IPLTMSB, BFD_RELOC_IA64_IPLTLSB, - BFD_RELOC_IA64_COPY, BFD_RELOC_IA64_LTOFF22X, BFD_RELOC_IA64_LDXMOV, BFD_RELOC_IA64_TPREL14, @@ -5975,7 +5957,6 @@ enum bfd_reloc_code_real BFD_RELOC_CRIS_UNSIGNED_4, /* Relocs used in ELF shared libraries for CRIS. */ - BFD_RELOC_CRIS_COPY, BFD_RELOC_CRIS_GLOB_DAT, BFD_RELOC_CRIS_JUMP_SLOT, BFD_RELOC_CRIS_RELATIVE, @@ -6031,7 +6012,6 @@ enum bfd_reloc_code_real BFD_RELOC_OR1K_PLT26, BFD_RELOC_OR1K_PLTA26, BFD_RELOC_OR1K_GOTOFF_SLO16, - BFD_RELOC_OR1K_COPY, BFD_RELOC_OR1K_GLOB_DAT, BFD_RELOC_OR1K_JMP_SLOT, BFD_RELOC_OR1K_RELATIVE, @@ -6310,7 +6290,6 @@ enum bfd_reloc_code_real BFD_RELOC_LM32_16_GOT, BFD_RELOC_LM32_GOTOFF_HI16, BFD_RELOC_LM32_GOTOFF_LO16, - BFD_RELOC_LM32_COPY, BFD_RELOC_LM32_GLOB_DAT, BFD_RELOC_LM32_JMP_SLOT, BFD_RELOC_LM32_RELATIVE, @@ -6421,10 +6400,6 @@ enum bfd_reloc_code_real _GLOBAL_OFFSET_TABLE_. */ BFD_RELOC_MICROBLAZE_32_GOTOFF, - /* This is used to tell the dynamic linker to copy the value out of - the dynamic object into the runtime process image. */ - BFD_RELOC_MICROBLAZE_COPY, - /* Unused Reloc. */ BFD_RELOC_MICROBLAZE_64_TLS, @@ -7011,7 +6986,6 @@ enum bfd_reloc_code_real BFD_RELOC_AARCH64_BRANCH9, /* Tilera TILEPro Relocations. */ - BFD_RELOC_TILEPRO_COPY, BFD_RELOC_TILEPRO_GLOB_DAT, BFD_RELOC_TILEPRO_JMP_SLOT, BFD_RELOC_TILEPRO_RELATIVE, @@ -7099,7 +7073,6 @@ enum bfd_reloc_code_real BFD_RELOC_TILEGX_HW0_LAST, BFD_RELOC_TILEGX_HW1_LAST, BFD_RELOC_TILEGX_HW2_LAST, - BFD_RELOC_TILEGX_COPY, BFD_RELOC_TILEGX_GLOB_DAT, BFD_RELOC_TILEGX_JMP_SLOT, BFD_RELOC_TILEGX_RELATIVE, @@ -7246,7 +7219,6 @@ enum bfd_reloc_code_real BFD_RELOC_WASM32_LEB128_PLT, BFD_RELOC_WASM32_PLT_INDEX, BFD_RELOC_WASM32_ABS32_CODE, - BFD_RELOC_WASM32_COPY, BFD_RELOC_WASM32_CODE_POINTER, BFD_RELOC_WASM32_INDEX, BFD_RELOC_WASM32_PLT_SIG, --- a/bfd/elf-m10300.c +++ b/bfd/elf-m10300.c @@ -662,7 +662,7 @@ static const struct mn10300_reloc_map mn { BFD_RELOC_MN10300_GOT32, R_MN10300_GOT32 }, { BFD_RELOC_MN10300_GOT24, R_MN10300_GOT24 }, { BFD_RELOC_MN10300_GOT16, R_MN10300_GOT16 }, - { BFD_RELOC_MN10300_COPY, R_MN10300_COPY }, + { BFD_RELOC_COPY, R_MN10300_COPY }, { BFD_RELOC_MN10300_GLOB_DAT, R_MN10300_GLOB_DAT }, { BFD_RELOC_MN10300_JMP_SLOT, R_MN10300_JMP_SLOT }, { BFD_RELOC_MN10300_RELATIVE, R_MN10300_RELATIVE }, --- a/bfd/elf32-arc.c +++ b/bfd/elf32-arc.c @@ -385,6 +385,7 @@ arc_elf_link_hash_table_create (bfd *abf #define BFD_RELOC_ARC_32 BFD_RELOC_32 #define BFD_RELOC_ARC_PC32 BFD_RELOC_32_PCREL #define BFD_RELOC_ARC_PLT32 BFD_RELOC_32_PLT_PCREL +#define BFD_RELOC_ARC_COPY BFD_RELOC_COPY static const struct arc_reloc_map arc_reloc_map[] = { --- a/bfd/elf32-cris.c +++ b/bfd/elf32-cris.c @@ -398,7 +398,7 @@ static const struct cris_reloc_map cris_ { BFD_RELOC_32_PCREL, R_CRIS_32_PCREL }, { BFD_RELOC_VTABLE_INHERIT, R_CRIS_GNU_VTINHERIT }, { BFD_RELOC_VTABLE_ENTRY, R_CRIS_GNU_VTENTRY }, - { BFD_RELOC_CRIS_COPY, R_CRIS_COPY }, + { BFD_RELOC_COPY, R_CRIS_COPY }, { BFD_RELOC_CRIS_GLOB_DAT, R_CRIS_GLOB_DAT }, { BFD_RELOC_CRIS_JUMP_SLOT, R_CRIS_JUMP_SLOT }, { BFD_RELOC_CRIS_RELATIVE, R_CRIS_RELATIVE }, --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -216,8 +216,8 @@ elf_i386_reloc_type_lookup (bfd *abfd, TRACE ("BFD_RELOC_386_PLT32"); return &elf_howto_table[R_386_PLT32]; - case BFD_RELOC_386_COPY: - TRACE ("BFD_RELOC_386_COPY"); + case BFD_RELOC_COPY: + TRACE ("BFD_RELOC_COPY"); return &elf_howto_table[R_386_COPY]; case BFD_RELOC_386_GLOB_DAT: --- a/bfd/elf32-lm32.c +++ b/bfd/elf32-lm32.c @@ -444,7 +444,7 @@ static const struct lm32_reloc_map lm32_ { BFD_RELOC_LM32_16_GOT, R_LM32_16_GOT }, { BFD_RELOC_LM32_GOTOFF_HI16, R_LM32_GOTOFF_HI16 }, { BFD_RELOC_LM32_GOTOFF_LO16, R_LM32_GOTOFF_LO16 }, - { BFD_RELOC_LM32_COPY, R_LM32_COPY }, + { BFD_RELOC_COPY, R_LM32_COPY }, { BFD_RELOC_LM32_GLOB_DAT, R_LM32_GLOB_DAT }, { BFD_RELOC_LM32_JMP_SLOT, R_LM32_JMP_SLOT }, { BFD_RELOC_LM32_RELATIVE, R_LM32_RELATIVE }, --- a/bfd/elf32-m32r.c +++ b/bfd/elf32-m32r.c @@ -1211,7 +1211,7 @@ static const struct m32r_reloc_map m32r_ { BFD_RELOC_M32R_GOT24, R_M32R_GOT24 }, { BFD_RELOC_M32R_26_PLTREL, R_M32R_26_PLTREL }, - { BFD_RELOC_M32R_COPY, R_M32R_COPY }, + { BFD_RELOC_COPY, R_M32R_COPY }, { BFD_RELOC_M32R_GLOB_DAT, R_M32R_GLOB_DAT }, { BFD_RELOC_M32R_JMP_SLOT, R_M32R_JMP_SLOT }, { BFD_RELOC_M32R_RELATIVE, R_M32R_RELATIVE }, --- a/bfd/elf32-metag.c +++ b/bfd/elf32-metag.c @@ -720,7 +720,7 @@ static const struct metag_reloc_map meta { BFD_RELOC_METAG_RELBRANCH_PLT, R_METAG_RELBRANCH_PLT }, { BFD_RELOC_METAG_GOTOFF, R_METAG_GOTOFF }, { BFD_RELOC_METAG_PLT, R_METAG_PLT }, - { BFD_RELOC_METAG_COPY, R_METAG_COPY }, + { BFD_RELOC_COPY, R_METAG_COPY }, { BFD_RELOC_METAG_JMP_SLOT, R_METAG_JMP_SLOT }, { BFD_RELOC_METAG_RELATIVE, R_METAG_RELATIVE }, { BFD_RELOC_METAG_GLOB_DAT, R_METAG_GLOB_DAT }, --- a/bfd/elf32-microblaze.c +++ b/bfd/elf32-microblaze.c @@ -660,7 +660,7 @@ microblaze_elf_reloc_type_lookup (bfd * case BFD_RELOC_MICROBLAZE_64_TLSTPREL: microblaze_reloc = R_MICROBLAZE_TLSTPREL32; break; - case BFD_RELOC_MICROBLAZE_COPY: + case BFD_RELOC_COPY: microblaze_reloc = R_MICROBLAZE_COPY; break; default: --- a/bfd/elf32-mips.c +++ b/bfd/elf32-mips.c @@ -3589,7 +3589,7 @@ mips_elf32_reloc_type_lookup (bfd *abfd, return &elf_mips_gnu_vtentry_howto; case BFD_RELOC_32_PCREL: return &elf_mips_gnu_pcrel32; - case BFD_RELOC_MIPS_COPY: + case BFD_RELOC_COPY: return &elf_mips_copy_howto; case BFD_RELOC_MIPS_JUMP_SLOT: return &elf_mips_jump_slot_howto; --- a/bfd/elf32-nds32.c +++ b/bfd/elf32-nds32.c @@ -3113,7 +3113,7 @@ static const struct nds32_reloc_map_entr {BFD_RELOC_NDS32_GOT20, R_NDS32_GOT20}, {BFD_RELOC_NDS32_9_PLTREL, R_NDS32_9_PLTREL}, {BFD_RELOC_NDS32_25_PLTREL, R_NDS32_25_PLTREL}, - {BFD_RELOC_NDS32_COPY, R_NDS32_COPY}, + {BFD_RELOC_COPY, R_NDS32_COPY}, {BFD_RELOC_NDS32_GLOB_DAT, R_NDS32_GLOB_DAT}, {BFD_RELOC_NDS32_JMP_SLOT, R_NDS32_JMP_SLOT}, {BFD_RELOC_NDS32_RELATIVE, R_NDS32_RELATIVE}, --- a/bfd/elf32-or1k.c +++ b/bfd/elf32-or1k.c @@ -876,7 +876,7 @@ static const struct or1k_reloc_map or1k_ { BFD_RELOC_OR1K_GOT16, R_OR1K_GOT16 }, { BFD_RELOC_OR1K_PLT26, R_OR1K_PLT26 }, { BFD_RELOC_OR1K_GLOB_DAT, R_OR1K_GLOB_DAT }, - { BFD_RELOC_OR1K_COPY, R_OR1K_COPY }, + { BFD_RELOC_COPY, R_OR1K_COPY }, { BFD_RELOC_OR1K_JMP_SLOT, R_OR1K_JMP_SLOT }, { BFD_RELOC_OR1K_RELATIVE, R_OR1K_RELATIVE }, { BFD_RELOC_OR1K_TLS_GD_HI16, R_OR1K_TLS_GD_HI16 }, --- a/bfd/elf32-ppc.c +++ b/bfd/elf32-ppc.c @@ -753,7 +753,7 @@ ppc_elf_reloc_type_lookup (bfd *abfd ATT case BFD_RELOC_HI16_GOTOFF: r = R_PPC_GOT16_HI; break; case BFD_RELOC_HI16_S_GOTOFF: r = R_PPC_GOT16_HA; break; case BFD_RELOC_24_PLT_PCREL: r = R_PPC_PLTREL24; break; - case BFD_RELOC_PPC_COPY: r = R_PPC_COPY; break; + case BFD_RELOC_COPY: r = R_PPC_COPY; break; case BFD_RELOC_PPC_GLOB_DAT: r = R_PPC_GLOB_DAT; break; case BFD_RELOC_PPC_LOCAL24PC: r = R_PPC_LOCAL24PC; break; case BFD_RELOC_32_PCREL: r = R_PPC_REL32; break; --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -203,7 +203,7 @@ elf_s390_reloc_type_lookup (bfd *abfd AT return &elf_howto_table[(int) R_390_GOT32]; case BFD_RELOC_32_PLT_PCREL: return &elf_howto_table[(int) R_390_PLT32]; - case BFD_RELOC_390_COPY: + case BFD_RELOC_COPY: return &elf_howto_table[(int) R_390_COPY]; case BFD_RELOC_390_GLOB_DAT: return &elf_howto_table[(int) R_390_GLOB_DAT]; --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -355,7 +355,7 @@ static const struct elf_reloc_map sh_rel { BFD_RELOC_SH_TLS_TPOFF32, R_SH_TLS_TPOFF32 }, { BFD_RELOC_32_GOT_PCREL, R_SH_GOT32 }, { BFD_RELOC_32_PLT_PCREL, R_SH_PLT32 }, - { BFD_RELOC_SH_COPY, R_SH_COPY }, + { BFD_RELOC_COPY, R_SH_COPY }, { BFD_RELOC_SH_GLOB_DAT, R_SH_GLOB_DAT }, { BFD_RELOC_SH_JMP_SLOT, R_SH_JMP_SLOT }, { BFD_RELOC_SH_RELATIVE, R_SH_RELATIVE }, --- a/bfd/elf32-tic6x.c +++ b/bfd/elf32-tic6x.c @@ -1422,7 +1422,7 @@ static const tic6x_reloc_map elf32_tic6x { BFD_RELOC_C6000_SBR_GOT_H16_W, R_C6000_SBR_GOT_H16_W }, { BFD_RELOC_C6000_DSBT_INDEX, R_C6000_DSBT_INDEX }, { BFD_RELOC_C6000_PREL31, R_C6000_PREL31 }, - { BFD_RELOC_C6000_COPY, R_C6000_COPY }, + { BFD_RELOC_COPY, R_C6000_COPY }, { BFD_RELOC_C6000_JUMP_SLOT, R_C6000_JUMP_SLOT }, { BFD_RELOC_C6000_EHTYPE, R_C6000_EHTYPE }, { BFD_RELOC_C6000_PCR_H16, R_C6000_PCR_H16 }, --- a/bfd/elf32-tilepro.c +++ b/bfd/elf32-tilepro.c @@ -583,7 +583,7 @@ static const reloc_map tilepro_reloc_map TH_REMAP (BFD_RELOC_HI16_S, R_TILEPRO_HA16) /* Custom relocations. */ - TH_REMAP (BFD_RELOC_TILEPRO_COPY, R_TILEPRO_COPY) + TH_REMAP (BFD_RELOC_COPY, R_TILEPRO_COPY) TH_REMAP (BFD_RELOC_TILEPRO_GLOB_DAT, R_TILEPRO_GLOB_DAT) TH_REMAP (BFD_RELOC_TILEPRO_JMP_SLOT, R_TILEPRO_JMP_SLOT) TH_REMAP (BFD_RELOC_TILEPRO_RELATIVE, R_TILEPRO_RELATIVE) --- a/bfd/elf32-v850.c +++ b/bfd/elf32-v850.c @@ -1736,7 +1736,7 @@ static const struct v850_elf_reloc_map v { BFD_RELOC_V850_32_GOT, R_V850_32_GOT }, { BFD_RELOC_V850_22_PLT_PCREL, R_V850_22_PLT }, { BFD_RELOC_V850_32_PLT_PCREL, R_V850_32_PLT }, - { BFD_RELOC_V850_COPY, R_V850_COPY }, + { BFD_RELOC_COPY, R_V850_COPY }, { BFD_RELOC_V850_GLOB_DAT, R_V850_GLOB_DAT }, { BFD_RELOC_V850_JMP_SLOT, R_V850_JMP_SLOT }, { BFD_RELOC_V850_RELATIVE, R_V850_RELATIVE }, --- a/bfd/elf64-mips.c +++ b/bfd/elf64-mips.c @@ -3850,7 +3850,7 @@ bfd_elf64_bfd_reloc_type_lookup (bfd *ab return &elf_mips_gnu_pcrel32; case BFD_RELOC_MIPS_EH: return &elf_mips_eh_howto; - case BFD_RELOC_MIPS_COPY: + case BFD_RELOC_COPY: return &elf_mips_copy_howto; case BFD_RELOC_MIPS_JUMP_SLOT: return &elf_mips_jump_slot_howto; --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -1077,7 +1077,7 @@ ppc64_elf_reloc_type_lookup (bfd *abfd, break; case BFD_RELOC_HI16_S_GOTOFF: r = R_PPC64_GOT16_HA; break; - case BFD_RELOC_PPC_COPY: r = R_PPC64_COPY; + case BFD_RELOC_COPY: r = R_PPC64_COPY; break; case BFD_RELOC_PPC_GLOB_DAT: r = R_PPC64_GLOB_DAT; break; --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -217,7 +217,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_GOT32]; case BFD_RELOC_32_PLT_PCREL: return &elf_howto_table[(int) R_390_PLT32]; - case BFD_RELOC_390_COPY: + case BFD_RELOC_COPY: return &elf_howto_table[(int) R_390_COPY]; case BFD_RELOC_390_GLOB_DAT: return &elf_howto_table[(int) R_390_GLOB_DAT]; --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -234,7 +234,7 @@ static const struct elf_reloc_map x86_64 { BFD_RELOC_32_PCREL, R_X86_64_PC32, }, { BFD_RELOC_X86_64_GOT32, R_X86_64_GOT32,}, { BFD_RELOC_32_PLT_PCREL, R_X86_64_PLT32,}, - { BFD_RELOC_X86_64_COPY, R_X86_64_COPY, }, + { BFD_RELOC_COPY, R_X86_64_COPY, }, { BFD_RELOC_X86_64_GLOB_DAT, R_X86_64_GLOB_DAT, }, { BFD_RELOC_X86_64_JUMP_SLOT, R_X86_64_JUMP_SLOT, }, { BFD_RELOC_X86_64_RELATIVE, R_X86_64_RELATIVE, }, --- a/bfd/elfn32-mips.c +++ b/bfd/elfn32-mips.c @@ -3685,7 +3685,7 @@ bfd_elf32_bfd_reloc_type_lookup (bfd *ab return &elf_mips_gnu_pcrel32; case BFD_RELOC_MIPS_EH: return &elf_mips_eh_howto; - case BFD_RELOC_MIPS_COPY: + case BFD_RELOC_COPY: return &elf_mips_copy_howto; case BFD_RELOC_MIPS_JUMP_SLOT: return &elf_mips_jump_slot_howto; --- a/bfd/elfxx-ia64.c +++ b/bfd/elfxx-ia64.c @@ -295,7 +295,7 @@ ia64_elf_reloc_type_lookup (bfd *abfd, case BFD_RELOC_IA64_IPLTMSB: rtype = R_IA64_IPLTMSB; break; case BFD_RELOC_IA64_IPLTLSB: rtype = R_IA64_IPLTLSB; break; - case BFD_RELOC_IA64_COPY: rtype = R_IA64_COPY; break; + case BFD_RELOC_COPY: rtype = R_IA64_COPY; break; case BFD_RELOC_IA64_LTOFF22X: rtype = R_IA64_LTOFF22X; break; case BFD_RELOC_IA64_LDXMOV: rtype = R_IA64_LDXMOV; break; --- a/bfd/elfxx-sparc.c +++ b/bfd/elfxx-sparc.c @@ -372,7 +372,7 @@ _bfd_sparc_elf_reloc_type_lookup (bfd *a case BFD_RELOC_SPARC_WPLT30: return &_bfd_sparc_elf_howto_table[R_SPARC_WPLT30]; - case BFD_RELOC_SPARC_COPY: + case BFD_RELOC_COPY: return &_bfd_sparc_elf_howto_table[R_SPARC_COPY]; case BFD_RELOC_SPARC_GLOB_DAT: --- a/bfd/elfxx-tilegx.c +++ b/bfd/elfxx-tilegx.c @@ -650,6 +650,7 @@ static const reloc_map tilegx_reloc_map TH_REMAP (BFD_RELOC_32_PCREL, R_TILEGX_32_PCREL) TH_REMAP (BFD_RELOC_16_PCREL, R_TILEGX_16_PCREL) TH_REMAP (BFD_RELOC_8_PCREL, R_TILEGX_8_PCREL) + TH_REMAP (BFD_RELOC_COPY, R_TILEGX_COPY) #define SIMPLE_REMAP(t) TH_REMAP (BFD_RELOC_##t, R_##t) @@ -661,7 +662,6 @@ static const reloc_map tilegx_reloc_map SIMPLE_REMAP (TILEGX_HW0_LAST) SIMPLE_REMAP (TILEGX_HW1_LAST) SIMPLE_REMAP (TILEGX_HW2_LAST) - SIMPLE_REMAP (TILEGX_COPY) SIMPLE_REMAP (TILEGX_GLOB_DAT) SIMPLE_REMAP (TILEGX_JMP_SLOT) SIMPLE_REMAP (TILEGX_RELATIVE) --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1099,6 +1099,7 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_HI16_PLTOFF", "BFD_RELOC_HI16_S_PLTOFF", "BFD_RELOC_8_PLTOFF", + "BFD_RELOC_COPY", "BFD_RELOC_IRELATIVE", "BFD_RELOC_SIZE32", "BFD_RELOC_SIZE64", @@ -1145,7 +1146,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SPARC_PC10", "BFD_RELOC_SPARC_PC22", "BFD_RELOC_SPARC_WPLT30", - "BFD_RELOC_SPARC_COPY", "BFD_RELOC_SPARC_GLOB_DAT", "BFD_RELOC_SPARC_JMP_SLOT", "BFD_RELOC_SPARC_RELATIVE", @@ -1345,7 +1345,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MIPS_TLS_TPREL_LO16", "BFD_RELOC_MICROMIPS_TLS_TPREL_LO16", "BFD_RELOC_MIPS_EH", - "BFD_RELOC_MIPS_COPY", "BFD_RELOC_MIPS_JUMP_SLOT", "BFD_RELOC_MOXIE_10_PCREL", "BFD_RELOC_FT32_10", @@ -1400,7 +1399,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_GOT32", "BFD_RELOC_MN10300_GOT24", "BFD_RELOC_MN10300_GOT16", - "BFD_RELOC_MN10300_COPY", "BFD_RELOC_MN10300_GLOB_DAT", "BFD_RELOC_MN10300_JMP_SLOT", "BFD_RELOC_MN10300_RELATIVE", @@ -1419,7 +1417,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_16_PCREL", "BFD_RELOC_386_GOT32", "BFD_RELOC_386_PLT32", - "BFD_RELOC_386_COPY", "BFD_RELOC_386_GLOB_DAT", "BFD_RELOC_386_JUMP_SLOT", "BFD_RELOC_386_RELATIVE", @@ -1442,7 +1439,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_386_TLS_DESC", "BFD_RELOC_386_GOT32X", "BFD_RELOC_X86_64_GOT32", - "BFD_RELOC_X86_64_COPY", "BFD_RELOC_X86_64_GLOB_DAT", "BFD_RELOC_X86_64_JUMP_SLOT", "BFD_RELOC_X86_64_RELATIVE", @@ -1509,7 +1505,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_PPC_BA16", "BFD_RELOC_PPC_BA16_BRTAKEN", "BFD_RELOC_PPC_BA16_BRNTAKEN", - "BFD_RELOC_PPC_COPY", "BFD_RELOC_PPC_GLOB_DAT", "BFD_RELOC_PPC_JMP_SLOT", "BFD_RELOC_PPC_RELATIVE", @@ -1814,7 +1809,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SH_LABEL", "BFD_RELOC_SH_LOOP_START", "BFD_RELOC_SH_LOOP_END", - "BFD_RELOC_SH_COPY", "BFD_RELOC_SH_GLOB_DAT", "BFD_RELOC_SH_JMP_SLOT", "BFD_RELOC_SH_RELATIVE", @@ -1923,7 +1917,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARC_32_PCREL", "BFD_RELOC_ARC_GOT32", "BFD_RELOC_ARC_GOTPC32", - "BFD_RELOC_ARC_COPY", "BFD_RELOC_ARC_GLOB_DAT", "BFD_RELOC_ARC_JMP_SLOT", "BFD_RELOC_ARC_RELATIVE", @@ -2024,7 +2017,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_M32R_SDA16", "BFD_RELOC_M32R_GOT24", "BFD_RELOC_M32R_26_PLTREL", - "BFD_RELOC_M32R_COPY", "BFD_RELOC_M32R_GLOB_DAT", "BFD_RELOC_M32R_JMP_SLOT", "BFD_RELOC_M32R_RELATIVE", @@ -2062,7 +2054,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_NDS32_GOT20", "BFD_RELOC_NDS32_9_PLTREL", "BFD_RELOC_NDS32_25_PLTREL", - "BFD_RELOC_NDS32_COPY", "BFD_RELOC_NDS32_GLOB_DAT", "BFD_RELOC_NDS32_JMP_SLOT", "BFD_RELOC_NDS32_RELATIVE", @@ -2204,7 +2195,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_V850_32_GOT", "BFD_RELOC_V850_22_PLT_PCREL", "BFD_RELOC_V850_32_PLT_PCREL", - "BFD_RELOC_V850_COPY", "BFD_RELOC_V850_GLOB_DAT", "BFD_RELOC_V850_JMP_SLOT", "BFD_RELOC_V850_RELATIVE", @@ -2240,7 +2230,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_C6000_SBR_GOT_H16_W", "BFD_RELOC_C6000_DSBT_INDEX", "BFD_RELOC_C6000_PREL31", - "BFD_RELOC_C6000_COPY", "BFD_RELOC_C6000_JUMP_SLOT", "BFD_RELOC_C6000_EHTYPE", "BFD_RELOC_C6000_PCR_H16", @@ -2301,7 +2290,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_METAG_RELBRANCH_PLT", "BFD_RELOC_METAG_GOTOFF", "BFD_RELOC_METAG_PLT", - "BFD_RELOC_METAG_COPY", "BFD_RELOC_METAG_JMP_SLOT", "BFD_RELOC_METAG_RELATIVE", "BFD_RELOC_METAG_GLOB_DAT", @@ -2488,7 +2476,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_RX_RELAX", "BFD_RELOC_390_12", "BFD_RELOC_390_GOT12", - "BFD_RELOC_390_COPY", "BFD_RELOC_390_GLOB_DAT", "BFD_RELOC_390_JMP_SLOT", "BFD_RELOC_390_RELATIVE", @@ -2624,7 +2611,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_IA64_LTV64LSB", "BFD_RELOC_IA64_IPLTMSB", "BFD_RELOC_IA64_IPLTLSB", - "BFD_RELOC_IA64_COPY", "BFD_RELOC_IA64_LTOFF22X", "BFD_RELOC_IA64_LDXMOV", "BFD_RELOC_IA64_TPREL14", @@ -2735,7 +2721,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_CRIS_UNSIGNED_16", "BFD_RELOC_CRIS_LAPCQ_OFFSET", "BFD_RELOC_CRIS_UNSIGNED_4", - "BFD_RELOC_CRIS_COPY", "BFD_RELOC_CRIS_GLOB_DAT", "BFD_RELOC_CRIS_JUMP_SLOT", "BFD_RELOC_CRIS_RELATIVE", @@ -2772,7 +2757,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_OR1K_PLT26", "BFD_RELOC_OR1K_PLTA26", "BFD_RELOC_OR1K_GOTOFF_SLO16", - "BFD_RELOC_OR1K_COPY", "BFD_RELOC_OR1K_GLOB_DAT", "BFD_RELOC_OR1K_JMP_SLOT", "BFD_RELOC_OR1K_RELATIVE", @@ -2929,7 +2913,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_LM32_16_GOT", "BFD_RELOC_LM32_GOTOFF_HI16", "BFD_RELOC_LM32_GOTOFF_LO16", - "BFD_RELOC_LM32_COPY", "BFD_RELOC_LM32_GLOB_DAT", "BFD_RELOC_LM32_JMP_SLOT", "BFD_RELOC_LM32_RELATIVE", @@ -2962,7 +2945,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MICROBLAZE_64_PLT", "BFD_RELOC_MICROBLAZE_64_GOTOFF", "BFD_RELOC_MICROBLAZE_32_GOTOFF", - "BFD_RELOC_MICROBLAZE_COPY", "BFD_RELOC_MICROBLAZE_64_TLS", "BFD_RELOC_MICROBLAZE_64_TLSGD", "BFD_RELOC_MICROBLAZE_64_TLSLD", @@ -3184,7 +3166,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC", "BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC", "BFD_RELOC_AARCH64_BRANCH9", - "BFD_RELOC_TILEPRO_COPY", "BFD_RELOC_TILEPRO_GLOB_DAT", "BFD_RELOC_TILEPRO_JMP_SLOT", "BFD_RELOC_TILEPRO_RELATIVE", @@ -3270,7 +3251,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_TILEGX_HW0_LAST", "BFD_RELOC_TILEGX_HW1_LAST", "BFD_RELOC_TILEGX_HW2_LAST", - "BFD_RELOC_TILEGX_COPY", "BFD_RELOC_TILEGX_GLOB_DAT", "BFD_RELOC_TILEGX_JMP_SLOT", "BFD_RELOC_TILEGX_RELATIVE", @@ -3396,7 +3376,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_WASM32_LEB128_PLT", "BFD_RELOC_WASM32_PLT_INDEX", "BFD_RELOC_WASM32_ABS32_CODE", - "BFD_RELOC_WASM32_COPY", "BFD_RELOC_WASM32_CODE_POINTER", "BFD_RELOC_WASM32_INDEX", "BFD_RELOC_WASM32_PLT_SIG", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -1471,6 +1471,8 @@ ENUMX ENUMX BFD_RELOC_8_PLTOFF ENUMX + BFD_RELOC_COPY +ENUMX BFD_RELOC_IRELATIVE ENUMDOC For ELF. @@ -1596,8 +1598,6 @@ ENUMX ENUMX BFD_RELOC_SPARC_WPLT30 ENUMX - BFD_RELOC_SPARC_COPY -ENUMX BFD_RELOC_SPARC_GLOB_DAT ENUMX BFD_RELOC_SPARC_JMP_SLOT @@ -2166,8 +2166,6 @@ ENUMDOC MIPS ELF relocations. ENUM - BFD_RELOC_MIPS_COPY -ENUMX BFD_RELOC_MIPS_JUMP_SLOT ENUMDOC MIPS ELF relocations (VxWorks and PLT extensions). @@ -2299,10 +2297,6 @@ ENUMDOC This is a 16bit GOT-relative reloc for the mn10300, offset by two bytes in the instruction. ENUM - BFD_RELOC_MN10300_COPY -ENUMDOC - Copy symbol at runtime. -ENUM BFD_RELOC_MN10300_GLOB_DAT ENUMDOC Create GOT entry. @@ -2361,8 +2355,6 @@ ENUM ENUMX BFD_RELOC_386_PLT32 ENUMX - BFD_RELOC_386_COPY -ENUMX BFD_RELOC_386_GLOB_DAT ENUMX BFD_RELOC_386_JUMP_SLOT @@ -2410,8 +2402,6 @@ ENUMDOC ENUM BFD_RELOC_X86_64_GOT32 ENUMX - BFD_RELOC_X86_64_COPY -ENUMX BFD_RELOC_X86_64_GLOB_DAT ENUMX BFD_RELOC_X86_64_JUMP_SLOT @@ -2556,8 +2546,6 @@ ENUMX ENUMX BFD_RELOC_PPC_BA16_BRNTAKEN ENUMX - BFD_RELOC_PPC_COPY -ENUMX BFD_RELOC_PPC_GLOB_DAT ENUMX BFD_RELOC_PPC_JMP_SLOT @@ -3263,8 +3251,6 @@ ENUMX ENUMX BFD_RELOC_SH_LOOP_END ENUMX - BFD_RELOC_SH_COPY -ENUMX BFD_RELOC_SH_GLOB_DAT ENUMX BFD_RELOC_SH_JMP_SLOT @@ -3484,8 +3470,6 @@ ENUMX ENUMX BFD_RELOC_ARC_GOTPC32 ENUMX - BFD_RELOC_ARC_COPY -ENUMX BFD_RELOC_ARC_GLOB_DAT ENUMX BFD_RELOC_ARC_JMP_SLOT @@ -3833,8 +3817,6 @@ ENUM ENUMX BFD_RELOC_M32R_26_PLTREL ENUMX - BFD_RELOC_M32R_COPY -ENUMX BFD_RELOC_M32R_GLOB_DAT ENUMX BFD_RELOC_M32R_JMP_SLOT @@ -3970,8 +3952,6 @@ ENUMX ENUMX BFD_RELOC_NDS32_25_PLTREL ENUMX - BFD_RELOC_NDS32_COPY -ENUMX BFD_RELOC_NDS32_GLOB_DAT ENUMX BFD_RELOC_NDS32_JMP_SLOT @@ -4355,8 +4335,6 @@ ENUMX ENUMX BFD_RELOC_V850_32_PLT_PCREL ENUMX - BFD_RELOC_V850_COPY -ENUMX BFD_RELOC_V850_GLOB_DAT ENUMX BFD_RELOC_V850_JMP_SLOT @@ -4462,8 +4440,6 @@ ENUMX ENUMX BFD_RELOC_C6000_PREL31 ENUMX - BFD_RELOC_C6000_COPY -ENUMX BFD_RELOC_C6000_JUMP_SLOT ENUMX BFD_RELOC_C6000_EHTYPE @@ -4617,8 +4593,6 @@ ENUMX ENUMX BFD_RELOC_METAG_PLT ENUMX - BFD_RELOC_METAG_COPY -ENUMX BFD_RELOC_METAG_JMP_SLOT ENUMX BFD_RELOC_METAG_RELATIVE @@ -5138,10 +5112,6 @@ ENUM ENUMDOC 12 bit GOT offset. ENUM - BFD_RELOC_390_COPY -ENUMDOC - Copy symbol at runtime. -ENUM BFD_RELOC_390_GLOB_DAT ENUMDOC Create GOT entry. @@ -5527,8 +5497,6 @@ ENUMX ENUMX BFD_RELOC_IA64_IPLTLSB ENUMX - BFD_RELOC_IA64_COPY -ENUMX BFD_RELOC_IA64_LTOFF22X ENUMX BFD_RELOC_IA64_LDXMOV @@ -5864,8 +5832,6 @@ ENUMDOC These relocs are only used within the CRIS assembler. They are not (at present) written to any object files. ENUM - BFD_RELOC_CRIS_COPY -ENUMX BFD_RELOC_CRIS_GLOB_DAT ENUMX BFD_RELOC_CRIS_JUMP_SLOT @@ -5959,8 +5925,6 @@ ENUMX ENUMX BFD_RELOC_OR1K_GOTOFF_SLO16 ENUMX - BFD_RELOC_OR1K_COPY -ENUMX BFD_RELOC_OR1K_GLOB_DAT ENUMX BFD_RELOC_OR1K_JMP_SLOT @@ -6407,8 +6371,6 @@ ENUMX ENUMX BFD_RELOC_LM32_GOTOFF_LO16 ENUMX - BFD_RELOC_LM32_COPY -ENUMX BFD_RELOC_LM32_GLOB_DAT ENUMX BFD_RELOC_LM32_JMP_SLOT @@ -6557,11 +6519,6 @@ ENUMDOC a word. The relocation is relative offset from _GLOBAL_OFFSET_TABLE_. ENUM - BFD_RELOC_MICROBLAZE_COPY -ENUMDOC - This is used to tell the dynamic linker to copy the value out of - the dynamic object into the runtime process image. -ENUM BFD_RELOC_MICROBLAZE_64_TLS ENUMDOC Unused Reloc. @@ -7368,8 +7325,6 @@ ENUMDOC The lowest two bits must be zero and are not stored in the instruction, giving an 11 bit signed byte offset. ENUM - BFD_RELOC_TILEPRO_COPY -ENUMX BFD_RELOC_TILEPRO_GLOB_DAT ENUMX BFD_RELOC_TILEPRO_JMP_SLOT @@ -7542,8 +7497,6 @@ ENUMX ENUMX BFD_RELOC_TILEGX_HW2_LAST ENUMX - BFD_RELOC_TILEGX_COPY -ENUMX BFD_RELOC_TILEGX_GLOB_DAT ENUMX BFD_RELOC_TILEGX_JMP_SLOT @@ -7819,8 +7772,6 @@ ENUMX ENUMX BFD_RELOC_WASM32_ABS32_CODE ENUMX - BFD_RELOC_WASM32_COPY -ENUMX BFD_RELOC_WASM32_CODE_POINTER ENUMX BFD_RELOC_WASM32_INDEX --- a/gas/config/tc-ppc.c +++ b/gas/config/tc-ppc.c @@ -2088,7 +2088,7 @@ ppc_elf_suffix (char **str_p, expression MAP ("plt@l", BFD_RELOC_LO16_PLTOFF), MAP ("plt@h", BFD_RELOC_HI16_PLTOFF), MAP ("plt@ha", BFD_RELOC_HI16_S_PLTOFF), - MAP ("copy", BFD_RELOC_PPC_COPY), + MAP ("copy", BFD_RELOC_COPY), MAP ("globdat", BFD_RELOC_PPC_GLOB_DAT), MAP ("sectoff", BFD_RELOC_16_BASEREL), MAP ("sectoff@l", BFD_RELOC_LO16_BASEREL), @@ -3164,7 +3164,7 @@ fixup_size (bfd_reloc_code_real_type rel #ifndef OBJ_XCOFF case BFD_RELOC_CTOR: #endif - case BFD_RELOC_PPC_COPY: + case BFD_RELOC_COPY: case BFD_RELOC_PPC_DTPMOD: case BFD_RELOC_PPC_DTPREL: case BFD_RELOC_PPC_GLOB_DAT: @@ -7312,7 +7312,7 @@ md_apply_fix (fixS *fixP, valueT *valP, case BFD_RELOC_PPC_DTPMOD: case BFD_RELOC_PPC_TPREL: case BFD_RELOC_PPC_DTPREL: - case BFD_RELOC_PPC_COPY: + case BFD_RELOC_COPY: case BFD_RELOC_PPC_GLOB_DAT: case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_PPC_EMB_NADDR32: @@ -7479,7 +7479,7 @@ md_apply_fix (fixS *fixP, valueT *valP, case BFD_RELOC_LO16_PLTOFF: case BFD_RELOC_HI16_PLTOFF: case BFD_RELOC_HI16_S_PLTOFF: - case BFD_RELOC_PPC_COPY: + case BFD_RELOC_COPY: case BFD_RELOC_PPC_GLOB_DAT: case BFD_RELOC_16_BASEREL: case BFD_RELOC_LO16_BASEREL: --- a/include/elf/cris.h +++ b/include/elf/cris.h @@ -40,7 +40,7 @@ START_RELOC_NUMBERS (elf_cris_reloc_type RELOC_NUMBER (R_CRIS_GNU_VTENTRY, 8) /* Copy contents at dynlinking. Generated by the linker. - The BFD equivalent is BFD_RELOC_CRIS_COPY. */ + The BFD equivalent is BFD_RELOC_COPY. */ RELOC_NUMBER (R_CRIS_COPY, 9) /* Create GOT entry. Generated by the linker. From patchwork Fri Nov 28 11:46:54 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125509 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 313993858D1E for ; Fri, 28 Nov 2025 11:48:02 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 313993858D1E Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=GiOILVH0 X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [IPv6:2a00:1450:4864:20::329]) by sourceware.org (Postfix) with ESMTPS id 76F9C3858D20 for ; Fri, 28 Nov 2025 11:46:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 76F9C3858D20 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 76F9C3858D20 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::329 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330418; cv=none; b=MeDVd1xC+TEAKICsNn6IJH1ifGawFsuYdjLIjc8s/SDhBRmDR7rGIuhOjUWbr+hER6PcTRb5wNn/CRASjc2W3vNHvmqiqUKDw/IdOoB4mCYLWpdYkuXzx0gz2Cnc4TGrCi19GmNEq2evwIufVkwtmLhKrGgzbuOMNeXIKBd+fkw= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330418; c=relaxed/simple; bh=Miz5FncX4rNFUXFTNT0z6OG/exswYR/n3Ou9Fm2A7ao=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=EN6DFymYES22mYoAvPxSP7gQp/VZo2X3TmxCuYlcKMHCn0TibjrX+ftAicvGf1NL4hUR+5FCFvtDTfKWckNb6okCPssbOzq9rqc6TjCMPhA00m9ivKwuhC+7joJd3Ua4nFwXALxgHyMyLSBZW0HDgju0h0CajuoPX7q4v+UO9Ro= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 76F9C3858D20 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-47775fb6cb4so11890015e9.0 for ; Fri, 28 Nov 2025 03:46:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764330417; x=1764935217; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=57jy2EbFA+WRehBGu1cSYp+kBpMIiYWuBJZaDvkcK6k=; b=GiOILVH0dm6DCFgPQw5+2wqcjWIFxceB31MP/5Nz6VRnzZT2Xr56npUVejSSqt85FZ BCUcuYI/szHumJpPsnNZWVpE5lC6Pt08yHCvd78TQCUIJ1goftWuclbuyd7ZluzgMyIC n5EkYlbJxhgLvgcgtYzlyA35B0CduL/VZ8Si8AHTmVteJVlxWTlkQb0v5RS0PVhpeEM8 Ulx5CojqUQ0wiDXHR/4zRfCyQKw9BGs4Q0uBOb5G7SV+aWdMWBVcgGznlGYn51WVSl9c uXhjf8PBRuKv6lGcRdiWF22nUVAJVbXOeuSIi1kQrfw2QmDkA0IkznjyQRwOr/Eh5M2D 7jtQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764330417; x=1764935217; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=57jy2EbFA+WRehBGu1cSYp+kBpMIiYWuBJZaDvkcK6k=; b=icozuOxGakTFDVhk40O/r46xJFOFO+i2NsBIsEJfC+OzseDwnvNXIbSWVhMf8cm8cq AyEE8Hk/zAWNyN/hE3qSsYQIPWRaJEXAkZu8ez9gbbzUDrEbmLfM5UF6BwappiA9wof3 BPcRw0TsRvT/hGBH5Rc2Px4n/+tIaS+GXrcF0W4Fog3R/6F2cny7ynL2dQ55MX7c5IRk brG+1pWLal/FTRBnIwLIOpFDEIW6TJGY2v3RwgZhKHAbmobBE6ErYPBBiL35rksK8oiv SiXUi720Nv3WWzjBFVN/2gzbf9yEot163Dg7S5InNDyRPEEv6ZYNlgH0/RdF4/bv42Ft vb7Q== X-Gm-Message-State: AOJu0YzK+coDTuIbHe+ogG5med+YTKKHjffiGuXXwj7iQPL/3M9EI25Z 4OchwS4PLClyi+cFhCBCS6w5cKAl+DUe9EoXrj1AJoksnVkHxHHjtPEm0fzM62fK97iNooR24I2 PS10= X-Gm-Gg: ASbGncucF9g1Vyh2nFbyaRINaDwEbSLhu+gAxuMAQEA2FQ2cY6PSvIQQEbvVtvsEQwa LI6iVfmC8QYJ3mJkr1AH2GW+VcoXT88+ut66sVESySydpbjNpxi9hBHumuTNgHycdDAtz06m4wA fPXLPpbCeuKlL/DhG7tIxmjcnV7Y/mpSzLLU6AJ+9FKvRGAxSY8koYrbkZ/JrUSZ1A0jvL6B4n1 QcIenW/q5aSh+SgNeY6ODTtgUTQZ1Et47b0nhXgArlMFXOwiN1/LffXr36r8nh9lEP06gv1pUVO JY1eotnn3067E9BSHkPetBpF0e0aZmsnXA+psMU/THIjFaon4yioon1i/N/6jSBqFl4UvE7O+I+ tc06iZlYOtu0cHnbyYmR4nf5tUO3VZsTLr6CNpoPRAH0GKULIH9cXIA3E/gzV2J4E/Ni7vnu2n8 K/OYqGg6o0Xk9ezyN21rj/ROCvvuqIubZXKkrC+H+zJot3Cns6IXxEKgwr+AYTOFmpb4tf3o8u+ ks= X-Google-Smtp-Source: AGHT+IFAqs6HQynRFXhAr6brUF0wuWX5LH/e6iCZlAHjqteF/l6tXg6T3c5CEBFWxvixEE256WaXQg== X-Received: by 2002:a05:600c:6296:b0:479:1348:c65b with SMTP id 5b1f17b1804b1-4791348ccf2mr57048335e9.26.1764330416948; Fri, 28 Nov 2025 03:46:56 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4790b0c3a1dsm151078995e9.10.2025.11.28.03.46.54 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:46:56 -0800 (PST) Message-ID: <5e4d1d97-9eef-4356-99c4-3f1fa02406cd@suse.com> Date: Fri, 28 Nov 2025 12:46:54 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 11/14] bfd/ELF: fold BFD_RELOC__GLOB_DAT From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: Alexandre Oliva , Claudiu Zissulescu , Nick Clifton , "ramana.radhakrishnan@arm.com" , Richard Earnshaw , Hans-Peter Nilsson , "H.J. Lu" , Jon Beniston , Doug Evans , Kuan-Lin Chen , Wei-Cheng Wang , Christian Svensson , Stefan Kristiansson , Stafford Horne , Peter Bergner , Surya Kumari Jangala , Andreas Krebbel , Jan-Benedict Glaw , Max Filippov , Sterling Augustine , "David S. Miller" , "Jose E. Marchesi" Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP, UPPERCASE_50_75 autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org There's no need to have a separate reloc per arch; just like for other more or less generic ones a single one will (mostly) do. Arm64, C-Sky, and KVX - sadly - are exceptions. --- Why do KVX and PPC assemblers deal with GLOB_DAT relocs? --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3334,6 +3334,7 @@ enum bfd_reloc_code_real BFD_RELOC_HI16_S_PLTOFF, BFD_RELOC_8_PLTOFF, BFD_RELOC_COPY, + BFD_RELOC_GLOB_DAT, BFD_RELOC_IRELATIVE, /* Size relocations. */ @@ -3341,7 +3342,6 @@ enum bfd_reloc_code_real BFD_RELOC_SIZE64, /* Relocations used by 68K ELF. */ - BFD_RELOC_68K_GLOB_DAT, BFD_RELOC_68K_JMP_SLOT, BFD_RELOC_68K_RELATIVE, BFD_RELOC_68K_TLS_GD32, @@ -3406,7 +3406,6 @@ enum bfd_reloc_code_real BFD_RELOC_SPARC_PC10, BFD_RELOC_SPARC_PC22, BFD_RELOC_SPARC_WPLT30, - BFD_RELOC_SPARC_GLOB_DAT, BFD_RELOC_SPARC_JMP_SLOT, BFD_RELOC_SPARC_RELATIVE, BFD_RELOC_SPARC_UA16, @@ -3809,9 +3808,6 @@ enum bfd_reloc_code_real bytes in the instruction. */ BFD_RELOC_MN10300_GOT16, - /* Create GOT entry. */ - BFD_RELOC_MN10300_GLOB_DAT, - /* Create PLT entry. */ BFD_RELOC_MN10300_JMP_SLOT, @@ -3849,7 +3845,6 @@ enum bfd_reloc_code_real /* i386/elf relocations. */ BFD_RELOC_386_GOT32, BFD_RELOC_386_PLT32, - BFD_RELOC_386_GLOB_DAT, BFD_RELOC_386_JUMP_SLOT, BFD_RELOC_386_RELATIVE, BFD_RELOC_386_GOTOFF, @@ -3873,7 +3868,6 @@ enum bfd_reloc_code_real /* x86-64/elf relocations. */ BFD_RELOC_X86_64_GOT32, - BFD_RELOC_X86_64_GLOB_DAT, BFD_RELOC_X86_64_JUMP_SLOT, BFD_RELOC_X86_64_RELATIVE, BFD_RELOC_X86_64_GOTPCREL, @@ -3947,7 +3941,6 @@ enum bfd_reloc_code_real BFD_RELOC_PPC_BA16, BFD_RELOC_PPC_BA16_BRTAKEN, BFD_RELOC_PPC_BA16_BRNTAKEN, - BFD_RELOC_PPC_GLOB_DAT, BFD_RELOC_PPC_JMP_SLOT, BFD_RELOC_PPC_RELATIVE, BFD_RELOC_PPC_LOCAL24PC, @@ -4206,7 +4199,6 @@ enum bfd_reloc_code_real /* Relocations for setting up GOTs and PLTs for shared libraries. */ BFD_RELOC_ARM_JUMP_SLOT, - BFD_RELOC_ARM_GLOB_DAT, BFD_RELOC_ARM_GOT32, BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, @@ -4327,7 +4319,6 @@ enum bfd_reloc_code_real BFD_RELOC_SH_LABEL, BFD_RELOC_SH_LOOP_START, BFD_RELOC_SH_LOOP_END, - BFD_RELOC_SH_GLOB_DAT, BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC, @@ -4437,7 +4428,6 @@ enum bfd_reloc_code_real BFD_RELOC_ARC_32_PCREL, BFD_RELOC_ARC_GOT32, BFD_RELOC_ARC_GOTPC32, - BFD_RELOC_ARC_GLOB_DAT, BFD_RELOC_ARC_JMP_SLOT, BFD_RELOC_ARC_RELATIVE, BFD_RELOC_ARC_GOTOFF, @@ -4678,7 +4668,6 @@ enum bfd_reloc_code_real /* For PIC. */ BFD_RELOC_M32R_GOT24, BFD_RELOC_M32R_26_PLTREL, - BFD_RELOC_M32R_GLOB_DAT, BFD_RELOC_M32R_JMP_SLOT, BFD_RELOC_M32R_RELATIVE, BFD_RELOC_M32R_GOTOFF, @@ -4774,7 +4763,6 @@ enum bfd_reloc_code_real BFD_RELOC_NDS32_GOT20, BFD_RELOC_NDS32_9_PLTREL, BFD_RELOC_NDS32_25_PLTREL, - BFD_RELOC_NDS32_GLOB_DAT, BFD_RELOC_NDS32_JMP_SLOT, BFD_RELOC_NDS32_RELATIVE, BFD_RELOC_NDS32_GOTOFF, @@ -5013,7 +5001,6 @@ enum bfd_reloc_code_real BFD_RELOC_V850_32_GOT, BFD_RELOC_V850_22_PLT_PCREL, BFD_RELOC_V850_32_PLT_PCREL, - BFD_RELOC_V850_GLOB_DAT, BFD_RELOC_V850_JMP_SLOT, BFD_RELOC_V850_RELATIVE, BFD_RELOC_V850_16_GOTOFF, @@ -5167,7 +5154,6 @@ enum bfd_reloc_code_real BFD_RELOC_METAG_PLT, BFD_RELOC_METAG_JMP_SLOT, BFD_RELOC_METAG_RELATIVE, - BFD_RELOC_METAG_GLOB_DAT, BFD_RELOC_METAG_TLS_GD, BFD_RELOC_METAG_TLS_LDM, BFD_RELOC_METAG_TLS_LDO_HI16, @@ -5491,9 +5477,6 @@ enum bfd_reloc_code_real /* 12 bit GOT offset. */ BFD_RELOC_390_GOT12, - /* Create GOT entry. */ - BFD_RELOC_390_GLOB_DAT, - /* Create PLT entry. */ BFD_RELOC_390_JMP_SLOT, @@ -5919,7 +5902,6 @@ enum bfd_reloc_code_real BFD_RELOC_CR16_SWITCH32, BFD_RELOC_CR16_GOT_REGREL20, BFD_RELOC_CR16_GOTC_REGREL20, - BFD_RELOC_CR16_GLOB_DAT, /* NS CRX Relocations. */ BFD_RELOC_CRX_REL4, @@ -5957,7 +5939,6 @@ enum bfd_reloc_code_real BFD_RELOC_CRIS_UNSIGNED_4, /* Relocs used in ELF shared libraries for CRIS. */ - BFD_RELOC_CRIS_GLOB_DAT, BFD_RELOC_CRIS_JUMP_SLOT, BFD_RELOC_CRIS_RELATIVE, @@ -6012,7 +5993,6 @@ enum bfd_reloc_code_real BFD_RELOC_OR1K_PLT26, BFD_RELOC_OR1K_PLTA26, BFD_RELOC_OR1K_GOTOFF_SLO16, - BFD_RELOC_OR1K_GLOB_DAT, BFD_RELOC_OR1K_JMP_SLOT, BFD_RELOC_OR1K_RELATIVE, BFD_RELOC_OR1K_TLS_GD_HI16, @@ -6056,7 +6036,6 @@ enum bfd_reloc_code_real BFD_RELOC_RELC, /* Relocations used by VAX ELF. */ - BFD_RELOC_VAX_GLOB_DAT, BFD_RELOC_VAX_JMP_SLOT, BFD_RELOC_VAX_RELATIVE, @@ -6150,7 +6129,6 @@ enum bfd_reloc_code_real BFD_RELOC_XTENSA_RTLD, /* Xtensa relocations for ELF shared objects. */ - BFD_RELOC_XTENSA_GLOB_DAT, BFD_RELOC_XTENSA_JMP_SLOT, BFD_RELOC_XTENSA_RELATIVE, @@ -6290,7 +6268,6 @@ enum bfd_reloc_code_real BFD_RELOC_LM32_16_GOT, BFD_RELOC_LM32_GOTOFF_HI16, BFD_RELOC_LM32_GOTOFF_LO16, - BFD_RELOC_LM32_GLOB_DAT, BFD_RELOC_LM32_JMP_SLOT, BFD_RELOC_LM32_RELATIVE, @@ -6986,7 +6963,6 @@ enum bfd_reloc_code_real BFD_RELOC_AARCH64_BRANCH9, /* Tilera TILEPro Relocations. */ - BFD_RELOC_TILEPRO_GLOB_DAT, BFD_RELOC_TILEPRO_JMP_SLOT, BFD_RELOC_TILEPRO_RELATIVE, BFD_RELOC_TILEPRO_BROFF_X1, @@ -7073,7 +7049,6 @@ enum bfd_reloc_code_real BFD_RELOC_TILEGX_HW0_LAST, BFD_RELOC_TILEGX_HW1_LAST, BFD_RELOC_TILEGX_HW2_LAST, - BFD_RELOC_TILEGX_GLOB_DAT, BFD_RELOC_TILEGX_JMP_SLOT, BFD_RELOC_TILEGX_RELATIVE, BFD_RELOC_TILEGX_BROFF_X1, --- a/bfd/elf-m10300.c +++ b/bfd/elf-m10300.c @@ -663,7 +663,7 @@ static const struct mn10300_reloc_map mn { BFD_RELOC_MN10300_GOT24, R_MN10300_GOT24 }, { BFD_RELOC_MN10300_GOT16, R_MN10300_GOT16 }, { BFD_RELOC_COPY, R_MN10300_COPY }, - { BFD_RELOC_MN10300_GLOB_DAT, R_MN10300_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_MN10300_GLOB_DAT }, { BFD_RELOC_MN10300_JMP_SLOT, R_MN10300_JMP_SLOT }, { BFD_RELOC_MN10300_RELATIVE, R_MN10300_RELATIVE }, { BFD_RELOC_MN10300_TLS_GD, R_MN10300_TLS_GD }, --- a/bfd/elf32-arc.c +++ b/bfd/elf32-arc.c @@ -386,6 +386,7 @@ arc_elf_link_hash_table_create (bfd *abf #define BFD_RELOC_ARC_PC32 BFD_RELOC_32_PCREL #define BFD_RELOC_ARC_PLT32 BFD_RELOC_32_PLT_PCREL #define BFD_RELOC_ARC_COPY BFD_RELOC_COPY +#define BFD_RELOC_ARC_GLOB_DAT BFD_RELOC_GLOB_DAT static const struct arc_reloc_map arc_reloc_map[] = { --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -2016,7 +2016,7 @@ static const struct elf32_arm_reloc_map {BFD_RELOC_THUMB_PCREL_BRANCH20, R_ARM_THM_JUMP19}, {BFD_RELOC_THUMB_PCREL_BRANCH9, R_ARM_THM_JUMP8}, {BFD_RELOC_THUMB_PCREL_BRANCH7, R_ARM_THM_JUMP6}, - {BFD_RELOC_ARM_GLOB_DAT, R_ARM_GLOB_DAT}, + {BFD_RELOC_GLOB_DAT, R_ARM_GLOB_DAT}, {BFD_RELOC_ARM_JUMP_SLOT, R_ARM_JUMP_SLOT}, {BFD_RELOC_ARM_RELATIVE, R_ARM_RELATIVE}, {BFD_RELOC_ARM_GOTOFF, R_ARM_GOTOFF32}, --- a/bfd/elf32-cr16.c +++ b/bfd/elf32-cr16.c @@ -109,7 +109,7 @@ static const struct cr16_reloc_map cr16_ {BFD_RELOC_CR16_SWITCH32, R_CR16_SWITCH32}, {BFD_RELOC_CR16_GOT_REGREL20, R_CR16_GOT_REGREL20}, {BFD_RELOC_CR16_GOTC_REGREL20, R_CR16_GOTC_REGREL20}, - {BFD_RELOC_CR16_GLOB_DAT, R_CR16_GLOB_DAT} + {BFD_RELOC_GLOB_DAT, R_CR16_GLOB_DAT} }; static reloc_howto_type cr16_elf_howto_table[] = --- a/bfd/elf32-cris.c +++ b/bfd/elf32-cris.c @@ -399,7 +399,7 @@ static const struct cris_reloc_map cris_ { BFD_RELOC_VTABLE_INHERIT, R_CRIS_GNU_VTINHERIT }, { BFD_RELOC_VTABLE_ENTRY, R_CRIS_GNU_VTENTRY }, { BFD_RELOC_COPY, R_CRIS_COPY }, - { BFD_RELOC_CRIS_GLOB_DAT, R_CRIS_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_CRIS_GLOB_DAT }, { BFD_RELOC_CRIS_JUMP_SLOT, R_CRIS_JUMP_SLOT }, { BFD_RELOC_CRIS_RELATIVE, R_CRIS_RELATIVE }, { BFD_RELOC_CRIS_16_GOT, R_CRIS_16_GOT }, --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -220,8 +220,8 @@ elf_i386_reloc_type_lookup (bfd *abfd, TRACE ("BFD_RELOC_COPY"); return &elf_howto_table[R_386_COPY]; - case BFD_RELOC_386_GLOB_DAT: - TRACE ("BFD_RELOC_386_GLOB_DAT"); + case BFD_RELOC_GLOB_DAT: + TRACE ("BFD_RELOC_GLOB_DAT"); return &elf_howto_table[R_386_GLOB_DAT]; case BFD_RELOC_386_JUMP_SLOT: --- a/bfd/elf32-lm32.c +++ b/bfd/elf32-lm32.c @@ -445,7 +445,7 @@ static const struct lm32_reloc_map lm32_ { BFD_RELOC_LM32_GOTOFF_HI16, R_LM32_GOTOFF_HI16 }, { BFD_RELOC_LM32_GOTOFF_LO16, R_LM32_GOTOFF_LO16 }, { BFD_RELOC_COPY, R_LM32_COPY }, - { BFD_RELOC_LM32_GLOB_DAT, R_LM32_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_LM32_GLOB_DAT }, { BFD_RELOC_LM32_JMP_SLOT, R_LM32_JMP_SLOT }, { BFD_RELOC_LM32_RELATIVE, R_LM32_RELATIVE }, }; --- a/bfd/elf32-m32r.c +++ b/bfd/elf32-m32r.c @@ -1212,7 +1212,7 @@ static const struct m32r_reloc_map m32r_ { BFD_RELOC_M32R_GOT24, R_M32R_GOT24 }, { BFD_RELOC_M32R_26_PLTREL, R_M32R_26_PLTREL }, { BFD_RELOC_COPY, R_M32R_COPY }, - { BFD_RELOC_M32R_GLOB_DAT, R_M32R_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_M32R_GLOB_DAT }, { BFD_RELOC_M32R_JMP_SLOT, R_M32R_JMP_SLOT }, { BFD_RELOC_M32R_RELATIVE, R_M32R_RELATIVE }, { BFD_RELOC_M32R_GOTOFF, R_M32R_GOTOFF }, --- a/bfd/elf32-m68k.c +++ b/bfd/elf32-m68k.c @@ -389,7 +389,7 @@ static const struct { BFD_RELOC_16_PLTOFF, R_68K_PLT16O }, { BFD_RELOC_8_PLTOFF, R_68K_PLT8O }, { BFD_RELOC_NONE, R_68K_COPY }, - { BFD_RELOC_68K_GLOB_DAT, R_68K_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_68K_GLOB_DAT }, { BFD_RELOC_68K_JMP_SLOT, R_68K_JMP_SLOT }, { BFD_RELOC_68K_RELATIVE, R_68K_RELATIVE }, { BFD_RELOC_CTOR, R_68K_32 }, --- a/bfd/elf32-metag.c +++ b/bfd/elf32-metag.c @@ -723,7 +723,7 @@ static const struct metag_reloc_map meta { BFD_RELOC_COPY, R_METAG_COPY }, { BFD_RELOC_METAG_JMP_SLOT, R_METAG_JMP_SLOT }, { BFD_RELOC_METAG_RELATIVE, R_METAG_RELATIVE }, - { BFD_RELOC_METAG_GLOB_DAT, R_METAG_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_METAG_GLOB_DAT }, { BFD_RELOC_METAG_TLS_GD, R_METAG_TLS_GD }, { BFD_RELOC_METAG_TLS_LDM, R_METAG_TLS_LDM }, { BFD_RELOC_METAG_TLS_LDO_HI16, R_METAG_TLS_LDO_HI16 }, --- a/bfd/elf32-nds32.c +++ b/bfd/elf32-nds32.c @@ -3114,7 +3114,7 @@ static const struct nds32_reloc_map_entr {BFD_RELOC_NDS32_9_PLTREL, R_NDS32_9_PLTREL}, {BFD_RELOC_NDS32_25_PLTREL, R_NDS32_25_PLTREL}, {BFD_RELOC_COPY, R_NDS32_COPY}, - {BFD_RELOC_NDS32_GLOB_DAT, R_NDS32_GLOB_DAT}, + {BFD_RELOC_GLOB_DAT, R_NDS32_GLOB_DAT}, {BFD_RELOC_NDS32_JMP_SLOT, R_NDS32_JMP_SLOT}, {BFD_RELOC_NDS32_RELATIVE, R_NDS32_RELATIVE}, {BFD_RELOC_NDS32_GOTOFF, R_NDS32_GOTOFF}, --- a/bfd/elf32-or1k.c +++ b/bfd/elf32-or1k.c @@ -875,7 +875,7 @@ static const struct or1k_reloc_map or1k_ { BFD_RELOC_OR1K_GOTPC_LO16, R_OR1K_GOTPC_LO16 }, { BFD_RELOC_OR1K_GOT16, R_OR1K_GOT16 }, { BFD_RELOC_OR1K_PLT26, R_OR1K_PLT26 }, - { BFD_RELOC_OR1K_GLOB_DAT, R_OR1K_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_OR1K_GLOB_DAT }, { BFD_RELOC_COPY, R_OR1K_COPY }, { BFD_RELOC_OR1K_JMP_SLOT, R_OR1K_JMP_SLOT }, { BFD_RELOC_OR1K_RELATIVE, R_OR1K_RELATIVE }, --- a/bfd/elf32-ppc.c +++ b/bfd/elf32-ppc.c @@ -754,7 +754,7 @@ ppc_elf_reloc_type_lookup (bfd *abfd ATT case BFD_RELOC_HI16_S_GOTOFF: r = R_PPC_GOT16_HA; break; case BFD_RELOC_24_PLT_PCREL: r = R_PPC_PLTREL24; break; case BFD_RELOC_COPY: r = R_PPC_COPY; break; - case BFD_RELOC_PPC_GLOB_DAT: r = R_PPC_GLOB_DAT; break; + case BFD_RELOC_GLOB_DAT: r = R_PPC_GLOB_DAT; break; case BFD_RELOC_PPC_LOCAL24PC: r = R_PPC_LOCAL24PC; break; case BFD_RELOC_32_PCREL: r = R_PPC_REL32; break; case BFD_RELOC_32_PLTOFF: r = R_PPC_PLT32; break; --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -205,7 +205,7 @@ elf_s390_reloc_type_lookup (bfd *abfd AT return &elf_howto_table[(int) R_390_PLT32]; case BFD_RELOC_COPY: return &elf_howto_table[(int) R_390_COPY]; - case BFD_RELOC_390_GLOB_DAT: + case BFD_RELOC_GLOB_DAT: return &elf_howto_table[(int) R_390_GLOB_DAT]; case BFD_RELOC_390_JMP_SLOT: return &elf_howto_table[(int) R_390_JMP_SLOT]; --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -356,7 +356,7 @@ static const struct elf_reloc_map sh_rel { BFD_RELOC_32_GOT_PCREL, R_SH_GOT32 }, { BFD_RELOC_32_PLT_PCREL, R_SH_PLT32 }, { BFD_RELOC_COPY, R_SH_COPY }, - { BFD_RELOC_SH_GLOB_DAT, R_SH_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_SH_GLOB_DAT }, { BFD_RELOC_SH_JMP_SLOT, R_SH_JMP_SLOT }, { BFD_RELOC_SH_RELATIVE, R_SH_RELATIVE }, { BFD_RELOC_32_GOTOFF, R_SH_GOTOFF }, --- a/bfd/elf32-tilepro.c +++ b/bfd/elf32-tilepro.c @@ -584,7 +584,7 @@ static const reloc_map tilepro_reloc_map /* Custom relocations. */ TH_REMAP (BFD_RELOC_COPY, R_TILEPRO_COPY) - TH_REMAP (BFD_RELOC_TILEPRO_GLOB_DAT, R_TILEPRO_GLOB_DAT) + TH_REMAP (BFD_RELOC_GLOB_DAT, R_TILEPRO_GLOB_DAT) TH_REMAP (BFD_RELOC_TILEPRO_JMP_SLOT, R_TILEPRO_JMP_SLOT) TH_REMAP (BFD_RELOC_TILEPRO_RELATIVE, R_TILEPRO_RELATIVE) TH_REMAP (BFD_RELOC_TILEPRO_BROFF_X1, R_TILEPRO_BROFF_X1) --- a/bfd/elf32-v850.c +++ b/bfd/elf32-v850.c @@ -1737,7 +1737,7 @@ static const struct v850_elf_reloc_map v { BFD_RELOC_V850_22_PLT_PCREL, R_V850_22_PLT }, { BFD_RELOC_V850_32_PLT_PCREL, R_V850_32_PLT }, { BFD_RELOC_COPY, R_V850_COPY }, - { BFD_RELOC_V850_GLOB_DAT, R_V850_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_V850_GLOB_DAT }, { BFD_RELOC_V850_JMP_SLOT, R_V850_JMP_SLOT }, { BFD_RELOC_V850_RELATIVE, R_V850_RELATIVE }, { BFD_RELOC_V850_16_GOTOFF, R_V850_16_GOTOFF }, --- a/bfd/elf32-vax.c +++ b/bfd/elf32-vax.c @@ -311,7 +311,7 @@ static const struct { BFD_RELOC_32_GOT_PCREL, R_VAX_GOT32 }, { BFD_RELOC_32_PLT_PCREL, R_VAX_PLT32 }, { BFD_RELOC_NONE, R_VAX_COPY }, - { BFD_RELOC_VAX_GLOB_DAT, R_VAX_GLOB_DAT }, + { BFD_RELOC_GLOB_DAT, R_VAX_GLOB_DAT }, { BFD_RELOC_VAX_JMP_SLOT, R_VAX_JMP_SLOT }, { BFD_RELOC_VAX_RELATIVE, R_VAX_RELATIVE }, { BFD_RELOC_CTOR, R_VAX_32 }, --- a/bfd/elf32-xtensa.c +++ b/bfd/elf32-xtensa.c @@ -414,8 +414,8 @@ elf_xtensa_reloc_type_lookup (bfd *abfd TRACE ("BFD_RELOC_XTENSA_RTLD"); return &elf_howto_table[(unsigned) R_XTENSA_RTLD ]; - case BFD_RELOC_XTENSA_GLOB_DAT: - TRACE ("BFD_RELOC_XTENSA_GLOB_DAT"); + case BFD_RELOC_GLOB_DAT: + TRACE ("BFD_RELOC_GLOB_DAT"); return &elf_howto_table[(unsigned) R_XTENSA_GLOB_DAT ]; case BFD_RELOC_XTENSA_JMP_SLOT: --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -1079,7 +1079,7 @@ ppc64_elf_reloc_type_lookup (bfd *abfd, break; case BFD_RELOC_COPY: r = R_PPC64_COPY; break; - case BFD_RELOC_PPC_GLOB_DAT: r = R_PPC64_GLOB_DAT; + case BFD_RELOC_GLOB_DAT: r = R_PPC64_GLOB_DAT; break; case BFD_RELOC_32_PCREL: r = R_PPC64_REL32; break; --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -219,7 +219,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_PLT32]; case BFD_RELOC_COPY: return &elf_howto_table[(int) R_390_COPY]; - case BFD_RELOC_390_GLOB_DAT: + case BFD_RELOC_GLOB_DAT: return &elf_howto_table[(int) R_390_GLOB_DAT]; case BFD_RELOC_390_JMP_SLOT: return &elf_howto_table[(int) R_390_JMP_SLOT]; --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -235,7 +235,7 @@ static const struct elf_reloc_map x86_64 { BFD_RELOC_X86_64_GOT32, R_X86_64_GOT32,}, { BFD_RELOC_32_PLT_PCREL, R_X86_64_PLT32,}, { BFD_RELOC_COPY, R_X86_64_COPY, }, - { BFD_RELOC_X86_64_GLOB_DAT, R_X86_64_GLOB_DAT, }, + { BFD_RELOC_GLOB_DAT, R_X86_64_GLOB_DAT, }, { BFD_RELOC_X86_64_JUMP_SLOT, R_X86_64_JUMP_SLOT, }, { BFD_RELOC_X86_64_RELATIVE, R_X86_64_RELATIVE, }, { BFD_RELOC_X86_64_GOTPCREL, R_X86_64_GOTPCREL, }, --- a/bfd/elfxx-sparc.c +++ b/bfd/elfxx-sparc.c @@ -375,7 +375,7 @@ _bfd_sparc_elf_reloc_type_lookup (bfd *a case BFD_RELOC_COPY: return &_bfd_sparc_elf_howto_table[R_SPARC_COPY]; - case BFD_RELOC_SPARC_GLOB_DAT: + case BFD_RELOC_GLOB_DAT: return &_bfd_sparc_elf_howto_table[R_SPARC_GLOB_DAT]; case BFD_RELOC_SPARC_JMP_SLOT: --- a/bfd/elfxx-tilegx.c +++ b/bfd/elfxx-tilegx.c @@ -651,6 +651,7 @@ static const reloc_map tilegx_reloc_map TH_REMAP (BFD_RELOC_16_PCREL, R_TILEGX_16_PCREL) TH_REMAP (BFD_RELOC_8_PCREL, R_TILEGX_8_PCREL) TH_REMAP (BFD_RELOC_COPY, R_TILEGX_COPY) + TH_REMAP (BFD_RELOC_GLOB_DAT, R_TILEGX_GLOB_DAT) #define SIMPLE_REMAP(t) TH_REMAP (BFD_RELOC_##t, R_##t) @@ -662,7 +663,6 @@ static const reloc_map tilegx_reloc_map SIMPLE_REMAP (TILEGX_HW0_LAST) SIMPLE_REMAP (TILEGX_HW1_LAST) SIMPLE_REMAP (TILEGX_HW2_LAST) - SIMPLE_REMAP (TILEGX_GLOB_DAT) SIMPLE_REMAP (TILEGX_JMP_SLOT) SIMPLE_REMAP (TILEGX_RELATIVE) SIMPLE_REMAP (TILEGX_BROFF_X1) --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1100,10 +1100,10 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_HI16_S_PLTOFF", "BFD_RELOC_8_PLTOFF", "BFD_RELOC_COPY", + "BFD_RELOC_GLOB_DAT", "BFD_RELOC_IRELATIVE", "BFD_RELOC_SIZE32", "BFD_RELOC_SIZE64", - "BFD_RELOC_68K_GLOB_DAT", "BFD_RELOC_68K_JMP_SLOT", "BFD_RELOC_68K_RELATIVE", "BFD_RELOC_68K_TLS_GD32", @@ -1146,7 +1146,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SPARC_PC10", "BFD_RELOC_SPARC_PC22", "BFD_RELOC_SPARC_WPLT30", - "BFD_RELOC_SPARC_GLOB_DAT", "BFD_RELOC_SPARC_JMP_SLOT", "BFD_RELOC_SPARC_RELATIVE", "BFD_RELOC_SPARC_UA16", @@ -1399,7 +1398,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_GOT32", "BFD_RELOC_MN10300_GOT24", "BFD_RELOC_MN10300_GOT16", - "BFD_RELOC_MN10300_GLOB_DAT", "BFD_RELOC_MN10300_JMP_SLOT", "BFD_RELOC_MN10300_RELATIVE", "BFD_RELOC_MN10300_SYM_DIFF", @@ -1417,7 +1415,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_16_PCREL", "BFD_RELOC_386_GOT32", "BFD_RELOC_386_PLT32", - "BFD_RELOC_386_GLOB_DAT", "BFD_RELOC_386_JUMP_SLOT", "BFD_RELOC_386_RELATIVE", "BFD_RELOC_386_GOTOFF", @@ -1439,7 +1436,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_386_TLS_DESC", "BFD_RELOC_386_GOT32X", "BFD_RELOC_X86_64_GOT32", - "BFD_RELOC_X86_64_GLOB_DAT", "BFD_RELOC_X86_64_JUMP_SLOT", "BFD_RELOC_X86_64_RELATIVE", "BFD_RELOC_X86_64_GOTPCREL", @@ -1505,7 +1501,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_PPC_BA16", "BFD_RELOC_PPC_BA16_BRTAKEN", "BFD_RELOC_PPC_BA16_BRNTAKEN", - "BFD_RELOC_PPC_GLOB_DAT", "BFD_RELOC_PPC_JMP_SLOT", "BFD_RELOC_PPC_RELATIVE", "BFD_RELOC_PPC_LOCAL24PC", @@ -1701,7 +1696,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARM_TLS_LDM32_FDPIC", "BFD_RELOC_ARM_TLS_IE32_FDPIC", "BFD_RELOC_ARM_JUMP_SLOT", - "BFD_RELOC_ARM_GLOB_DAT", "BFD_RELOC_ARM_GOT32", "BFD_RELOC_ARM_RELATIVE", "BFD_RELOC_ARM_GOTOFF", @@ -1809,7 +1803,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SH_LABEL", "BFD_RELOC_SH_LOOP_START", "BFD_RELOC_SH_LOOP_END", - "BFD_RELOC_SH_GLOB_DAT", "BFD_RELOC_SH_JMP_SLOT", "BFD_RELOC_SH_RELATIVE", "BFD_RELOC_SH_GOTPC", @@ -1917,7 +1910,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARC_32_PCREL", "BFD_RELOC_ARC_GOT32", "BFD_RELOC_ARC_GOTPC32", - "BFD_RELOC_ARC_GLOB_DAT", "BFD_RELOC_ARC_JMP_SLOT", "BFD_RELOC_ARC_RELATIVE", "BFD_RELOC_ARC_GOTOFF", @@ -2017,7 +2009,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_M32R_SDA16", "BFD_RELOC_M32R_GOT24", "BFD_RELOC_M32R_26_PLTREL", - "BFD_RELOC_M32R_GLOB_DAT", "BFD_RELOC_M32R_JMP_SLOT", "BFD_RELOC_M32R_RELATIVE", "BFD_RELOC_M32R_GOTOFF", @@ -2054,7 +2045,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_NDS32_GOT20", "BFD_RELOC_NDS32_9_PLTREL", "BFD_RELOC_NDS32_25_PLTREL", - "BFD_RELOC_NDS32_GLOB_DAT", "BFD_RELOC_NDS32_JMP_SLOT", "BFD_RELOC_NDS32_RELATIVE", "BFD_RELOC_NDS32_GOTOFF", @@ -2195,7 +2185,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_V850_32_GOT", "BFD_RELOC_V850_22_PLT_PCREL", "BFD_RELOC_V850_32_PLT_PCREL", - "BFD_RELOC_V850_GLOB_DAT", "BFD_RELOC_V850_JMP_SLOT", "BFD_RELOC_V850_RELATIVE", "BFD_RELOC_V850_16_GOTOFF", @@ -2292,7 +2281,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_METAG_PLT", "BFD_RELOC_METAG_JMP_SLOT", "BFD_RELOC_METAG_RELATIVE", - "BFD_RELOC_METAG_GLOB_DAT", "BFD_RELOC_METAG_TLS_GD", "BFD_RELOC_METAG_TLS_LDM", "BFD_RELOC_METAG_TLS_LDO_HI16", @@ -2476,7 +2464,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_RX_RELAX", "BFD_RELOC_390_12", "BFD_RELOC_390_GOT12", - "BFD_RELOC_390_GLOB_DAT", "BFD_RELOC_390_JMP_SLOT", "BFD_RELOC_390_RELATIVE", "BFD_RELOC_390_GOTPC", @@ -2690,7 +2677,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_CR16_SWITCH32", "BFD_RELOC_CR16_GOT_REGREL20", "BFD_RELOC_CR16_GOTC_REGREL20", - "BFD_RELOC_CR16_GLOB_DAT", "BFD_RELOC_CRX_REL4", "BFD_RELOC_CRX_REL8", "BFD_RELOC_CRX_REL8_CMP", @@ -2721,7 +2707,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_CRIS_UNSIGNED_16", "BFD_RELOC_CRIS_LAPCQ_OFFSET", "BFD_RELOC_CRIS_UNSIGNED_4", - "BFD_RELOC_CRIS_GLOB_DAT", "BFD_RELOC_CRIS_JUMP_SLOT", "BFD_RELOC_CRIS_RELATIVE", "BFD_RELOC_CRIS_32_GOT", @@ -2757,7 +2742,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_OR1K_PLT26", "BFD_RELOC_OR1K_PLTA26", "BFD_RELOC_OR1K_GOTOFF_SLO16", - "BFD_RELOC_OR1K_GLOB_DAT", "BFD_RELOC_OR1K_JMP_SLOT", "BFD_RELOC_OR1K_RELATIVE", "BFD_RELOC_OR1K_TLS_GD_HI16", @@ -2793,7 +2777,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_XSTORMY16_24", "BFD_RELOC_XSTORMY16_FPTR16", "BFD_RELOC_RELC", - "BFD_RELOC_VAX_GLOB_DAT", "BFD_RELOC_VAX_JMP_SLOT", "BFD_RELOC_VAX_RELATIVE", "BFD_RELOC_MT_PC16", @@ -2842,7 +2825,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_IQ2000_OFFSET_21", "BFD_RELOC_IQ2000_UHI16", "BFD_RELOC_XTENSA_RTLD", - "BFD_RELOC_XTENSA_GLOB_DAT", "BFD_RELOC_XTENSA_JMP_SLOT", "BFD_RELOC_XTENSA_RELATIVE", "BFD_RELOC_XTENSA_PLT", @@ -2913,7 +2895,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_LM32_16_GOT", "BFD_RELOC_LM32_GOTOFF_HI16", "BFD_RELOC_LM32_GOTOFF_LO16", - "BFD_RELOC_LM32_GLOB_DAT", "BFD_RELOC_LM32_JMP_SLOT", "BFD_RELOC_LM32_RELATIVE", "BFD_RELOC_MACH_O_SECTDIFF", @@ -3166,7 +3147,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC", "BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC", "BFD_RELOC_AARCH64_BRANCH9", - "BFD_RELOC_TILEPRO_GLOB_DAT", "BFD_RELOC_TILEPRO_JMP_SLOT", "BFD_RELOC_TILEPRO_RELATIVE", "BFD_RELOC_TILEPRO_BROFF_X1", @@ -3251,7 +3231,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_TILEGX_HW0_LAST", "BFD_RELOC_TILEGX_HW1_LAST", "BFD_RELOC_TILEGX_HW2_LAST", - "BFD_RELOC_TILEGX_GLOB_DAT", "BFD_RELOC_TILEGX_JMP_SLOT", "BFD_RELOC_TILEGX_RELATIVE", "BFD_RELOC_TILEGX_BROFF_X1", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -1473,6 +1473,8 @@ ENUMX ENUMX BFD_RELOC_COPY ENUMX + BFD_RELOC_GLOB_DAT +ENUMX BFD_RELOC_IRELATIVE ENUMDOC For ELF. @@ -1485,8 +1487,6 @@ ENUMDOC Size relocations. ENUM - BFD_RELOC_68K_GLOB_DAT -ENUMX BFD_RELOC_68K_JMP_SLOT ENUMX BFD_RELOC_68K_RELATIVE @@ -1598,8 +1598,6 @@ ENUMX ENUMX BFD_RELOC_SPARC_WPLT30 ENUMX - BFD_RELOC_SPARC_GLOB_DAT -ENUMX BFD_RELOC_SPARC_JMP_SLOT ENUMX BFD_RELOC_SPARC_RELATIVE @@ -2297,10 +2295,6 @@ ENUMDOC This is a 16bit GOT-relative reloc for the mn10300, offset by two bytes in the instruction. ENUM - BFD_RELOC_MN10300_GLOB_DAT -ENUMDOC - Create GOT entry. -ENUM BFD_RELOC_MN10300_JMP_SLOT ENUMDOC Create PLT entry. @@ -2355,8 +2349,6 @@ ENUM ENUMX BFD_RELOC_386_PLT32 ENUMX - BFD_RELOC_386_GLOB_DAT -ENUMX BFD_RELOC_386_JUMP_SLOT ENUMX BFD_RELOC_386_RELATIVE @@ -2402,8 +2394,6 @@ ENUMDOC ENUM BFD_RELOC_X86_64_GOT32 ENUMX - BFD_RELOC_X86_64_GLOB_DAT -ENUMX BFD_RELOC_X86_64_JUMP_SLOT ENUMX BFD_RELOC_X86_64_RELATIVE @@ -2546,8 +2536,6 @@ ENUMX ENUMX BFD_RELOC_PPC_BA16_BRNTAKEN ENUMX - BFD_RELOC_PPC_GLOB_DAT -ENUMX BFD_RELOC_PPC_JMP_SLOT ENUMX BFD_RELOC_PPC_RELATIVE @@ -3016,8 +3004,6 @@ ENUMDOC ENUM BFD_RELOC_ARM_JUMP_SLOT ENUMX - BFD_RELOC_ARM_GLOB_DAT -ENUMX BFD_RELOC_ARM_GOT32 ENUMX BFD_RELOC_ARM_RELATIVE @@ -3251,8 +3237,6 @@ ENUMX ENUMX BFD_RELOC_SH_LOOP_END ENUMX - BFD_RELOC_SH_GLOB_DAT -ENUMX BFD_RELOC_SH_JMP_SLOT ENUMX BFD_RELOC_SH_RELATIVE @@ -3470,8 +3454,6 @@ ENUMX ENUMX BFD_RELOC_ARC_GOTPC32 ENUMX - BFD_RELOC_ARC_GLOB_DAT -ENUMX BFD_RELOC_ARC_JMP_SLOT ENUMX BFD_RELOC_ARC_RELATIVE @@ -3817,8 +3799,6 @@ ENUM ENUMX BFD_RELOC_M32R_26_PLTREL ENUMX - BFD_RELOC_M32R_GLOB_DAT -ENUMX BFD_RELOC_M32R_JMP_SLOT ENUMX BFD_RELOC_M32R_RELATIVE @@ -3952,8 +3932,6 @@ ENUMX ENUMX BFD_RELOC_NDS32_25_PLTREL ENUMX - BFD_RELOC_NDS32_GLOB_DAT -ENUMX BFD_RELOC_NDS32_JMP_SLOT ENUMX BFD_RELOC_NDS32_RELATIVE @@ -4335,8 +4313,6 @@ ENUMX ENUMX BFD_RELOC_V850_32_PLT_PCREL ENUMX - BFD_RELOC_V850_GLOB_DAT -ENUMX BFD_RELOC_V850_JMP_SLOT ENUMX BFD_RELOC_V850_RELATIVE @@ -4597,8 +4573,6 @@ ENUMX ENUMX BFD_RELOC_METAG_RELATIVE ENUMX - BFD_RELOC_METAG_GLOB_DAT -ENUMX BFD_RELOC_METAG_TLS_GD ENUMX BFD_RELOC_METAG_TLS_LDM @@ -5112,10 +5086,6 @@ ENUM ENUMDOC 12 bit GOT offset. ENUM - BFD_RELOC_390_GLOB_DAT -ENUMDOC - Create GOT entry. -ENUM BFD_RELOC_390_JMP_SLOT ENUMDOC Create PLT entry. @@ -5760,8 +5730,6 @@ ENUMX BFD_RELOC_CR16_GOT_REGREL20 ENUMX BFD_RELOC_CR16_GOTC_REGREL20 -ENUMX - BFD_RELOC_CR16_GLOB_DAT ENUMDOC NS CR16 Relocations. @@ -5832,8 +5800,6 @@ ENUMDOC These relocs are only used within the CRIS assembler. They are not (at present) written to any object files. ENUM - BFD_RELOC_CRIS_GLOB_DAT -ENUMX BFD_RELOC_CRIS_JUMP_SLOT ENUMX BFD_RELOC_CRIS_RELATIVE @@ -5925,8 +5891,6 @@ ENUMX ENUMX BFD_RELOC_OR1K_GOTOFF_SLO16 ENUMX - BFD_RELOC_OR1K_GLOB_DAT -ENUMX BFD_RELOC_OR1K_JMP_SLOT ENUMX BFD_RELOC_OR1K_RELATIVE @@ -6009,8 +5973,6 @@ ENUMDOC Self-describing complex relocations. ENUM - BFD_RELOC_VAX_GLOB_DAT -ENUMX BFD_RELOC_VAX_JMP_SLOT ENUMX BFD_RELOC_VAX_RELATIVE @@ -6157,8 +6119,6 @@ ENUMDOC objects to indicate that the runtime linker should set the value to one of its own internal functions or data structures. ENUM - BFD_RELOC_XTENSA_GLOB_DAT -ENUMX BFD_RELOC_XTENSA_JMP_SLOT ENUMX BFD_RELOC_XTENSA_RELATIVE @@ -6371,8 +6331,6 @@ ENUMX ENUMX BFD_RELOC_LM32_GOTOFF_LO16 ENUMX - BFD_RELOC_LM32_GLOB_DAT -ENUMX BFD_RELOC_LM32_JMP_SLOT ENUMX BFD_RELOC_LM32_RELATIVE @@ -7325,8 +7283,6 @@ ENUMDOC The lowest two bits must be zero and are not stored in the instruction, giving an 11 bit signed byte offset. ENUM - BFD_RELOC_TILEPRO_GLOB_DAT -ENUMX BFD_RELOC_TILEPRO_JMP_SLOT ENUMX BFD_RELOC_TILEPRO_RELATIVE @@ -7497,8 +7453,6 @@ ENUMX ENUMX BFD_RELOC_TILEGX_HW2_LAST ENUMX - BFD_RELOC_TILEGX_GLOB_DAT -ENUMX BFD_RELOC_TILEGX_JMP_SLOT ENUMX BFD_RELOC_TILEGX_RELATIVE --- a/gas/config/tc-ppc.c +++ b/gas/config/tc-ppc.c @@ -2089,7 +2089,7 @@ ppc_elf_suffix (char **str_p, expression MAP ("plt@h", BFD_RELOC_HI16_PLTOFF), MAP ("plt@ha", BFD_RELOC_HI16_S_PLTOFF), MAP ("copy", BFD_RELOC_COPY), - MAP ("globdat", BFD_RELOC_PPC_GLOB_DAT), + MAP ("globdat", BFD_RELOC_GLOB_DAT), MAP ("sectoff", BFD_RELOC_16_BASEREL), MAP ("sectoff@l", BFD_RELOC_LO16_BASEREL), MAP ("sectoff@h", BFD_RELOC_HI16_BASEREL), @@ -3167,7 +3167,7 @@ fixup_size (bfd_reloc_code_real_type rel case BFD_RELOC_COPY: case BFD_RELOC_PPC_DTPMOD: case BFD_RELOC_PPC_DTPREL: - case BFD_RELOC_PPC_GLOB_DAT: + case BFD_RELOC_GLOB_DAT: case BFD_RELOC_PPC_TPREL: size = ppc_obj64 ? 8 : 4; break; @@ -7313,7 +7313,7 @@ md_apply_fix (fixS *fixP, valueT *valP, case BFD_RELOC_PPC_TPREL: case BFD_RELOC_PPC_DTPREL: case BFD_RELOC_COPY: - case BFD_RELOC_PPC_GLOB_DAT: + case BFD_RELOC_GLOB_DAT: case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_PPC_EMB_NADDR32: case BFD_RELOC_PPC64_TOC: @@ -7480,7 +7480,7 @@ md_apply_fix (fixS *fixP, valueT *valP, case BFD_RELOC_HI16_PLTOFF: case BFD_RELOC_HI16_S_PLTOFF: case BFD_RELOC_COPY: - case BFD_RELOC_PPC_GLOB_DAT: + case BFD_RELOC_GLOB_DAT: case BFD_RELOC_16_BASEREL: case BFD_RELOC_LO16_BASEREL: case BFD_RELOC_HI16_BASEREL: --- a/include/elf/cris.h +++ b/include/elf/cris.h @@ -44,7 +44,7 @@ START_RELOC_NUMBERS (elf_cris_reloc_type RELOC_NUMBER (R_CRIS_COPY, 9) /* Create GOT entry. Generated by the linker. - The BFD equivalent is BFD_RELOC_CRIS_GLOB_DAT. */ + The BFD equivalent is BFD_RELOC_GLOB_DAT. */ RELOC_NUMBER (R_CRIS_GLOB_DAT, 10) /* Create PLT entry. Generated by the linker. From patchwork Fri Nov 28 11:50:17 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125510 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7D1CF3858CDA for ; Fri, 28 Nov 2025 11:51:18 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7D1CF3858CDA Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=SgCYhA8d X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [IPv6:2a00:1450:4864:20::330]) by sourceware.org (Postfix) with ESMTPS id 064D73858D1E for ; Fri, 28 Nov 2025 11:50:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 064D73858D1E Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 064D73858D1E Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::330 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330622; cv=none; b=CJUwU19PU3kp7do6bwQfxc24rmckAx13T9OdbJ9ZRTD5GMH6A4Sq5UhOyqhWOTurNOmmvtYOM52sXlXMAotsejDs8ShSZNltukP+4oH1puW1vnvIqrCngN0vyk6AxOBTfp4M0HHtXtb7H+6sTA5h9KAA80mDJbBimzH6VvdvSIE= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330622; c=relaxed/simple; bh=lnQaeMRtFTHQ9VFfY6UYyGDUNw51MG7S0PCH0lHcCuQ=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=VR7PIDHyPDmS8OTDEmPYDpgb3tnnP9DkHzcExlzuuzOhzAUZcIPDyRMcjpeRBI2aV4iSaZU7Utsh/YhGiXrdR0WgfiUTI5VOIjY59osxvdR9NxYmBVYMkz45Vu/OHCshriRu+fUkfntGfCRe/6na8CGpUrOXlTK/G9VFYVBy81Q= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 064D73858D1E Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-477a2ab455fso17986665e9.3 for ; Fri, 28 Nov 2025 03:50:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764330621; x=1764935421; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=yJMcbJhmEft44YGUVU5oT2OrgHS+5MXxcLWEHwsA208=; b=SgCYhA8dsstSuS/LuMzqDFxVBZONQB7P4TbE3mNncG7R3kCpde5iHtF0UEhkgKFSQR ISvWCspD8ktuTdYZY8Cvtbc0GJ29ka3A14iNXLlLcvEsPfZ86wrQcLeO/Re4AXLtWmJw 0DXGG1Jpoypsufv52LNAFpWp4P7GZYZG/AWF0S97SGimx9/CB6zICg146SZ6I1IfzLFn uD2WF4AhLryVRoGGmZkTb6gVDPCb+FBhMPGPZxoLKNToNfioiY1iUe7SsyiLLJw7wi7D sUj9vlqngkPkwY6Bks0Vd1hCodZcIs7VnZNhI8fi0bSgNlLjTWgF72r25l1wIe2VRgkg OGeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764330621; x=1764935421; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=yJMcbJhmEft44YGUVU5oT2OrgHS+5MXxcLWEHwsA208=; b=TfeqBxU6IRXUYQMbnkpAP51hKeaYlYEkDxY/Hlu2VJ3Q2vpmO/8XZHJy4bm1z+N3lU VHoSy37yyhUmH1GvlPmIoV6LzTH1hgS0Wjki7HqK92OxtquWfH8Q/vZhpkUXv6xsKBMt IFs3Tis0Y3cNOYJkZtlBfaptm99Qi2Xx5SjeiyiSBJcASTFETiypdZkvPKy3UnkOfg0V G133hXbFGeG92eSZNDMqq5Qah1ejE420F5oKa3m9vdWxOcAVSksPP50vDudrvcs1/sgA 1P8xO1T1b40a3YOkMEGPUst0OCixE82xbd67mdmXQh0YnU1P8UQ70XLcEpE7fKm0Mwgd 9GWw== X-Gm-Message-State: AOJu0YxLaNw37gMVo8jexlamlOIbHMzLt6TP7qijUNQ84EUlLJZxMy7t oTIAZLg9DpclcIE7On14H2WlzjX8fQr7aGYw0kLuSiMPEkItJILyE+uCmraCwgFEeD9PuJl1wpM bais= X-Gm-Gg: ASbGncusCsCAnqgWCxiFyEqesuRvK4dT5oKZ47j3+5PsmAl8ijt77jjefoakWy6Z+J9 aELO1gVp+Y37uy5yHdCiVRsIuLuzEXVbhSyRH46NnhcSC8otf4NtEJKSi+FTBq0SIKiHuEUhGRL FeGOD4lkaLwmQavmXvIOghSoCJ5k/8NaLgQYyzFQlif22nHnTLUTY+WYGkARf8nbyeJ/2TEG29H 51r3DYyXCTJaYWUhl2Nvx7iKL/8qhoG3ih5llUGL/KlFRmRvQOxHqCfNDagM3MMFeYfuqeP5k+x M/C+VaBhKkVFlwrRuun4lytICl0Ut1adsrL93UGBEWRtrJdpAKjMhFXt2F4ihrYu0MfLQdX2o+g 1OX+SJPsraNJNmPhTvbNkNkV3zZ40hc/6iEvdlo/iODogtwB/CAUfcNtVIqnTcbxnHPwOsgEEfC pGABiyVeF/fdFdF51z8BnvdWZ2KiVwEWPpauXkuzhNjXrzEr/C+P4yAjMUubP+kx4N26Y4ecZU1 1I= X-Google-Smtp-Source: AGHT+IEMtYR0kF/W2TzqllSbwEIsaBnb+IXpBnaJj7TIMjBW6skaU6g4aa9XErGSYX7XWx4atIG2Eg== X-Received: by 2002:a05:600c:4691:b0:477:58af:a91d with SMTP id 5b1f17b1804b1-477c10c8e61mr262427185e9.5.1764330620327; Fri, 28 Nov 2025 03:50:20 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1caa86d0sm9126747f8f.39.2025.11.28.03.50.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:50:19 -0800 (PST) Message-ID: Date: Fri, 28 Nov 2025 12:50:17 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 12/14] bfd/ELF: fold BFD_RELOC__J{,U}MP_SLOT From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: Alexandre Oliva , Claudiu Zissulescu , Nick Clifton , "ramana.radhakrishnan@arm.com" , Richard Earnshaw , Hans-Peter Nilsson , "H.J. Lu" , Jon Beniston , Doug Evans , Chenghua Xu , "Maciej W. Rozycki" , Kuan-Lin Chen , Wei-Cheng Wang , Christian Svensson , Stefan Kristiansson , Stafford Horne , Andreas Krebbel , Joseph Myers , Jan-Benedict Glaw , Max Filippov , Sterling Augustine , "David S. Miller" , "Jose E. Marchesi" Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3017.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_STOCKGEN, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP, UPPERCASE_50_75 autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org There's no need to have a separate reloc per arch; just like for other more or less generic ones a single one will (mostly) do. Arm64, C-Sky, and KVX - sadly - are exceptions. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3335,6 +3335,7 @@ enum bfd_reloc_code_real BFD_RELOC_8_PLTOFF, BFD_RELOC_COPY, BFD_RELOC_GLOB_DAT, + BFD_RELOC_JMP_SLOT, BFD_RELOC_IRELATIVE, /* Size relocations. */ @@ -3342,7 +3343,6 @@ enum bfd_reloc_code_real BFD_RELOC_SIZE64, /* Relocations used by 68K ELF. */ - BFD_RELOC_68K_JMP_SLOT, BFD_RELOC_68K_RELATIVE, BFD_RELOC_68K_TLS_GD32, BFD_RELOC_68K_TLS_GD16, @@ -3406,7 +3406,6 @@ enum bfd_reloc_code_real BFD_RELOC_SPARC_PC10, BFD_RELOC_SPARC_PC22, BFD_RELOC_SPARC_WPLT30, - BFD_RELOC_SPARC_JMP_SLOT, BFD_RELOC_SPARC_RELATIVE, BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32, @@ -3735,9 +3734,6 @@ enum bfd_reloc_code_real BFD_RELOC_MICROMIPS_TLS_TPREL_LO16, BFD_RELOC_MIPS_EH, - /* MIPS ELF relocations (VxWorks and PLT extensions). */ - BFD_RELOC_MIPS_JUMP_SLOT, - /* Moxie ELF relocations. */ BFD_RELOC_MOXIE_10_PCREL, @@ -3808,9 +3804,6 @@ enum bfd_reloc_code_real bytes in the instruction. */ BFD_RELOC_MN10300_GOT16, - /* Create PLT entry. */ - BFD_RELOC_MN10300_JMP_SLOT, - /* Adjust by program base. */ BFD_RELOC_MN10300_RELATIVE, @@ -3845,7 +3838,6 @@ enum bfd_reloc_code_real /* i386/elf relocations. */ BFD_RELOC_386_GOT32, BFD_RELOC_386_PLT32, - BFD_RELOC_386_JUMP_SLOT, BFD_RELOC_386_RELATIVE, BFD_RELOC_386_GOTOFF, BFD_RELOC_386_GOTPC, @@ -3868,7 +3860,6 @@ enum bfd_reloc_code_real /* x86-64/elf relocations. */ BFD_RELOC_X86_64_GOT32, - BFD_RELOC_X86_64_JUMP_SLOT, BFD_RELOC_X86_64_RELATIVE, BFD_RELOC_X86_64_GOTPCREL, BFD_RELOC_X86_64_32S, @@ -3941,7 +3932,6 @@ enum bfd_reloc_code_real BFD_RELOC_PPC_BA16, BFD_RELOC_PPC_BA16_BRTAKEN, BFD_RELOC_PPC_BA16_BRNTAKEN, - BFD_RELOC_PPC_JMP_SLOT, BFD_RELOC_PPC_RELATIVE, BFD_RELOC_PPC_LOCAL24PC, BFD_RELOC_PPC_EMB_NADDR32, @@ -4198,7 +4188,6 @@ enum bfd_reloc_code_real BFD_RELOC_ARM_TLS_IE32_FDPIC, /* Relocations for setting up GOTs and PLTs for shared libraries. */ - BFD_RELOC_ARM_JUMP_SLOT, BFD_RELOC_ARM_GOT32, BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, @@ -4319,7 +4308,6 @@ enum bfd_reloc_code_real BFD_RELOC_SH_LABEL, BFD_RELOC_SH_LOOP_START, BFD_RELOC_SH_LOOP_END, - BFD_RELOC_SH_JMP_SLOT, BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC, BFD_RELOC_SH_GOT_LOW16, @@ -4428,7 +4416,6 @@ enum bfd_reloc_code_real BFD_RELOC_ARC_32_PCREL, BFD_RELOC_ARC_GOT32, BFD_RELOC_ARC_GOTPC32, - BFD_RELOC_ARC_JMP_SLOT, BFD_RELOC_ARC_RELATIVE, BFD_RELOC_ARC_GOTOFF, BFD_RELOC_ARC_GOTPC, @@ -4668,7 +4655,6 @@ enum bfd_reloc_code_real /* For PIC. */ BFD_RELOC_M32R_GOT24, BFD_RELOC_M32R_26_PLTREL, - BFD_RELOC_M32R_JMP_SLOT, BFD_RELOC_M32R_RELATIVE, BFD_RELOC_M32R_GOTOFF, BFD_RELOC_M32R_GOTOFF_HI_ULO, @@ -4763,7 +4749,6 @@ enum bfd_reloc_code_real BFD_RELOC_NDS32_GOT20, BFD_RELOC_NDS32_9_PLTREL, BFD_RELOC_NDS32_25_PLTREL, - BFD_RELOC_NDS32_JMP_SLOT, BFD_RELOC_NDS32_RELATIVE, BFD_RELOC_NDS32_GOTOFF, BFD_RELOC_NDS32_GOTOFF_HI20, @@ -5001,7 +4986,6 @@ enum bfd_reloc_code_real BFD_RELOC_V850_32_GOT, BFD_RELOC_V850_22_PLT_PCREL, BFD_RELOC_V850_32_PLT_PCREL, - BFD_RELOC_V850_JMP_SLOT, BFD_RELOC_V850_RELATIVE, BFD_RELOC_V850_16_GOTOFF, BFD_RELOC_V850_32_GOTOFF, @@ -5063,7 +5047,6 @@ enum bfd_reloc_code_real BFD_RELOC_C6000_SBR_GOT_H16_W, BFD_RELOC_C6000_DSBT_INDEX, BFD_RELOC_C6000_PREL31, - BFD_RELOC_C6000_JUMP_SLOT, BFD_RELOC_C6000_EHTYPE, BFD_RELOC_C6000_PCR_H16, BFD_RELOC_C6000_PCR_L16, @@ -5152,7 +5135,6 @@ enum bfd_reloc_code_real BFD_RELOC_METAG_RELBRANCH_PLT, BFD_RELOC_METAG_GOTOFF, BFD_RELOC_METAG_PLT, - BFD_RELOC_METAG_JMP_SLOT, BFD_RELOC_METAG_RELATIVE, BFD_RELOC_METAG_TLS_GD, BFD_RELOC_METAG_TLS_LDM, @@ -5477,9 +5459,6 @@ enum bfd_reloc_code_real /* 12 bit GOT offset. */ BFD_RELOC_390_GOT12, - /* Create PLT entry. */ - BFD_RELOC_390_JMP_SLOT, - /* Adjust by program base. */ BFD_RELOC_390_RELATIVE, @@ -5939,7 +5918,6 @@ enum bfd_reloc_code_real BFD_RELOC_CRIS_UNSIGNED_4, /* Relocs used in ELF shared libraries for CRIS. */ - BFD_RELOC_CRIS_JUMP_SLOT, BFD_RELOC_CRIS_RELATIVE, /* 32-bit offset to symbol-entry within GOT. */ @@ -5993,7 +5971,6 @@ enum bfd_reloc_code_real BFD_RELOC_OR1K_PLT26, BFD_RELOC_OR1K_PLTA26, BFD_RELOC_OR1K_GOTOFF_SLO16, - BFD_RELOC_OR1K_JMP_SLOT, BFD_RELOC_OR1K_RELATIVE, BFD_RELOC_OR1K_TLS_GD_HI16, BFD_RELOC_OR1K_TLS_GD_LO16, @@ -6036,7 +6013,6 @@ enum bfd_reloc_code_real BFD_RELOC_RELC, /* Relocations used by VAX ELF. */ - BFD_RELOC_VAX_JMP_SLOT, BFD_RELOC_VAX_RELATIVE, /* Morpho MT - 16 bit immediate relocation. */ @@ -6129,7 +6105,6 @@ enum bfd_reloc_code_real BFD_RELOC_XTENSA_RTLD, /* Xtensa relocations for ELF shared objects. */ - BFD_RELOC_XTENSA_JMP_SLOT, BFD_RELOC_XTENSA_RELATIVE, /* Xtensa relocation used in ELF object files for symbols that may @@ -6268,7 +6243,6 @@ enum bfd_reloc_code_real BFD_RELOC_LM32_16_GOT, BFD_RELOC_LM32_GOTOFF_HI16, BFD_RELOC_LM32_GOTOFF_LO16, - BFD_RELOC_LM32_JMP_SLOT, BFD_RELOC_LM32_RELATIVE, /* Difference between two section addreses. Must be followed by a @@ -6963,7 +6937,6 @@ enum bfd_reloc_code_real BFD_RELOC_AARCH64_BRANCH9, /* Tilera TILEPro Relocations. */ - BFD_RELOC_TILEPRO_JMP_SLOT, BFD_RELOC_TILEPRO_RELATIVE, BFD_RELOC_TILEPRO_BROFF_X1, BFD_RELOC_TILEPRO_JOFFLONG_X1, @@ -7049,7 +7022,6 @@ enum bfd_reloc_code_real BFD_RELOC_TILEGX_HW0_LAST, BFD_RELOC_TILEGX_HW1_LAST, BFD_RELOC_TILEGX_HW2_LAST, - BFD_RELOC_TILEGX_JMP_SLOT, BFD_RELOC_TILEGX_RELATIVE, BFD_RELOC_TILEGX_BROFF_X1, BFD_RELOC_TILEGX_JUMPOFF_X1, --- a/bfd/elf-m10300.c +++ b/bfd/elf-m10300.c @@ -664,7 +664,7 @@ static const struct mn10300_reloc_map mn { BFD_RELOC_MN10300_GOT16, R_MN10300_GOT16 }, { BFD_RELOC_COPY, R_MN10300_COPY }, { BFD_RELOC_GLOB_DAT, R_MN10300_GLOB_DAT }, - { BFD_RELOC_MN10300_JMP_SLOT, R_MN10300_JMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_MN10300_JMP_SLOT }, { BFD_RELOC_MN10300_RELATIVE, R_MN10300_RELATIVE }, { BFD_RELOC_MN10300_TLS_GD, R_MN10300_TLS_GD }, { BFD_RELOC_MN10300_TLS_LD, R_MN10300_TLS_LD }, --- a/bfd/elf32-arc.c +++ b/bfd/elf32-arc.c @@ -387,6 +387,7 @@ arc_elf_link_hash_table_create (bfd *abf #define BFD_RELOC_ARC_PLT32 BFD_RELOC_32_PLT_PCREL #define BFD_RELOC_ARC_COPY BFD_RELOC_COPY #define BFD_RELOC_ARC_GLOB_DAT BFD_RELOC_GLOB_DAT +#define BFD_RELOC_ARC_JMP_SLOT BFD_RELOC_JMP_SLOT static const struct arc_reloc_map arc_reloc_map[] = { --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -2017,7 +2017,7 @@ static const struct elf32_arm_reloc_map {BFD_RELOC_THUMB_PCREL_BRANCH9, R_ARM_THM_JUMP8}, {BFD_RELOC_THUMB_PCREL_BRANCH7, R_ARM_THM_JUMP6}, {BFD_RELOC_GLOB_DAT, R_ARM_GLOB_DAT}, - {BFD_RELOC_ARM_JUMP_SLOT, R_ARM_JUMP_SLOT}, + {BFD_RELOC_JMP_SLOT, R_ARM_JUMP_SLOT}, {BFD_RELOC_ARM_RELATIVE, R_ARM_RELATIVE}, {BFD_RELOC_ARM_GOTOFF, R_ARM_GOTOFF32}, {BFD_RELOC_ARM_GOTPC, R_ARM_GOTPC}, --- a/bfd/elf32-cris.c +++ b/bfd/elf32-cris.c @@ -400,7 +400,7 @@ static const struct cris_reloc_map cris_ { BFD_RELOC_VTABLE_ENTRY, R_CRIS_GNU_VTENTRY }, { BFD_RELOC_COPY, R_CRIS_COPY }, { BFD_RELOC_GLOB_DAT, R_CRIS_GLOB_DAT }, - { BFD_RELOC_CRIS_JUMP_SLOT, R_CRIS_JUMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_CRIS_JUMP_SLOT }, { BFD_RELOC_CRIS_RELATIVE, R_CRIS_RELATIVE }, { BFD_RELOC_CRIS_16_GOT, R_CRIS_16_GOT }, { BFD_RELOC_CRIS_32_GOT, R_CRIS_32_GOT }, --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -224,8 +224,8 @@ elf_i386_reloc_type_lookup (bfd *abfd, TRACE ("BFD_RELOC_GLOB_DAT"); return &elf_howto_table[R_386_GLOB_DAT]; - case BFD_RELOC_386_JUMP_SLOT: - TRACE ("BFD_RELOC_386_JUMP_SLOT"); + case BFD_RELOC_JMP_SLOT: + TRACE ("BFD_RELOC_JMP_SLOT"); return &elf_howto_table[R_386_JUMP_SLOT]; case BFD_RELOC_386_RELATIVE: --- a/bfd/elf32-lm32.c +++ b/bfd/elf32-lm32.c @@ -446,7 +446,7 @@ static const struct lm32_reloc_map lm32_ { BFD_RELOC_LM32_GOTOFF_LO16, R_LM32_GOTOFF_LO16 }, { BFD_RELOC_COPY, R_LM32_COPY }, { BFD_RELOC_GLOB_DAT, R_LM32_GLOB_DAT }, - { BFD_RELOC_LM32_JMP_SLOT, R_LM32_JMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_LM32_JMP_SLOT }, { BFD_RELOC_LM32_RELATIVE, R_LM32_RELATIVE }, }; --- a/bfd/elf32-m32r.c +++ b/bfd/elf32-m32r.c @@ -1213,7 +1213,7 @@ static const struct m32r_reloc_map m32r_ { BFD_RELOC_M32R_26_PLTREL, R_M32R_26_PLTREL }, { BFD_RELOC_COPY, R_M32R_COPY }, { BFD_RELOC_GLOB_DAT, R_M32R_GLOB_DAT }, - { BFD_RELOC_M32R_JMP_SLOT, R_M32R_JMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_M32R_JMP_SLOT }, { BFD_RELOC_M32R_RELATIVE, R_M32R_RELATIVE }, { BFD_RELOC_M32R_GOTOFF, R_M32R_GOTOFF }, { BFD_RELOC_M32R_GOTPC24, R_M32R_GOTPC24 }, --- a/bfd/elf32-m68k.c +++ b/bfd/elf32-m68k.c @@ -390,7 +390,7 @@ static const struct { BFD_RELOC_8_PLTOFF, R_68K_PLT8O }, { BFD_RELOC_NONE, R_68K_COPY }, { BFD_RELOC_GLOB_DAT, R_68K_GLOB_DAT }, - { BFD_RELOC_68K_JMP_SLOT, R_68K_JMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_68K_JMP_SLOT }, { BFD_RELOC_68K_RELATIVE, R_68K_RELATIVE }, { BFD_RELOC_CTOR, R_68K_32 }, { BFD_RELOC_VTABLE_INHERIT, R_68K_GNU_VTINHERIT }, --- a/bfd/elf32-metag.c +++ b/bfd/elf32-metag.c @@ -721,7 +721,7 @@ static const struct metag_reloc_map meta { BFD_RELOC_METAG_GOTOFF, R_METAG_GOTOFF }, { BFD_RELOC_METAG_PLT, R_METAG_PLT }, { BFD_RELOC_COPY, R_METAG_COPY }, - { BFD_RELOC_METAG_JMP_SLOT, R_METAG_JMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_METAG_JMP_SLOT }, { BFD_RELOC_METAG_RELATIVE, R_METAG_RELATIVE }, { BFD_RELOC_GLOB_DAT, R_METAG_GLOB_DAT }, { BFD_RELOC_METAG_TLS_GD, R_METAG_TLS_GD }, --- a/bfd/elf32-mips.c +++ b/bfd/elf32-mips.c @@ -3591,7 +3591,7 @@ mips_elf32_reloc_type_lookup (bfd *abfd, return &elf_mips_gnu_pcrel32; case BFD_RELOC_COPY: return &elf_mips_copy_howto; - case BFD_RELOC_MIPS_JUMP_SLOT: + case BFD_RELOC_JMP_SLOT: return &elf_mips_jump_slot_howto; case BFD_RELOC_MIPS_EH: return &elf_mips_eh_howto; --- a/bfd/elf32-nds32.c +++ b/bfd/elf32-nds32.c @@ -3115,7 +3115,7 @@ static const struct nds32_reloc_map_entr {BFD_RELOC_NDS32_25_PLTREL, R_NDS32_25_PLTREL}, {BFD_RELOC_COPY, R_NDS32_COPY}, {BFD_RELOC_GLOB_DAT, R_NDS32_GLOB_DAT}, - {BFD_RELOC_NDS32_JMP_SLOT, R_NDS32_JMP_SLOT}, + {BFD_RELOC_JMP_SLOT, R_NDS32_JMP_SLOT}, {BFD_RELOC_NDS32_RELATIVE, R_NDS32_RELATIVE}, {BFD_RELOC_NDS32_GOTOFF, R_NDS32_GOTOFF}, {BFD_RELOC_NDS32_GOTOFF_HI20, R_NDS32_GOTOFF_HI20}, --- a/bfd/elf32-or1k.c +++ b/bfd/elf32-or1k.c @@ -877,7 +877,7 @@ static const struct or1k_reloc_map or1k_ { BFD_RELOC_OR1K_PLT26, R_OR1K_PLT26 }, { BFD_RELOC_GLOB_DAT, R_OR1K_GLOB_DAT }, { BFD_RELOC_COPY, R_OR1K_COPY }, - { BFD_RELOC_OR1K_JMP_SLOT, R_OR1K_JMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_OR1K_JMP_SLOT }, { BFD_RELOC_OR1K_RELATIVE, R_OR1K_RELATIVE }, { BFD_RELOC_OR1K_TLS_GD_HI16, R_OR1K_TLS_GD_HI16 }, { BFD_RELOC_OR1K_TLS_GD_LO16, R_OR1K_TLS_GD_LO16 }, --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -207,7 +207,7 @@ elf_s390_reloc_type_lookup (bfd *abfd AT return &elf_howto_table[(int) R_390_COPY]; case BFD_RELOC_GLOB_DAT: return &elf_howto_table[(int) R_390_GLOB_DAT]; - case BFD_RELOC_390_JMP_SLOT: + case BFD_RELOC_JMP_SLOT: return &elf_howto_table[(int) R_390_JMP_SLOT]; case BFD_RELOC_390_RELATIVE: return &elf_howto_table[(int) R_390_RELATIVE]; --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -357,7 +357,7 @@ static const struct elf_reloc_map sh_rel { BFD_RELOC_32_PLT_PCREL, R_SH_PLT32 }, { BFD_RELOC_COPY, R_SH_COPY }, { BFD_RELOC_GLOB_DAT, R_SH_GLOB_DAT }, - { BFD_RELOC_SH_JMP_SLOT, R_SH_JMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_SH_JMP_SLOT }, { BFD_RELOC_SH_RELATIVE, R_SH_RELATIVE }, { BFD_RELOC_32_GOTOFF, R_SH_GOTOFF }, { BFD_RELOC_SH_GOTPC, R_SH_GOTPC }, --- a/bfd/elf32-tic6x.c +++ b/bfd/elf32-tic6x.c @@ -1423,7 +1423,7 @@ static const tic6x_reloc_map elf32_tic6x { BFD_RELOC_C6000_DSBT_INDEX, R_C6000_DSBT_INDEX }, { BFD_RELOC_C6000_PREL31, R_C6000_PREL31 }, { BFD_RELOC_COPY, R_C6000_COPY }, - { BFD_RELOC_C6000_JUMP_SLOT, R_C6000_JUMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_C6000_JUMP_SLOT }, { BFD_RELOC_C6000_EHTYPE, R_C6000_EHTYPE }, { BFD_RELOC_C6000_PCR_H16, R_C6000_PCR_H16 }, { BFD_RELOC_C6000_PCR_L16, R_C6000_PCR_L16 }, --- a/bfd/elf32-tilepro.c +++ b/bfd/elf32-tilepro.c @@ -585,7 +585,7 @@ static const reloc_map tilepro_reloc_map /* Custom relocations. */ TH_REMAP (BFD_RELOC_COPY, R_TILEPRO_COPY) TH_REMAP (BFD_RELOC_GLOB_DAT, R_TILEPRO_GLOB_DAT) - TH_REMAP (BFD_RELOC_TILEPRO_JMP_SLOT, R_TILEPRO_JMP_SLOT) + TH_REMAP (BFD_RELOC_JMP_SLOT, R_TILEPRO_JMP_SLOT) TH_REMAP (BFD_RELOC_TILEPRO_RELATIVE, R_TILEPRO_RELATIVE) TH_REMAP (BFD_RELOC_TILEPRO_BROFF_X1, R_TILEPRO_BROFF_X1) TH_REMAP (BFD_RELOC_TILEPRO_JOFFLONG_X1, R_TILEPRO_JOFFLONG_X1) --- a/bfd/elf32-v850.c +++ b/bfd/elf32-v850.c @@ -1738,7 +1738,7 @@ static const struct v850_elf_reloc_map v { BFD_RELOC_V850_32_PLT_PCREL, R_V850_32_PLT }, { BFD_RELOC_COPY, R_V850_COPY }, { BFD_RELOC_GLOB_DAT, R_V850_GLOB_DAT }, - { BFD_RELOC_V850_JMP_SLOT, R_V850_JMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_V850_JMP_SLOT }, { BFD_RELOC_V850_RELATIVE, R_V850_RELATIVE }, { BFD_RELOC_V850_16_GOTOFF, R_V850_16_GOTOFF }, { BFD_RELOC_V850_32_GOTOFF, R_V850_32_GOTOFF }, --- a/bfd/elf32-vax.c +++ b/bfd/elf32-vax.c @@ -312,7 +312,7 @@ static const struct { BFD_RELOC_32_PLT_PCREL, R_VAX_PLT32 }, { BFD_RELOC_NONE, R_VAX_COPY }, { BFD_RELOC_GLOB_DAT, R_VAX_GLOB_DAT }, - { BFD_RELOC_VAX_JMP_SLOT, R_VAX_JMP_SLOT }, + { BFD_RELOC_JMP_SLOT, R_VAX_JMP_SLOT }, { BFD_RELOC_VAX_RELATIVE, R_VAX_RELATIVE }, { BFD_RELOC_CTOR, R_VAX_32 }, { BFD_RELOC_VTABLE_INHERIT, R_VAX_GNU_VTINHERIT }, --- a/bfd/elf32-xtensa.c +++ b/bfd/elf32-xtensa.c @@ -418,8 +418,8 @@ elf_xtensa_reloc_type_lookup (bfd *abfd TRACE ("BFD_RELOC_GLOB_DAT"); return &elf_howto_table[(unsigned) R_XTENSA_GLOB_DAT ]; - case BFD_RELOC_XTENSA_JMP_SLOT: - TRACE ("BFD_RELOC_XTENSA_JMP_SLOT"); + case BFD_RELOC_JMP_SLOT: + TRACE ("BFD_RELOC_JMP_SLOT"); return &elf_howto_table[(unsigned) R_XTENSA_JMP_SLOT ]; case BFD_RELOC_XTENSA_RELATIVE: --- a/bfd/elf64-mips.c +++ b/bfd/elf64-mips.c @@ -3852,7 +3852,7 @@ bfd_elf64_bfd_reloc_type_lookup (bfd *ab return &elf_mips_eh_howto; case BFD_RELOC_COPY: return &elf_mips_copy_howto; - case BFD_RELOC_MIPS_JUMP_SLOT: + case BFD_RELOC_JMP_SLOT: return &elf_mips_jump_slot_howto; default: bfd_set_error (bfd_error_bad_value); --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -221,7 +221,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_COPY]; case BFD_RELOC_GLOB_DAT: return &elf_howto_table[(int) R_390_GLOB_DAT]; - case BFD_RELOC_390_JMP_SLOT: + case BFD_RELOC_JMP_SLOT: return &elf_howto_table[(int) R_390_JMP_SLOT]; case BFD_RELOC_390_RELATIVE: return &elf_howto_table[(int) R_390_RELATIVE]; --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -236,7 +236,7 @@ static const struct elf_reloc_map x86_64 { BFD_RELOC_32_PLT_PCREL, R_X86_64_PLT32,}, { BFD_RELOC_COPY, R_X86_64_COPY, }, { BFD_RELOC_GLOB_DAT, R_X86_64_GLOB_DAT, }, - { BFD_RELOC_X86_64_JUMP_SLOT, R_X86_64_JUMP_SLOT, }, + { BFD_RELOC_JMP_SLOT, R_X86_64_JUMP_SLOT, }, { BFD_RELOC_X86_64_RELATIVE, R_X86_64_RELATIVE, }, { BFD_RELOC_X86_64_GOTPCREL, R_X86_64_GOTPCREL, }, { BFD_RELOC_32, R_X86_64_32, }, --- a/bfd/elfxx-sparc.c +++ b/bfd/elfxx-sparc.c @@ -378,7 +378,7 @@ _bfd_sparc_elf_reloc_type_lookup (bfd *a case BFD_RELOC_GLOB_DAT: return &_bfd_sparc_elf_howto_table[R_SPARC_GLOB_DAT]; - case BFD_RELOC_SPARC_JMP_SLOT: + case BFD_RELOC_JMP_SLOT: return &_bfd_sparc_elf_howto_table[R_SPARC_JMP_SLOT]; case BFD_RELOC_SPARC_RELATIVE: --- a/bfd/elfxx-tilegx.c +++ b/bfd/elfxx-tilegx.c @@ -652,6 +652,7 @@ static const reloc_map tilegx_reloc_map TH_REMAP (BFD_RELOC_8_PCREL, R_TILEGX_8_PCREL) TH_REMAP (BFD_RELOC_COPY, R_TILEGX_COPY) TH_REMAP (BFD_RELOC_GLOB_DAT, R_TILEGX_GLOB_DAT) + TH_REMAP (BFD_RELOC_JMP_SLOT, R_TILEGX_JMP_SLOT) #define SIMPLE_REMAP(t) TH_REMAP (BFD_RELOC_##t, R_##t) @@ -663,7 +664,6 @@ static const reloc_map tilegx_reloc_map SIMPLE_REMAP (TILEGX_HW0_LAST) SIMPLE_REMAP (TILEGX_HW1_LAST) SIMPLE_REMAP (TILEGX_HW2_LAST) - SIMPLE_REMAP (TILEGX_JMP_SLOT) SIMPLE_REMAP (TILEGX_RELATIVE) SIMPLE_REMAP (TILEGX_BROFF_X1) SIMPLE_REMAP (TILEGX_JUMPOFF_X1) --- a/bfd/elfn32-mips.c +++ b/bfd/elfn32-mips.c @@ -3687,7 +3687,7 @@ bfd_elf32_bfd_reloc_type_lookup (bfd *ab return &elf_mips_eh_howto; case BFD_RELOC_COPY: return &elf_mips_copy_howto; - case BFD_RELOC_MIPS_JUMP_SLOT: + case BFD_RELOC_JMP_SLOT: return &elf_mips_jump_slot_howto; default: bfd_set_error (bfd_error_bad_value); --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1101,10 +1101,10 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_8_PLTOFF", "BFD_RELOC_COPY", "BFD_RELOC_GLOB_DAT", + "BFD_RELOC_JMP_SLOT", "BFD_RELOC_IRELATIVE", "BFD_RELOC_SIZE32", "BFD_RELOC_SIZE64", - "BFD_RELOC_68K_JMP_SLOT", "BFD_RELOC_68K_RELATIVE", "BFD_RELOC_68K_TLS_GD32", "BFD_RELOC_68K_TLS_GD16", @@ -1146,7 +1146,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SPARC_PC10", "BFD_RELOC_SPARC_PC22", "BFD_RELOC_SPARC_WPLT30", - "BFD_RELOC_SPARC_JMP_SLOT", "BFD_RELOC_SPARC_RELATIVE", "BFD_RELOC_SPARC_UA16", "BFD_RELOC_SPARC_UA32", @@ -1344,7 +1343,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MIPS_TLS_TPREL_LO16", "BFD_RELOC_MICROMIPS_TLS_TPREL_LO16", "BFD_RELOC_MIPS_EH", - "BFD_RELOC_MIPS_JUMP_SLOT", "BFD_RELOC_MOXIE_10_PCREL", "BFD_RELOC_FT32_10", "BFD_RELOC_FT32_20", @@ -1398,7 +1396,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_GOT32", "BFD_RELOC_MN10300_GOT24", "BFD_RELOC_MN10300_GOT16", - "BFD_RELOC_MN10300_JMP_SLOT", "BFD_RELOC_MN10300_RELATIVE", "BFD_RELOC_MN10300_SYM_DIFF", "BFD_RELOC_MN10300_ALIGN", @@ -1415,7 +1412,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_16_PCREL", "BFD_RELOC_386_GOT32", "BFD_RELOC_386_PLT32", - "BFD_RELOC_386_JUMP_SLOT", "BFD_RELOC_386_RELATIVE", "BFD_RELOC_386_GOTOFF", "BFD_RELOC_386_GOTPC", @@ -1436,7 +1432,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_386_TLS_DESC", "BFD_RELOC_386_GOT32X", "BFD_RELOC_X86_64_GOT32", - "BFD_RELOC_X86_64_JUMP_SLOT", "BFD_RELOC_X86_64_RELATIVE", "BFD_RELOC_X86_64_GOTPCREL", "BFD_RELOC_X86_64_32S", @@ -1501,7 +1496,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_PPC_BA16", "BFD_RELOC_PPC_BA16_BRTAKEN", "BFD_RELOC_PPC_BA16_BRNTAKEN", - "BFD_RELOC_PPC_JMP_SLOT", "BFD_RELOC_PPC_RELATIVE", "BFD_RELOC_PPC_LOCAL24PC", "BFD_RELOC_PPC_EMB_NADDR32", @@ -1695,7 +1689,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARM_TLS_GD32_FDPIC", "BFD_RELOC_ARM_TLS_LDM32_FDPIC", "BFD_RELOC_ARM_TLS_IE32_FDPIC", - "BFD_RELOC_ARM_JUMP_SLOT", "BFD_RELOC_ARM_GOT32", "BFD_RELOC_ARM_RELATIVE", "BFD_RELOC_ARM_GOTOFF", @@ -1803,7 +1796,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SH_LABEL", "BFD_RELOC_SH_LOOP_START", "BFD_RELOC_SH_LOOP_END", - "BFD_RELOC_SH_JMP_SLOT", "BFD_RELOC_SH_RELATIVE", "BFD_RELOC_SH_GOTPC", "BFD_RELOC_SH_GOT_LOW16", @@ -1910,7 +1902,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARC_32_PCREL", "BFD_RELOC_ARC_GOT32", "BFD_RELOC_ARC_GOTPC32", - "BFD_RELOC_ARC_JMP_SLOT", "BFD_RELOC_ARC_RELATIVE", "BFD_RELOC_ARC_GOTOFF", "BFD_RELOC_ARC_GOTPC", @@ -2009,7 +2000,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_M32R_SDA16", "BFD_RELOC_M32R_GOT24", "BFD_RELOC_M32R_26_PLTREL", - "BFD_RELOC_M32R_JMP_SLOT", "BFD_RELOC_M32R_RELATIVE", "BFD_RELOC_M32R_GOTOFF", "BFD_RELOC_M32R_GOTOFF_HI_ULO", @@ -2045,7 +2035,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_NDS32_GOT20", "BFD_RELOC_NDS32_9_PLTREL", "BFD_RELOC_NDS32_25_PLTREL", - "BFD_RELOC_NDS32_JMP_SLOT", "BFD_RELOC_NDS32_RELATIVE", "BFD_RELOC_NDS32_GOTOFF", "BFD_RELOC_NDS32_GOTOFF_HI20", @@ -2185,7 +2174,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_V850_32_GOT", "BFD_RELOC_V850_22_PLT_PCREL", "BFD_RELOC_V850_32_PLT_PCREL", - "BFD_RELOC_V850_JMP_SLOT", "BFD_RELOC_V850_RELATIVE", "BFD_RELOC_V850_16_GOTOFF", "BFD_RELOC_V850_32_GOTOFF", @@ -2219,7 +2207,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_C6000_SBR_GOT_H16_W", "BFD_RELOC_C6000_DSBT_INDEX", "BFD_RELOC_C6000_PREL31", - "BFD_RELOC_C6000_JUMP_SLOT", "BFD_RELOC_C6000_EHTYPE", "BFD_RELOC_C6000_PCR_H16", "BFD_RELOC_C6000_PCR_L16", @@ -2279,7 +2266,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_METAG_RELBRANCH_PLT", "BFD_RELOC_METAG_GOTOFF", "BFD_RELOC_METAG_PLT", - "BFD_RELOC_METAG_JMP_SLOT", "BFD_RELOC_METAG_RELATIVE", "BFD_RELOC_METAG_TLS_GD", "BFD_RELOC_METAG_TLS_LDM", @@ -2464,7 +2450,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_RX_RELAX", "BFD_RELOC_390_12", "BFD_RELOC_390_GOT12", - "BFD_RELOC_390_JMP_SLOT", "BFD_RELOC_390_RELATIVE", "BFD_RELOC_390_GOTPC", "BFD_RELOC_390_GOT16", @@ -2707,7 +2692,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_CRIS_UNSIGNED_16", "BFD_RELOC_CRIS_LAPCQ_OFFSET", "BFD_RELOC_CRIS_UNSIGNED_4", - "BFD_RELOC_CRIS_JUMP_SLOT", "BFD_RELOC_CRIS_RELATIVE", "BFD_RELOC_CRIS_32_GOT", "BFD_RELOC_CRIS_16_GOT", @@ -2742,7 +2726,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_OR1K_PLT26", "BFD_RELOC_OR1K_PLTA26", "BFD_RELOC_OR1K_GOTOFF_SLO16", - "BFD_RELOC_OR1K_JMP_SLOT", "BFD_RELOC_OR1K_RELATIVE", "BFD_RELOC_OR1K_TLS_GD_HI16", "BFD_RELOC_OR1K_TLS_GD_LO16", @@ -2777,7 +2760,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_XSTORMY16_24", "BFD_RELOC_XSTORMY16_FPTR16", "BFD_RELOC_RELC", - "BFD_RELOC_VAX_JMP_SLOT", "BFD_RELOC_VAX_RELATIVE", "BFD_RELOC_MT_PC16", "BFD_RELOC_MT_HI16", @@ -2825,7 +2807,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_IQ2000_OFFSET_21", "BFD_RELOC_IQ2000_UHI16", "BFD_RELOC_XTENSA_RTLD", - "BFD_RELOC_XTENSA_JMP_SLOT", "BFD_RELOC_XTENSA_RELATIVE", "BFD_RELOC_XTENSA_PLT", "BFD_RELOC_XTENSA_DIFF8", @@ -2895,7 +2876,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_LM32_16_GOT", "BFD_RELOC_LM32_GOTOFF_HI16", "BFD_RELOC_LM32_GOTOFF_LO16", - "BFD_RELOC_LM32_JMP_SLOT", "BFD_RELOC_LM32_RELATIVE", "BFD_RELOC_MACH_O_SECTDIFF", "BFD_RELOC_MACH_O_LOCAL_SECTDIFF", @@ -3147,7 +3127,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC", "BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC", "BFD_RELOC_AARCH64_BRANCH9", - "BFD_RELOC_TILEPRO_JMP_SLOT", "BFD_RELOC_TILEPRO_RELATIVE", "BFD_RELOC_TILEPRO_BROFF_X1", "BFD_RELOC_TILEPRO_JOFFLONG_X1", @@ -3231,7 +3210,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_TILEGX_HW0_LAST", "BFD_RELOC_TILEGX_HW1_LAST", "BFD_RELOC_TILEGX_HW2_LAST", - "BFD_RELOC_TILEGX_JMP_SLOT", "BFD_RELOC_TILEGX_RELATIVE", "BFD_RELOC_TILEGX_BROFF_X1", "BFD_RELOC_TILEGX_JUMPOFF_X1", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -1475,6 +1475,8 @@ ENUMX ENUMX BFD_RELOC_GLOB_DAT ENUMX + BFD_RELOC_JMP_SLOT +ENUMX BFD_RELOC_IRELATIVE ENUMDOC For ELF. @@ -1487,8 +1489,6 @@ ENUMDOC Size relocations. ENUM - BFD_RELOC_68K_JMP_SLOT -ENUMX BFD_RELOC_68K_RELATIVE ENUMX BFD_RELOC_68K_TLS_GD32 @@ -1598,8 +1598,6 @@ ENUMX ENUMX BFD_RELOC_SPARC_WPLT30 ENUMX - BFD_RELOC_SPARC_JMP_SLOT -ENUMX BFD_RELOC_SPARC_RELATIVE ENUMX BFD_RELOC_SPARC_UA16 @@ -2164,11 +2162,6 @@ ENUMDOC MIPS ELF relocations. ENUM - BFD_RELOC_MIPS_JUMP_SLOT -ENUMDOC - MIPS ELF relocations (VxWorks and PLT extensions). - -ENUM BFD_RELOC_MOXIE_10_PCREL ENUMDOC Moxie ELF relocations. @@ -2295,10 +2288,6 @@ ENUMDOC This is a 16bit GOT-relative reloc for the mn10300, offset by two bytes in the instruction. ENUM - BFD_RELOC_MN10300_JMP_SLOT -ENUMDOC - Create PLT entry. -ENUM BFD_RELOC_MN10300_RELATIVE ENUMDOC Adjust by program base. @@ -2349,8 +2338,6 @@ ENUM ENUMX BFD_RELOC_386_PLT32 ENUMX - BFD_RELOC_386_JUMP_SLOT -ENUMX BFD_RELOC_386_RELATIVE ENUMX BFD_RELOC_386_GOTOFF @@ -2394,8 +2381,6 @@ ENUMDOC ENUM BFD_RELOC_X86_64_GOT32 ENUMX - BFD_RELOC_X86_64_JUMP_SLOT -ENUMX BFD_RELOC_X86_64_RELATIVE ENUMX BFD_RELOC_X86_64_GOTPCREL @@ -2536,8 +2521,6 @@ ENUMX ENUMX BFD_RELOC_PPC_BA16_BRNTAKEN ENUMX - BFD_RELOC_PPC_JMP_SLOT -ENUMX BFD_RELOC_PPC_RELATIVE ENUMX BFD_RELOC_PPC_LOCAL24PC @@ -3002,8 +2985,6 @@ ENUMDOC ARM FDPIC specific relocations. ENUM - BFD_RELOC_ARM_JUMP_SLOT -ENUMX BFD_RELOC_ARM_GOT32 ENUMX BFD_RELOC_ARM_RELATIVE @@ -3237,8 +3218,6 @@ ENUMX ENUMX BFD_RELOC_SH_LOOP_END ENUMX - BFD_RELOC_SH_JMP_SLOT -ENUMX BFD_RELOC_SH_RELATIVE ENUMX BFD_RELOC_SH_GOTPC @@ -3454,8 +3433,6 @@ ENUMX ENUMX BFD_RELOC_ARC_GOTPC32 ENUMX - BFD_RELOC_ARC_JMP_SLOT -ENUMX BFD_RELOC_ARC_RELATIVE ENUMX BFD_RELOC_ARC_GOTOFF @@ -3799,8 +3776,6 @@ ENUM ENUMX BFD_RELOC_M32R_26_PLTREL ENUMX - BFD_RELOC_M32R_JMP_SLOT -ENUMX BFD_RELOC_M32R_RELATIVE ENUMX BFD_RELOC_M32R_GOTOFF @@ -3932,8 +3907,6 @@ ENUMX ENUMX BFD_RELOC_NDS32_25_PLTREL ENUMX - BFD_RELOC_NDS32_JMP_SLOT -ENUMX BFD_RELOC_NDS32_RELATIVE ENUMX BFD_RELOC_NDS32_GOTOFF @@ -4313,8 +4286,6 @@ ENUMX ENUMX BFD_RELOC_V850_32_PLT_PCREL ENUMX - BFD_RELOC_V850_JMP_SLOT -ENUMX BFD_RELOC_V850_RELATIVE ENUMX BFD_RELOC_V850_16_GOTOFF @@ -4416,8 +4387,6 @@ ENUMX ENUMX BFD_RELOC_C6000_PREL31 ENUMX - BFD_RELOC_C6000_JUMP_SLOT -ENUMX BFD_RELOC_C6000_EHTYPE ENUMX BFD_RELOC_C6000_PCR_H16 @@ -4569,8 +4538,6 @@ ENUMX ENUMX BFD_RELOC_METAG_PLT ENUMX - BFD_RELOC_METAG_JMP_SLOT -ENUMX BFD_RELOC_METAG_RELATIVE ENUMX BFD_RELOC_METAG_TLS_GD @@ -5086,10 +5053,6 @@ ENUM ENUMDOC 12 bit GOT offset. ENUM - BFD_RELOC_390_JMP_SLOT -ENUMDOC - Create PLT entry. -ENUM BFD_RELOC_390_RELATIVE ENUMDOC Adjust by program base. @@ -5800,8 +5763,6 @@ ENUMDOC These relocs are only used within the CRIS assembler. They are not (at present) written to any object files. ENUM - BFD_RELOC_CRIS_JUMP_SLOT -ENUMX BFD_RELOC_CRIS_RELATIVE ENUMDOC Relocs used in ELF shared libraries for CRIS. @@ -5891,8 +5852,6 @@ ENUMX ENUMX BFD_RELOC_OR1K_GOTOFF_SLO16 ENUMX - BFD_RELOC_OR1K_JMP_SLOT -ENUMX BFD_RELOC_OR1K_RELATIVE ENUMX BFD_RELOC_OR1K_TLS_GD_HI16 @@ -5973,8 +5932,6 @@ ENUMDOC Self-describing complex relocations. ENUM - BFD_RELOC_VAX_JMP_SLOT -ENUMX BFD_RELOC_VAX_RELATIVE ENUMDOC Relocations used by VAX ELF. @@ -6119,8 +6076,6 @@ ENUMDOC objects to indicate that the runtime linker should set the value to one of its own internal functions or data structures. ENUM - BFD_RELOC_XTENSA_JMP_SLOT -ENUMX BFD_RELOC_XTENSA_RELATIVE ENUMDOC Xtensa relocations for ELF shared objects. @@ -6331,8 +6286,6 @@ ENUMX ENUMX BFD_RELOC_LM32_GOTOFF_LO16 ENUMX - BFD_RELOC_LM32_JMP_SLOT -ENUMX BFD_RELOC_LM32_RELATIVE ENUMDOC Lattice Mico32 relocations. @@ -7283,8 +7236,6 @@ ENUMDOC The lowest two bits must be zero and are not stored in the instruction, giving an 11 bit signed byte offset. ENUM - BFD_RELOC_TILEPRO_JMP_SLOT -ENUMX BFD_RELOC_TILEPRO_RELATIVE ENUMX BFD_RELOC_TILEPRO_BROFF_X1 @@ -7453,8 +7404,6 @@ ENUMX ENUMX BFD_RELOC_TILEGX_HW2_LAST ENUMX - BFD_RELOC_TILEGX_JMP_SLOT -ENUMX BFD_RELOC_TILEGX_RELATIVE ENUMX BFD_RELOC_TILEGX_BROFF_X1 --- a/include/elf/cris.h +++ b/include/elf/cris.h @@ -48,7 +48,7 @@ START_RELOC_NUMBERS (elf_cris_reloc_type RELOC_NUMBER (R_CRIS_GLOB_DAT, 10) /* Create PLT entry. Generated by the linker. - The BFD equivalent is BFD_RELOC_CRIS_JUMP_SLOT. */ + The BFD equivalent is BFD_RELOC_JMP_SLOT. */ RELOC_NUMBER (R_CRIS_JUMP_SLOT, 11) /* Adjust by program base. Generated by the linker. From patchwork Fri Nov 28 11:53:16 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125511 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 3E62B3858D39 for ; Fri, 28 Nov 2025 11:54:36 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3E62B3858D39 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=R0zNm0U0 X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x334.google.com (mail-wm1-x334.google.com [IPv6:2a00:1450:4864:20::334]) by sourceware.org (Postfix) with ESMTPS id E3E8B3858D29 for ; Fri, 28 Nov 2025 11:53:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E3E8B3858D29 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org E3E8B3858D29 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::334 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330801; cv=none; b=h9/odirriOpFyT9MQh92B3/LspsKYJOR5RtwJ9cXC5bHHhVlSkSICTGvD5ycbiIGFDj4WU2ekBpuYdzn0FHibSvS5fgSmdnCjxjiHmfemwHKEa3F6Zlp7NvrFzh4NKE6CilDXsbakj8SIkOocHXLvNbgSa9lZzH9z4NB5bXfggk= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330801; c=relaxed/simple; bh=WLBj3tOHBn7NQQwY9yL4P3AKKBuJyPdX4wGQQsQl6TU=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=xubVk6S8Iw61VtjkerRbIylIlgidv9BDiSIs71tddvDZ/uUqeMABWMY1NZbW6pWbq3Vlr6rfaBafTqn8wzYka73a0f2WZFU1UfXfQ34XMl7gwTk0b3kR+PpHI9vYTEoZavipIAs9jG8fKWFe5GemupSvJy6yxdvoyqY2kYr4MSg= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E3E8B3858D29 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-477b91680f8so14416615e9.0 for ; Fri, 28 Nov 2025 03:53:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764330800; x=1764935600; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=kPRh4p0vTrrdJ3yUD9WEwBdMXAK+E34X5vf+1kwVoVA=; b=R0zNm0U0GFsRMLlLT6kPPk+HAPrUaOCJoqd8UmDN9uDZni7ARNBPaUlN0vKJlhbrbR AWIBhRG7wxGvriW8HekINX3sgL9zUZ8oy1QNLbqNbhgNTgvDslwF3DckDe4Pf3m9chXk dGbyuWMeeWqa0BJHv5buiYDy18+ZgZR+Dc9depBBL0tJZmY+3pWGT+tJj90S6VIPLDB1 PA+LCAa+aYrNauR/WzsrAsaFfMzHTNXF91j2gcefs3qcQWGq5vHAIB0PBfk92sxn/LgQ OQJQ/sI/1kZRcd0WaRtYfJ0FZ2jMfR1syJLca+n2pp8dZlNv59MUo8oOkEmHJjKkOVCx Ze9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764330800; x=1764935600; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=kPRh4p0vTrrdJ3yUD9WEwBdMXAK+E34X5vf+1kwVoVA=; b=InrRxczW4R392skXY5/ndRHRatCwI+AuyKogETz1gKXRtzf9yOFuYgwBFlvrExUcxp vqjfHnfczhBIiH1WKpfe7POMuZNCkeoswM5H8SCsBZ2Fe3asNeuuVopH/fSVhgfDd8jD Cfm+5hSB5qEgInznoCnEFU098K5iYW5+YYDPEoBAkiQjAZPMRUkG7lMRK8Y1CQsjzxPc jGk2YTAK0FPirHkf4IiTCQVdUlQFgux57ywC/2JZtenVuDoc3UrMvzyp34oHsYcM6Ao1 R+LefVS4VdliCMA9YtW63Ex9JHKZ5Ul7IBNC3ZNl9FJtBSHdxsBPXKr6B8Oyqz6+Em8Q cz0A== X-Gm-Message-State: AOJu0YyZRFu0EtKOVlmbD0dSQip8o/YODTkp2z5jY0AG7ely333aT1fV l3grdslnHdnq/vZyqbG0yPRtIfWD8qGLQLyx9dhpWWzLhKtvvgE6zIXHlJ9OQ1GbTYHJmGgnrdy TR2o= X-Gm-Gg: ASbGncsuq2XuArDuMk1Rt+jMhnjJGEjKWeb38be7+C3LORDDhldl30nggPCtVMFavg7 catmGoxmzISN8CajhJy2rGv/zVAPSYeW4mkH7y6/SNGbt+BY2Jw2noSbTBG7GEypReMot3KWz6a 8654PwhkoUWZQVUreWm/OyQR9c4ocIOW+u7J67pauF310KjuzHv/IEk74DArNNMpOGPVa9y/rOq BpFwZpurxB5+p3vWxquAwSjgDqe9ECcm4ASVRhWBDJiw78QMLzJhY7cq9wE+ESAxDRXh+XNVOuC h5DckM7AsizBw1nMt3IXPkVXjHF75I/HLnG53S+MKXhL6fmrxXGa/l8uafcwnOIdTpX52A4GXqY gtsNlu3gPn4dhqxyiu8iCDtT6FfSIKiR9QT7A6gqupM5cjekrr2PZ/cXagOfahmYs8nvJXUJmZK O1dAP0/Iy5w3VS0iwLci19UFtS3u4Kg4d2wcCwLEEtjG4Z6oH/mCwYj4+b/qJ3ch3heU9BTDnbP CQ= X-Google-Smtp-Source: AGHT+IHYXnU8qhki3JtJpCjRS5Cj4Vm0LlqAZ+etPlE9ltx2DkLUle6ndru3j67kXWPqtwGFep/CbA== X-Received: by 2002:a05:600c:1912:b0:477:abea:9023 with SMTP id 5b1f17b1804b1-477c10d70f1mr241334845e9.9.1764330799429; Fri, 28 Nov 2025 03:53:19 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4791165b1fesm81069525e9.15.2025.11.28.03.53.17 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:53:19 -0800 (PST) Message-ID: Date: Fri, 28 Nov 2025 12:53:16 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 13/14] bfd/ELF: fold BFD_RELOC__RELATIVE From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: Alexandre Oliva , Claudiu Zissulescu , Nick Clifton , "ramana.radhakrishnan@arm.com" , Richard Earnshaw , Hans-Peter Nilsson , "H.J. Lu" , Jon Beniston , Doug Evans , Kuan-Lin Chen , Wei-Cheng Wang , Christian Svensson , Stefan Kristiansson , Stafford Horne , Andreas Krebbel , Jan-Benedict Glaw , Max Filippov , Sterling Augustine , "David S. Miller" , "Jose E. Marchesi" Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3017.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_STOCKGEN, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP, UPPERCASE_50_75 autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org There's no need to have a separate reloc per arch; just like for other more or less generic ones a single one will (mostly) do. Arm64, C-Sky, and KVX - sadly - are exceptions. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3336,6 +3336,7 @@ enum bfd_reloc_code_real BFD_RELOC_COPY, BFD_RELOC_GLOB_DAT, BFD_RELOC_JMP_SLOT, + BFD_RELOC_RELATIVE, BFD_RELOC_IRELATIVE, /* Size relocations. */ @@ -3343,7 +3344,6 @@ enum bfd_reloc_code_real BFD_RELOC_SIZE64, /* Relocations used by 68K ELF. */ - BFD_RELOC_68K_RELATIVE, BFD_RELOC_68K_TLS_GD32, BFD_RELOC_68K_TLS_GD16, BFD_RELOC_68K_TLS_GD8, @@ -3406,7 +3406,6 @@ enum bfd_reloc_code_real BFD_RELOC_SPARC_PC10, BFD_RELOC_SPARC_PC22, BFD_RELOC_SPARC_WPLT30, - BFD_RELOC_SPARC_RELATIVE, BFD_RELOC_SPARC_UA16, BFD_RELOC_SPARC_UA32, BFD_RELOC_SPARC_UA64, @@ -3804,9 +3803,6 @@ enum bfd_reloc_code_real bytes in the instruction. */ BFD_RELOC_MN10300_GOT16, - /* Adjust by program base. */ - BFD_RELOC_MN10300_RELATIVE, - /* Together with another reloc targeted at the same location, allows for a value that is the difference of two symbols in the same section. */ @@ -3838,7 +3834,6 @@ enum bfd_reloc_code_real /* i386/elf relocations. */ BFD_RELOC_386_GOT32, BFD_RELOC_386_PLT32, - BFD_RELOC_386_RELATIVE, BFD_RELOC_386_GOTOFF, BFD_RELOC_386_GOTPC, BFD_RELOC_386_TLS_TPOFF, @@ -3860,7 +3855,6 @@ enum bfd_reloc_code_real /* x86-64/elf relocations. */ BFD_RELOC_X86_64_GOT32, - BFD_RELOC_X86_64_RELATIVE, BFD_RELOC_X86_64_GOTPCREL, BFD_RELOC_X86_64_32S, BFD_RELOC_X86_64_DTPMOD64, @@ -3932,7 +3926,6 @@ enum bfd_reloc_code_real BFD_RELOC_PPC_BA16, BFD_RELOC_PPC_BA16_BRTAKEN, BFD_RELOC_PPC_BA16_BRNTAKEN, - BFD_RELOC_PPC_RELATIVE, BFD_RELOC_PPC_LOCAL24PC, BFD_RELOC_PPC_EMB_NADDR32, BFD_RELOC_PPC_EMB_NADDR16, @@ -4189,7 +4182,6 @@ enum bfd_reloc_code_real /* Relocations for setting up GOTs and PLTs for shared libraries. */ BFD_RELOC_ARM_GOT32, - BFD_RELOC_ARM_RELATIVE, BFD_RELOC_ARM_GOTOFF, BFD_RELOC_ARM_GOTPC, BFD_RELOC_ARM_GOT_PREL, @@ -4308,7 +4300,6 @@ enum bfd_reloc_code_real BFD_RELOC_SH_LABEL, BFD_RELOC_SH_LOOP_START, BFD_RELOC_SH_LOOP_END, - BFD_RELOC_SH_RELATIVE, BFD_RELOC_SH_GOTPC, BFD_RELOC_SH_GOT_LOW16, BFD_RELOC_SH_GOT_MEDLOW16, @@ -4416,7 +4407,6 @@ enum bfd_reloc_code_real BFD_RELOC_ARC_32_PCREL, BFD_RELOC_ARC_GOT32, BFD_RELOC_ARC_GOTPC32, - BFD_RELOC_ARC_RELATIVE, BFD_RELOC_ARC_GOTOFF, BFD_RELOC_ARC_GOTPC, BFD_RELOC_ARC_S21W_PCREL_PLT, @@ -4655,7 +4645,6 @@ enum bfd_reloc_code_real /* For PIC. */ BFD_RELOC_M32R_GOT24, BFD_RELOC_M32R_26_PLTREL, - BFD_RELOC_M32R_RELATIVE, BFD_RELOC_M32R_GOTOFF, BFD_RELOC_M32R_GOTOFF_HI_ULO, BFD_RELOC_M32R_GOTOFF_HI_SLO, @@ -4749,7 +4738,6 @@ enum bfd_reloc_code_real BFD_RELOC_NDS32_GOT20, BFD_RELOC_NDS32_9_PLTREL, BFD_RELOC_NDS32_25_PLTREL, - BFD_RELOC_NDS32_RELATIVE, BFD_RELOC_NDS32_GOTOFF, BFD_RELOC_NDS32_GOTOFF_HI20, BFD_RELOC_NDS32_GOTOFF_LO12, @@ -4986,7 +4974,6 @@ enum bfd_reloc_code_real BFD_RELOC_V850_32_GOT, BFD_RELOC_V850_22_PLT_PCREL, BFD_RELOC_V850_32_PLT_PCREL, - BFD_RELOC_V850_RELATIVE, BFD_RELOC_V850_16_GOTOFF, BFD_RELOC_V850_32_GOTOFF, @@ -5135,7 +5122,6 @@ enum bfd_reloc_code_real BFD_RELOC_METAG_RELBRANCH_PLT, BFD_RELOC_METAG_GOTOFF, BFD_RELOC_METAG_PLT, - BFD_RELOC_METAG_RELATIVE, BFD_RELOC_METAG_TLS_GD, BFD_RELOC_METAG_TLS_LDM, BFD_RELOC_METAG_TLS_LDO_HI16, @@ -5459,9 +5445,6 @@ enum bfd_reloc_code_real /* 12 bit GOT offset. */ BFD_RELOC_390_GOT12, - /* Adjust by program base. */ - BFD_RELOC_390_RELATIVE, - /* 32 bit PC relative offset to GOT. */ BFD_RELOC_390_GOTPC, @@ -5917,9 +5900,6 @@ enum bfd_reloc_code_real BFD_RELOC_CRIS_LAPCQ_OFFSET, BFD_RELOC_CRIS_UNSIGNED_4, - /* Relocs used in ELF shared libraries for CRIS. */ - BFD_RELOC_CRIS_RELATIVE, - /* 32-bit offset to symbol-entry within GOT. */ BFD_RELOC_CRIS_32_GOT, @@ -5971,7 +5951,6 @@ enum bfd_reloc_code_real BFD_RELOC_OR1K_PLT26, BFD_RELOC_OR1K_PLTA26, BFD_RELOC_OR1K_GOTOFF_SLO16, - BFD_RELOC_OR1K_RELATIVE, BFD_RELOC_OR1K_TLS_GD_HI16, BFD_RELOC_OR1K_TLS_GD_LO16, BFD_RELOC_OR1K_TLS_GD_PG21, @@ -6012,9 +5991,6 @@ enum bfd_reloc_code_real /* Self-describing complex relocations. */ BFD_RELOC_RELC, - /* Relocations used by VAX ELF. */ - BFD_RELOC_VAX_RELATIVE, - /* Morpho MT - 16 bit immediate relocation. */ BFD_RELOC_MT_PC16, @@ -6104,9 +6080,6 @@ enum bfd_reloc_code_real to one of its own internal functions or data structures. */ BFD_RELOC_XTENSA_RTLD, - /* Xtensa relocations for ELF shared objects. */ - BFD_RELOC_XTENSA_RELATIVE, - /* Xtensa relocation used in ELF object files for symbols that may require PLT entries. Otherwise, this is just a generic 32-bit relocation. */ @@ -6243,7 +6216,6 @@ enum bfd_reloc_code_real BFD_RELOC_LM32_16_GOT, BFD_RELOC_LM32_GOTOFF_HI16, BFD_RELOC_LM32_GOTOFF_LO16, - BFD_RELOC_LM32_RELATIVE, /* Difference between two section addreses. Must be followed by a BFD_RELOC_MACH_O_PAIR. */ @@ -6937,7 +6909,6 @@ enum bfd_reloc_code_real BFD_RELOC_AARCH64_BRANCH9, /* Tilera TILEPro Relocations. */ - BFD_RELOC_TILEPRO_RELATIVE, BFD_RELOC_TILEPRO_BROFF_X1, BFD_RELOC_TILEPRO_JOFFLONG_X1, BFD_RELOC_TILEPRO_JOFFLONG_X1_PLT, @@ -7022,7 +6993,6 @@ enum bfd_reloc_code_real BFD_RELOC_TILEGX_HW0_LAST, BFD_RELOC_TILEGX_HW1_LAST, BFD_RELOC_TILEGX_HW2_LAST, - BFD_RELOC_TILEGX_RELATIVE, BFD_RELOC_TILEGX_BROFF_X1, BFD_RELOC_TILEGX_JUMPOFF_X1, BFD_RELOC_TILEGX_JUMPOFF_X1_PLT, --- a/bfd/elf-m10300.c +++ b/bfd/elf-m10300.c @@ -665,7 +665,7 @@ static const struct mn10300_reloc_map mn { BFD_RELOC_COPY, R_MN10300_COPY }, { BFD_RELOC_GLOB_DAT, R_MN10300_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_MN10300_JMP_SLOT }, - { BFD_RELOC_MN10300_RELATIVE, R_MN10300_RELATIVE }, + { BFD_RELOC_RELATIVE, R_MN10300_RELATIVE }, { BFD_RELOC_MN10300_TLS_GD, R_MN10300_TLS_GD }, { BFD_RELOC_MN10300_TLS_LD, R_MN10300_TLS_LD }, { BFD_RELOC_MN10300_TLS_LDO, R_MN10300_TLS_LDO }, --- a/bfd/elf32-arc.c +++ b/bfd/elf32-arc.c @@ -388,6 +388,7 @@ arc_elf_link_hash_table_create (bfd *abf #define BFD_RELOC_ARC_COPY BFD_RELOC_COPY #define BFD_RELOC_ARC_GLOB_DAT BFD_RELOC_GLOB_DAT #define BFD_RELOC_ARC_JMP_SLOT BFD_RELOC_JMP_SLOT +#define BFD_RELOC_ARC_RELATIVE BFD_RELOC_RELATIVE static const struct arc_reloc_map arc_reloc_map[] = { --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -2018,7 +2018,7 @@ static const struct elf32_arm_reloc_map {BFD_RELOC_THUMB_PCREL_BRANCH7, R_ARM_THM_JUMP6}, {BFD_RELOC_GLOB_DAT, R_ARM_GLOB_DAT}, {BFD_RELOC_JMP_SLOT, R_ARM_JUMP_SLOT}, - {BFD_RELOC_ARM_RELATIVE, R_ARM_RELATIVE}, + {BFD_RELOC_RELATIVE, R_ARM_RELATIVE}, {BFD_RELOC_ARM_GOTOFF, R_ARM_GOTOFF32}, {BFD_RELOC_ARM_GOTPC, R_ARM_GOTPC}, {BFD_RELOC_ARM_GOT_PREL, R_ARM_GOT_PREL}, --- a/bfd/elf32-cris.c +++ b/bfd/elf32-cris.c @@ -401,7 +401,7 @@ static const struct cris_reloc_map cris_ { BFD_RELOC_COPY, R_CRIS_COPY }, { BFD_RELOC_GLOB_DAT, R_CRIS_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_CRIS_JUMP_SLOT }, - { BFD_RELOC_CRIS_RELATIVE, R_CRIS_RELATIVE }, + { BFD_RELOC_RELATIVE, R_CRIS_RELATIVE }, { BFD_RELOC_CRIS_16_GOT, R_CRIS_16_GOT }, { BFD_RELOC_CRIS_32_GOT, R_CRIS_32_GOT }, { BFD_RELOC_CRIS_16_GOTPLT, R_CRIS_16_GOTPLT }, --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -228,8 +228,8 @@ elf_i386_reloc_type_lookup (bfd *abfd, TRACE ("BFD_RELOC_JMP_SLOT"); return &elf_howto_table[R_386_JUMP_SLOT]; - case BFD_RELOC_386_RELATIVE: - TRACE ("BFD_RELOC_386_RELATIVE"); + case BFD_RELOC_RELATIVE: + TRACE ("BFD_RELOC_RELATIVE"); return &elf_howto_table[R_386_RELATIVE]; case BFD_RELOC_386_GOTOFF: --- a/bfd/elf32-lm32.c +++ b/bfd/elf32-lm32.c @@ -447,7 +447,7 @@ static const struct lm32_reloc_map lm32_ { BFD_RELOC_COPY, R_LM32_COPY }, { BFD_RELOC_GLOB_DAT, R_LM32_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_LM32_JMP_SLOT }, - { BFD_RELOC_LM32_RELATIVE, R_LM32_RELATIVE }, + { BFD_RELOC_RELATIVE, R_LM32_RELATIVE }, }; static reloc_howto_type * --- a/bfd/elf32-m32r.c +++ b/bfd/elf32-m32r.c @@ -1214,7 +1214,7 @@ static const struct m32r_reloc_map m32r_ { BFD_RELOC_COPY, R_M32R_COPY }, { BFD_RELOC_GLOB_DAT, R_M32R_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_M32R_JMP_SLOT }, - { BFD_RELOC_M32R_RELATIVE, R_M32R_RELATIVE }, + { BFD_RELOC_RELATIVE, R_M32R_RELATIVE }, { BFD_RELOC_M32R_GOTOFF, R_M32R_GOTOFF }, { BFD_RELOC_M32R_GOTPC24, R_M32R_GOTPC24 }, { BFD_RELOC_M32R_GOT16_HI_ULO, R_M32R_GOT16_HI_ULO }, --- a/bfd/elf32-m68k.c +++ b/bfd/elf32-m68k.c @@ -391,7 +391,7 @@ static const struct { BFD_RELOC_NONE, R_68K_COPY }, { BFD_RELOC_GLOB_DAT, R_68K_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_68K_JMP_SLOT }, - { BFD_RELOC_68K_RELATIVE, R_68K_RELATIVE }, + { BFD_RELOC_RELATIVE, R_68K_RELATIVE }, { BFD_RELOC_CTOR, R_68K_32 }, { BFD_RELOC_VTABLE_INHERIT, R_68K_GNU_VTINHERIT }, { BFD_RELOC_VTABLE_ENTRY, R_68K_GNU_VTENTRY }, --- a/bfd/elf32-metag.c +++ b/bfd/elf32-metag.c @@ -722,7 +722,7 @@ static const struct metag_reloc_map meta { BFD_RELOC_METAG_PLT, R_METAG_PLT }, { BFD_RELOC_COPY, R_METAG_COPY }, { BFD_RELOC_JMP_SLOT, R_METAG_JMP_SLOT }, - { BFD_RELOC_METAG_RELATIVE, R_METAG_RELATIVE }, + { BFD_RELOC_RELATIVE, R_METAG_RELATIVE }, { BFD_RELOC_GLOB_DAT, R_METAG_GLOB_DAT }, { BFD_RELOC_METAG_TLS_GD, R_METAG_TLS_GD }, { BFD_RELOC_METAG_TLS_LDM, R_METAG_TLS_LDM }, --- a/bfd/elf32-nds32.c +++ b/bfd/elf32-nds32.c @@ -3116,7 +3116,7 @@ static const struct nds32_reloc_map_entr {BFD_RELOC_COPY, R_NDS32_COPY}, {BFD_RELOC_GLOB_DAT, R_NDS32_GLOB_DAT}, {BFD_RELOC_JMP_SLOT, R_NDS32_JMP_SLOT}, - {BFD_RELOC_NDS32_RELATIVE, R_NDS32_RELATIVE}, + {BFD_RELOC_RELATIVE, R_NDS32_RELATIVE}, {BFD_RELOC_NDS32_GOTOFF, R_NDS32_GOTOFF}, {BFD_RELOC_NDS32_GOTOFF_HI20, R_NDS32_GOTOFF_HI20}, {BFD_RELOC_NDS32_GOTOFF_LO12, R_NDS32_GOTOFF_LO12}, --- a/bfd/elf32-or1k.c +++ b/bfd/elf32-or1k.c @@ -878,7 +878,7 @@ static const struct or1k_reloc_map or1k_ { BFD_RELOC_GLOB_DAT, R_OR1K_GLOB_DAT }, { BFD_RELOC_COPY, R_OR1K_COPY }, { BFD_RELOC_JMP_SLOT, R_OR1K_JMP_SLOT }, - { BFD_RELOC_OR1K_RELATIVE, R_OR1K_RELATIVE }, + { BFD_RELOC_RELATIVE, R_OR1K_RELATIVE }, { BFD_RELOC_OR1K_TLS_GD_HI16, R_OR1K_TLS_GD_HI16 }, { BFD_RELOC_OR1K_TLS_GD_LO16, R_OR1K_TLS_GD_LO16 }, { BFD_RELOC_OR1K_TLS_LDM_HI16, R_OR1K_TLS_LDM_HI16 }, --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -209,7 +209,7 @@ elf_s390_reloc_type_lookup (bfd *abfd AT return &elf_howto_table[(int) R_390_GLOB_DAT]; case BFD_RELOC_JMP_SLOT: return &elf_howto_table[(int) R_390_JMP_SLOT]; - case BFD_RELOC_390_RELATIVE: + case BFD_RELOC_RELATIVE: return &elf_howto_table[(int) R_390_RELATIVE]; case BFD_RELOC_32_GOTOFF: return &elf_howto_table[(int) R_390_GOTOFF32]; --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -358,7 +358,7 @@ static const struct elf_reloc_map sh_rel { BFD_RELOC_COPY, R_SH_COPY }, { BFD_RELOC_GLOB_DAT, R_SH_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_SH_JMP_SLOT }, - { BFD_RELOC_SH_RELATIVE, R_SH_RELATIVE }, + { BFD_RELOC_RELATIVE, R_SH_RELATIVE }, { BFD_RELOC_32_GOTOFF, R_SH_GOTOFF }, { BFD_RELOC_SH_GOTPC, R_SH_GOTPC }, { BFD_RELOC_SH_GOTPLT32, R_SH_GOTPLT32 }, --- a/bfd/elf32-tilepro.c +++ b/bfd/elf32-tilepro.c @@ -586,7 +586,7 @@ static const reloc_map tilepro_reloc_map TH_REMAP (BFD_RELOC_COPY, R_TILEPRO_COPY) TH_REMAP (BFD_RELOC_GLOB_DAT, R_TILEPRO_GLOB_DAT) TH_REMAP (BFD_RELOC_JMP_SLOT, R_TILEPRO_JMP_SLOT) - TH_REMAP (BFD_RELOC_TILEPRO_RELATIVE, R_TILEPRO_RELATIVE) + TH_REMAP (BFD_RELOC_RELATIVE, R_TILEPRO_RELATIVE) TH_REMAP (BFD_RELOC_TILEPRO_BROFF_X1, R_TILEPRO_BROFF_X1) TH_REMAP (BFD_RELOC_TILEPRO_JOFFLONG_X1, R_TILEPRO_JOFFLONG_X1) TH_REMAP (BFD_RELOC_TILEPRO_JOFFLONG_X1_PLT, R_TILEPRO_JOFFLONG_X1_PLT) --- a/bfd/elf32-v850.c +++ b/bfd/elf32-v850.c @@ -1739,7 +1739,7 @@ static const struct v850_elf_reloc_map v { BFD_RELOC_COPY, R_V850_COPY }, { BFD_RELOC_GLOB_DAT, R_V850_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_V850_JMP_SLOT }, - { BFD_RELOC_V850_RELATIVE, R_V850_RELATIVE }, + { BFD_RELOC_RELATIVE, R_V850_RELATIVE }, { BFD_RELOC_V850_16_GOTOFF, R_V850_16_GOTOFF }, { BFD_RELOC_V850_32_GOTOFF, R_V850_32_GOTOFF }, { BFD_RELOC_V850_CODE, R_V850_CODE }, --- a/bfd/elf32-vax.c +++ b/bfd/elf32-vax.c @@ -313,7 +313,7 @@ static const struct { BFD_RELOC_NONE, R_VAX_COPY }, { BFD_RELOC_GLOB_DAT, R_VAX_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_VAX_JMP_SLOT }, - { BFD_RELOC_VAX_RELATIVE, R_VAX_RELATIVE }, + { BFD_RELOC_RELATIVE, R_VAX_RELATIVE }, { BFD_RELOC_CTOR, R_VAX_32 }, { BFD_RELOC_VTABLE_INHERIT, R_VAX_GNU_VTINHERIT }, { BFD_RELOC_VTABLE_ENTRY, R_VAX_GNU_VTENTRY }, --- a/bfd/elf32-xtensa.c +++ b/bfd/elf32-xtensa.c @@ -422,8 +422,8 @@ elf_xtensa_reloc_type_lookup (bfd *abfd TRACE ("BFD_RELOC_JMP_SLOT"); return &elf_howto_table[(unsigned) R_XTENSA_JMP_SLOT ]; - case BFD_RELOC_XTENSA_RELATIVE: - TRACE ("BFD_RELOC_XTENSA_RELATIVE"); + case BFD_RELOC_RELATIVE: + TRACE ("BFD_RELOC_RELATIVE"); return &elf_howto_table[(unsigned) R_XTENSA_RELATIVE ]; case BFD_RELOC_XTENSA_PLT: --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -223,7 +223,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_GLOB_DAT]; case BFD_RELOC_JMP_SLOT: return &elf_howto_table[(int) R_390_JMP_SLOT]; - case BFD_RELOC_390_RELATIVE: + case BFD_RELOC_RELATIVE: return &elf_howto_table[(int) R_390_RELATIVE]; case BFD_RELOC_32_GOTOFF: return &elf_howto_table[(int) R_390_GOTOFF32]; --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -237,7 +237,7 @@ static const struct elf_reloc_map x86_64 { BFD_RELOC_COPY, R_X86_64_COPY, }, { BFD_RELOC_GLOB_DAT, R_X86_64_GLOB_DAT, }, { BFD_RELOC_JMP_SLOT, R_X86_64_JUMP_SLOT, }, - { BFD_RELOC_X86_64_RELATIVE, R_X86_64_RELATIVE, }, + { BFD_RELOC_RELATIVE, R_X86_64_RELATIVE, }, { BFD_RELOC_X86_64_GOTPCREL, R_X86_64_GOTPCREL, }, { BFD_RELOC_32, R_X86_64_32, }, { BFD_RELOC_X86_64_32S, R_X86_64_32S, }, --- a/bfd/elfxx-sparc.c +++ b/bfd/elfxx-sparc.c @@ -381,7 +381,7 @@ _bfd_sparc_elf_reloc_type_lookup (bfd *a case BFD_RELOC_JMP_SLOT: return &_bfd_sparc_elf_howto_table[R_SPARC_JMP_SLOT]; - case BFD_RELOC_SPARC_RELATIVE: + case BFD_RELOC_RELATIVE: return &_bfd_sparc_elf_howto_table[R_SPARC_RELATIVE]; case BFD_RELOC_SPARC_UA32: --- a/bfd/elfxx-tilegx.c +++ b/bfd/elfxx-tilegx.c @@ -653,6 +653,7 @@ static const reloc_map tilegx_reloc_map TH_REMAP (BFD_RELOC_COPY, R_TILEGX_COPY) TH_REMAP (BFD_RELOC_GLOB_DAT, R_TILEGX_GLOB_DAT) TH_REMAP (BFD_RELOC_JMP_SLOT, R_TILEGX_JMP_SLOT) + TH_REMAP (BFD_RELOC_RELATIVE, R_TILEGX_RELATIVE) #define SIMPLE_REMAP(t) TH_REMAP (BFD_RELOC_##t, R_##t) @@ -664,7 +665,6 @@ static const reloc_map tilegx_reloc_map SIMPLE_REMAP (TILEGX_HW0_LAST) SIMPLE_REMAP (TILEGX_HW1_LAST) SIMPLE_REMAP (TILEGX_HW2_LAST) - SIMPLE_REMAP (TILEGX_RELATIVE) SIMPLE_REMAP (TILEGX_BROFF_X1) SIMPLE_REMAP (TILEGX_JUMPOFF_X1) SIMPLE_REMAP (TILEGX_JUMPOFF_X1_PLT) --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1102,10 +1102,10 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_COPY", "BFD_RELOC_GLOB_DAT", "BFD_RELOC_JMP_SLOT", + "BFD_RELOC_RELATIVE", "BFD_RELOC_IRELATIVE", "BFD_RELOC_SIZE32", "BFD_RELOC_SIZE64", - "BFD_RELOC_68K_RELATIVE", "BFD_RELOC_68K_TLS_GD32", "BFD_RELOC_68K_TLS_GD16", "BFD_RELOC_68K_TLS_GD8", @@ -1146,7 +1146,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SPARC_PC10", "BFD_RELOC_SPARC_PC22", "BFD_RELOC_SPARC_WPLT30", - "BFD_RELOC_SPARC_RELATIVE", "BFD_RELOC_SPARC_UA16", "BFD_RELOC_SPARC_UA32", "BFD_RELOC_SPARC_UA64", @@ -1396,7 +1395,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_GOT32", "BFD_RELOC_MN10300_GOT24", "BFD_RELOC_MN10300_GOT16", - "BFD_RELOC_MN10300_RELATIVE", "BFD_RELOC_MN10300_SYM_DIFF", "BFD_RELOC_MN10300_ALIGN", "BFD_RELOC_MN10300_TLS_GD", @@ -1412,7 +1410,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_16_PCREL", "BFD_RELOC_386_GOT32", "BFD_RELOC_386_PLT32", - "BFD_RELOC_386_RELATIVE", "BFD_RELOC_386_GOTOFF", "BFD_RELOC_386_GOTPC", "BFD_RELOC_386_TLS_TPOFF", @@ -1432,7 +1429,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_386_TLS_DESC", "BFD_RELOC_386_GOT32X", "BFD_RELOC_X86_64_GOT32", - "BFD_RELOC_X86_64_RELATIVE", "BFD_RELOC_X86_64_GOTPCREL", "BFD_RELOC_X86_64_32S", "BFD_RELOC_X86_64_DTPMOD64", @@ -1496,7 +1492,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_PPC_BA16", "BFD_RELOC_PPC_BA16_BRTAKEN", "BFD_RELOC_PPC_BA16_BRNTAKEN", - "BFD_RELOC_PPC_RELATIVE", "BFD_RELOC_PPC_LOCAL24PC", "BFD_RELOC_PPC_EMB_NADDR32", "BFD_RELOC_PPC_EMB_NADDR16", @@ -1690,7 +1685,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARM_TLS_LDM32_FDPIC", "BFD_RELOC_ARM_TLS_IE32_FDPIC", "BFD_RELOC_ARM_GOT32", - "BFD_RELOC_ARM_RELATIVE", "BFD_RELOC_ARM_GOTOFF", "BFD_RELOC_ARM_GOTPC", "BFD_RELOC_ARM_GOT_PREL", @@ -1796,7 +1790,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SH_LABEL", "BFD_RELOC_SH_LOOP_START", "BFD_RELOC_SH_LOOP_END", - "BFD_RELOC_SH_RELATIVE", "BFD_RELOC_SH_GOTPC", "BFD_RELOC_SH_GOT_LOW16", "BFD_RELOC_SH_GOT_MEDLOW16", @@ -1902,7 +1895,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARC_32_PCREL", "BFD_RELOC_ARC_GOT32", "BFD_RELOC_ARC_GOTPC32", - "BFD_RELOC_ARC_RELATIVE", "BFD_RELOC_ARC_GOTOFF", "BFD_RELOC_ARC_GOTPC", "BFD_RELOC_ARC_S21W_PCREL_PLT", @@ -2000,7 +1992,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_M32R_SDA16", "BFD_RELOC_M32R_GOT24", "BFD_RELOC_M32R_26_PLTREL", - "BFD_RELOC_M32R_RELATIVE", "BFD_RELOC_M32R_GOTOFF", "BFD_RELOC_M32R_GOTOFF_HI_ULO", "BFD_RELOC_M32R_GOTOFF_HI_SLO", @@ -2035,7 +2026,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_NDS32_GOT20", "BFD_RELOC_NDS32_9_PLTREL", "BFD_RELOC_NDS32_25_PLTREL", - "BFD_RELOC_NDS32_RELATIVE", "BFD_RELOC_NDS32_GOTOFF", "BFD_RELOC_NDS32_GOTOFF_HI20", "BFD_RELOC_NDS32_GOTOFF_LO12", @@ -2174,7 +2164,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_V850_32_GOT", "BFD_RELOC_V850_22_PLT_PCREL", "BFD_RELOC_V850_32_PLT_PCREL", - "BFD_RELOC_V850_RELATIVE", "BFD_RELOC_V850_16_GOTOFF", "BFD_RELOC_V850_32_GOTOFF", "BFD_RELOC_V850_CODE", @@ -2266,7 +2255,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_METAG_RELBRANCH_PLT", "BFD_RELOC_METAG_GOTOFF", "BFD_RELOC_METAG_PLT", - "BFD_RELOC_METAG_RELATIVE", "BFD_RELOC_METAG_TLS_GD", "BFD_RELOC_METAG_TLS_LDM", "BFD_RELOC_METAG_TLS_LDO_HI16", @@ -2450,7 +2438,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_RX_RELAX", "BFD_RELOC_390_12", "BFD_RELOC_390_GOT12", - "BFD_RELOC_390_RELATIVE", "BFD_RELOC_390_GOTPC", "BFD_RELOC_390_GOT16", "BFD_RELOC_390_PC12DBL", @@ -2692,7 +2679,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_CRIS_UNSIGNED_16", "BFD_RELOC_CRIS_LAPCQ_OFFSET", "BFD_RELOC_CRIS_UNSIGNED_4", - "BFD_RELOC_CRIS_RELATIVE", "BFD_RELOC_CRIS_32_GOT", "BFD_RELOC_CRIS_16_GOT", "BFD_RELOC_CRIS_32_GOTPLT", @@ -2726,7 +2712,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_OR1K_PLT26", "BFD_RELOC_OR1K_PLTA26", "BFD_RELOC_OR1K_GOTOFF_SLO16", - "BFD_RELOC_OR1K_RELATIVE", "BFD_RELOC_OR1K_TLS_GD_HI16", "BFD_RELOC_OR1K_TLS_GD_LO16", "BFD_RELOC_OR1K_TLS_GD_PG21", @@ -2760,7 +2745,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_XSTORMY16_24", "BFD_RELOC_XSTORMY16_FPTR16", "BFD_RELOC_RELC", - "BFD_RELOC_VAX_RELATIVE", "BFD_RELOC_MT_PC16", "BFD_RELOC_MT_HI16", "BFD_RELOC_MT_LO16", @@ -2807,7 +2791,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_IQ2000_OFFSET_21", "BFD_RELOC_IQ2000_UHI16", "BFD_RELOC_XTENSA_RTLD", - "BFD_RELOC_XTENSA_RELATIVE", "BFD_RELOC_XTENSA_PLT", "BFD_RELOC_XTENSA_DIFF8", "BFD_RELOC_XTENSA_DIFF16", @@ -2876,7 +2859,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_LM32_16_GOT", "BFD_RELOC_LM32_GOTOFF_HI16", "BFD_RELOC_LM32_GOTOFF_LO16", - "BFD_RELOC_LM32_RELATIVE", "BFD_RELOC_MACH_O_SECTDIFF", "BFD_RELOC_MACH_O_LOCAL_SECTDIFF", "BFD_RELOC_MACH_O_PAIR", @@ -3127,7 +3109,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_AARCH64_TLSIE_LD_GOTTPREL_LO12_NC", "BFD_RELOC_AARCH64_TLSDESC_LD_LO12_NC", "BFD_RELOC_AARCH64_BRANCH9", - "BFD_RELOC_TILEPRO_RELATIVE", "BFD_RELOC_TILEPRO_BROFF_X1", "BFD_RELOC_TILEPRO_JOFFLONG_X1", "BFD_RELOC_TILEPRO_JOFFLONG_X1_PLT", @@ -3210,7 +3191,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_TILEGX_HW0_LAST", "BFD_RELOC_TILEGX_HW1_LAST", "BFD_RELOC_TILEGX_HW2_LAST", - "BFD_RELOC_TILEGX_RELATIVE", "BFD_RELOC_TILEGX_BROFF_X1", "BFD_RELOC_TILEGX_JUMPOFF_X1", "BFD_RELOC_TILEGX_JUMPOFF_X1_PLT", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -1477,6 +1477,8 @@ ENUMX ENUMX BFD_RELOC_JMP_SLOT ENUMX + BFD_RELOC_RELATIVE +ENUMX BFD_RELOC_IRELATIVE ENUMDOC For ELF. @@ -1489,8 +1491,6 @@ ENUMDOC Size relocations. ENUM - BFD_RELOC_68K_RELATIVE -ENUMX BFD_RELOC_68K_TLS_GD32 ENUMX BFD_RELOC_68K_TLS_GD16 @@ -1598,8 +1598,6 @@ ENUMX ENUMX BFD_RELOC_SPARC_WPLT30 ENUMX - BFD_RELOC_SPARC_RELATIVE -ENUMX BFD_RELOC_SPARC_UA16 ENUMX BFD_RELOC_SPARC_UA32 @@ -2288,10 +2286,6 @@ ENUMDOC This is a 16bit GOT-relative reloc for the mn10300, offset by two bytes in the instruction. ENUM - BFD_RELOC_MN10300_RELATIVE -ENUMDOC - Adjust by program base. -ENUM BFD_RELOC_MN10300_SYM_DIFF ENUMDOC Together with another reloc targeted at the same location, allows @@ -2338,8 +2332,6 @@ ENUM ENUMX BFD_RELOC_386_PLT32 ENUMX - BFD_RELOC_386_RELATIVE -ENUMX BFD_RELOC_386_GOTOFF ENUMX BFD_RELOC_386_GOTPC @@ -2381,8 +2373,6 @@ ENUMDOC ENUM BFD_RELOC_X86_64_GOT32 ENUMX - BFD_RELOC_X86_64_RELATIVE -ENUMX BFD_RELOC_X86_64_GOTPCREL ENUMX BFD_RELOC_X86_64_32S @@ -2521,8 +2511,6 @@ ENUMX ENUMX BFD_RELOC_PPC_BA16_BRNTAKEN ENUMX - BFD_RELOC_PPC_RELATIVE -ENUMX BFD_RELOC_PPC_LOCAL24PC ENUMX BFD_RELOC_PPC_EMB_NADDR32 @@ -2987,8 +2975,6 @@ ENUMDOC ENUM BFD_RELOC_ARM_GOT32 ENUMX - BFD_RELOC_ARM_RELATIVE -ENUMX BFD_RELOC_ARM_GOTOFF ENUMX BFD_RELOC_ARM_GOTPC @@ -3218,8 +3204,6 @@ ENUMX ENUMX BFD_RELOC_SH_LOOP_END ENUMX - BFD_RELOC_SH_RELATIVE -ENUMX BFD_RELOC_SH_GOTPC ENUMX BFD_RELOC_SH_GOT_LOW16 @@ -3433,8 +3417,6 @@ ENUMX ENUMX BFD_RELOC_ARC_GOTPC32 ENUMX - BFD_RELOC_ARC_RELATIVE -ENUMX BFD_RELOC_ARC_GOTOFF ENUMX BFD_RELOC_ARC_GOTPC @@ -3776,8 +3758,6 @@ ENUM ENUMX BFD_RELOC_M32R_26_PLTREL ENUMX - BFD_RELOC_M32R_RELATIVE -ENUMX BFD_RELOC_M32R_GOTOFF ENUMX BFD_RELOC_M32R_GOTOFF_HI_ULO @@ -3907,8 +3887,6 @@ ENUMX ENUMX BFD_RELOC_NDS32_25_PLTREL ENUMX - BFD_RELOC_NDS32_RELATIVE -ENUMX BFD_RELOC_NDS32_GOTOFF ENUMX BFD_RELOC_NDS32_GOTOFF_HI20 @@ -4286,8 +4264,6 @@ ENUMX ENUMX BFD_RELOC_V850_32_PLT_PCREL ENUMX - BFD_RELOC_V850_RELATIVE -ENUMX BFD_RELOC_V850_16_GOTOFF ENUMX BFD_RELOC_V850_32_GOTOFF @@ -4538,8 +4514,6 @@ ENUMX ENUMX BFD_RELOC_METAG_PLT ENUMX - BFD_RELOC_METAG_RELATIVE -ENUMX BFD_RELOC_METAG_TLS_GD ENUMX BFD_RELOC_METAG_TLS_LDM @@ -5053,10 +5027,6 @@ ENUM ENUMDOC 12 bit GOT offset. ENUM - BFD_RELOC_390_RELATIVE -ENUMDOC - Adjust by program base. -ENUM BFD_RELOC_390_GOTPC ENUMDOC 32 bit PC relative offset to GOT. @@ -5763,10 +5733,6 @@ ENUMDOC These relocs are only used within the CRIS assembler. They are not (at present) written to any object files. ENUM - BFD_RELOC_CRIS_RELATIVE -ENUMDOC - Relocs used in ELF shared libraries for CRIS. -ENUM BFD_RELOC_CRIS_32_GOT ENUMDOC 32-bit offset to symbol-entry within GOT. @@ -5852,8 +5818,6 @@ ENUMX ENUMX BFD_RELOC_OR1K_GOTOFF_SLO16 ENUMX - BFD_RELOC_OR1K_RELATIVE -ENUMX BFD_RELOC_OR1K_TLS_GD_HI16 ENUMX BFD_RELOC_OR1K_TLS_GD_LO16 @@ -5932,11 +5896,6 @@ ENUMDOC Self-describing complex relocations. ENUM - BFD_RELOC_VAX_RELATIVE -ENUMDOC - Relocations used by VAX ELF. - -ENUM BFD_RELOC_MT_PC16 ENUMDOC Morpho MT - 16 bit immediate relocation. @@ -6076,10 +6035,6 @@ ENUMDOC objects to indicate that the runtime linker should set the value to one of its own internal functions or data structures. ENUM - BFD_RELOC_XTENSA_RELATIVE -ENUMDOC - Xtensa relocations for ELF shared objects. -ENUM BFD_RELOC_XTENSA_PLT ENUMDOC Xtensa relocation used in ELF object files for symbols that may @@ -6285,8 +6240,6 @@ ENUMX BFD_RELOC_LM32_GOTOFF_HI16 ENUMX BFD_RELOC_LM32_GOTOFF_LO16 -ENUMX - BFD_RELOC_LM32_RELATIVE ENUMDOC Lattice Mico32 relocations. @@ -7236,8 +7189,6 @@ ENUMDOC The lowest two bits must be zero and are not stored in the instruction, giving an 11 bit signed byte offset. ENUM - BFD_RELOC_TILEPRO_RELATIVE -ENUMX BFD_RELOC_TILEPRO_BROFF_X1 ENUMX BFD_RELOC_TILEPRO_JOFFLONG_X1 @@ -7404,8 +7355,6 @@ ENUMX ENUMX BFD_RELOC_TILEGX_HW2_LAST ENUMX - BFD_RELOC_TILEGX_RELATIVE -ENUMX BFD_RELOC_TILEGX_BROFF_X1 ENUMX BFD_RELOC_TILEGX_JUMPOFF_X1 --- a/include/elf/cris.h +++ b/include/elf/cris.h @@ -52,7 +52,7 @@ START_RELOC_NUMBERS (elf_cris_reloc_type RELOC_NUMBER (R_CRIS_JUMP_SLOT, 11) /* Adjust by program base. Generated by the linker. - The BFD equivalent is BFD_RELOC_CRIS_RELATIVE. */ + The BFD equivalent is BFD_RELOC_RELATIVE. */ RELOC_NUMBER (R_CRIS_RELATIVE, 12) /* A 16-bit offset to entry in GOT and request to create GOT entry for From patchwork Fri Nov 28 11:53:57 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 125512 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 1B1C63858C78 for ; Fri, 28 Nov 2025 11:55:46 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1B1C63858C78 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=suse.com header.i=@suse.com header.a=rsa-sha256 header.s=google header.b=V3IOAi02 X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) by sourceware.org (Postfix) with ESMTPS id 1A2123858C56 for ; Fri, 28 Nov 2025 11:54:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1A2123858C56 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 1A2123858C56 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::436 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330840; cv=none; b=VFbXrSCFqbilRbSvqMOQPFTJ+PU7ciZ2TgClHVRKO8giLJIP624/60Q8XSJT0Vh7Zno/W84M3BClnbKiPullbVF+bxjHDJGv7uVJYGKHZ5xS4EqFmt+UL0GyJ1U1fKxWkcv6PoCDeRh8nMt7R5S/kvLYVVjMMy0dbshcEer8hRw= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764330840; c=relaxed/simple; bh=+wv5zs9u/X1grmMZuAPelVWEQJ8YF2+oqMP8nxmCXgY=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=oP4RrlmG1IJ3rdItYyzq+euAr23s9WCZvbk4uJTKixuysmPuby0eH1RXXxrDKRbsEAgDFoKYCuMKUszEY3iisvy1tuKPdETvu3Gr8MfgfCsiO6AtTP9xEuFk3uyuWsqjUr13lSw1u3iMvx4PLtJ++Fx5SSFQtdu3ktoc7W8HVW4= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1A2123858C56 Received: by mail-wr1-x436.google.com with SMTP id ffacd0b85a97d-429ce7e79f8so1175578f8f.0 for ; Fri, 28 Nov 2025 03:54:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1764330839; x=1764935639; darn=sourceware.org; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=bBcTwjyEzguNZwVNO/zXV6uJ3aEMEizHWlIdAIbXaSg=; b=V3IOAi02771jJQb2a7AroadJKQqf5XeiQt4stzyyEtKI1PA3A4dcdDvkkVLFkgjd71 93IIhE7Py0vRBfGm6TmIU3QW1lGJD+IJzl5OmxHoWe8z9wNnedH0Zu4Sic/pYwwZNq2g J8nQvTww5TE/LDabohnlXxLvqz/K5FcCLlJXcwGkqt3lOEPcVJlfovru/+jkQuVS4EKb hLeI8p9ccrIklqALzBZ2gt3taJKOQO6N1gFLETFuR/0rxE2HAJa1BB8jyQLHpqitoR26 TCMNZauYtk2m5bVOhp3UMrucRTdDMY8ewqFrjF8uVE2XloBKQbs9xDa3ZQg3njh4cGMa zpzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764330839; x=1764935639; h=content-transfer-encoding:in-reply-to:autocrypt:cc:content-language :references:to:from:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=bBcTwjyEzguNZwVNO/zXV6uJ3aEMEizHWlIdAIbXaSg=; b=T8rHL/K0Qk+a7mFJ6eCyR3B4uAkWwd+KSSPEyK9u5t95aI439+vpW56WI2oXvXYoEH oaL9LITbuouS+GrJ4PR0/Bs47ZKgc1ZJAC2owjgfioXnNI/QkhJy9GsvMa4DAo39ocfg Ygzl8hzvIu1CfFkVIKRtfZobQRllB3mFJKoEuC3o8CvSRlOQ3PHTRClIwSxZwUwB+YDD x7V6+QYhBb46EGk42aWem78wvb29o+zs4Daez9ZpYk/+Wk+EIFEANcuWiN2USf1AzfZn /ySvB6zg8G+l1o3k0JeqrO7t6Gqosx7aDRVsZoeXgp/KSMUZDBWG9Fka5cM4nI6Qnsi5 gDAQ== X-Gm-Message-State: AOJu0YytEdwdrMqnL8PqgWcCz2XjKLKfVI5HlKSepZubXn6gRIPOG6s0 l1ADDIzQfMd02MHHFohLOuxNZlLkecCFFWhQqWjoaELiJwyzmUXco2n71Z5wZKBz9eU6yrYZ71h DDn8= X-Gm-Gg: ASbGncvv4bAvRFXwZDQCu58hJPtGrEX1cIjFUOhoiICgsSCJQPIRMcVtcYy8ER9JqWN TtXBnn9g9liHYbYFQl0ap4qDpKAHf1VKzVTKRSpVBqfACQB+1f+H6ojCRGJpPtgTe97bqK5uvA3 SR1j0it0hFGXCy1k8BQdBMwNyt0Ne5ywCKIQaw2lP6D/rHd2X0la3Vy2vPrVNBBZoxEsm07RCXj GWhi4HLqfUf3Oyy/PM5scLvsbpjJ5g25IixwfBugkTkNLh6fJIcZN2O3MNYRg47BybEt3iGIoB0 9roOlFkqjmuHE7CuRjLKRNzQlGVcExndKOvw6fC/q3BpjHSOWtB3REW2M5lZhHVqSrv4I9n+4Ev V61dLAPrsOvNbWPzRZrSi0riUfX5ja3rY1oqCZU9Ja4PmIPQ9ri+ucuo2f8T7KfGrcK9WWGqkjp DuvmGoqmRvNFnDNgrBN9Zex8iTordxDkafvLJH/o8BXoQBR/UgIiZubE323AymvYwcDskdO8q8k 7c= X-Google-Smtp-Source: AGHT+IFhF/ebLFQ7/M8cAY+YnmGb8NryGoTKuiQ83ELbwoT2jAP2cbPK3FeA/dcOcFSCQKhMtANdXA== X-Received: by 2002:a5d:584c:0:b0:429:d3e9:667 with SMTP id ffacd0b85a97d-42e0f20431cmr16215562f8f.18.1764330838637; Fri, 28 Nov 2025 03:53:58 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1cac995esm8686480f8f.43.2025.11.28.03.53.58 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 28 Nov 2025 03:53:58 -0800 (PST) Message-ID: <64ab0c36-2a5a-4e1f-8d39-438e32059780@suse.com> Date: Fri, 28 Nov 2025 12:53:57 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 14/14] bfd/s12z: put relocations next to each other From: Jan Beulich To: Binutils References: Content-Language: en-US Cc: John Darrington Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: X-Spam-Status: No, score=-3018.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org It's not helpful to have two separate "sections", each with a single relocation. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -5826,11 +5826,6 @@ enum bfd_reloc_code_real follows a matching LO8XG part. */ BFD_RELOC_M68HC12_HI8XG, - /* Freescale S12Z reloc. - This is a 15 bit relative address. If the most significant bits are - all zero then it may be truncated to 8 bits. */ - BFD_RELOC_S12Z_15_PCREL, - /* NS CR16 Relocations. */ BFD_RELOC_CR16_NUM8, BFD_RELOC_CR16_NUM16, @@ -7207,9 +7202,13 @@ enum bfd_reloc_code_real BFD_RELOC_CKCORE_PCREL_BLOOP_IMM4BY4, BFD_RELOC_CKCORE_PCREL_BLOOP_IMM12BY4, - /* S12Z relocations. */ + /* Freescale S12Z relocations. */ BFD_RELOC_S12Z_OPR, + /* This is a 15 bit relative address. If the most significant bits are + all zero then it may be truncated to 8 bits. */ + BFD_RELOC_S12Z_15_PCREL, + /* LARCH relocations. */ BFD_RELOC_LARCH_TLS_DTPMOD32, BFD_RELOC_LARCH_TLS_DTPREL32, --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -2616,7 +2616,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_M68HC12_10_PCREL", "BFD_RELOC_M68HC12_LO8XG", "BFD_RELOC_M68HC12_HI8XG", - "BFD_RELOC_S12Z_15_PCREL", "BFD_RELOC_CR16_NUM8", "BFD_RELOC_CR16_NUM16", "BFD_RELOC_CR16_NUM32", @@ -3382,6 +3381,7 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_CKCORE_PCREL_BLOOP_IMM4BY4", "BFD_RELOC_CKCORE_PCREL_BLOOP_IMM12BY4", "BFD_RELOC_S12Z_OPR", + "BFD_RELOC_S12Z_15_PCREL", "BFD_RELOC_LARCH_TLS_DTPMOD32", "BFD_RELOC_LARCH_TLS_DTPREL32", "BFD_RELOC_LARCH_TLS_DTPMOD64", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -5592,12 +5592,6 @@ ENUMDOC Motorola 68HC12/XGATE reloc. This is the 8 bit high part of an absolute address and immediately follows a matching LO8XG part. -ENUM - BFD_RELOC_S12Z_15_PCREL -ENUMDOC - Freescale S12Z reloc. - This is a 15 bit relative address. If the most significant bits are - all zero then it may be truncated to 8 bits. ENUM BFD_RELOC_CR16_NUM8 @@ -7768,7 +7762,12 @@ ENUMDOC ENUM BFD_RELOC_S12Z_OPR ENUMDOC - S12Z relocations. + Freescale S12Z relocations. +ENUM + BFD_RELOC_S12Z_15_PCREL +ENUMDOC + This is a 15 bit relative address. If the most significant bits are + all zero then it may be truncated to 8 bits. ENUM BFD_RELOC_LARCH_TLS_DTPMOD32