From patchwork Fri Mar 13 09:49:53 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 131660 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id C43144C31861 for ; Fri, 13 Mar 2026 09:50:37 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C43144C31861 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=a8r97tmN X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com [IPv6:2a00:1450:4864:20::32c]) by sourceware.org (Postfix) with ESMTPS id 226D44BC896C for ; Fri, 13 Mar 2026 09:49:56 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 226D44BC896C 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 226D44BC896C Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::32c ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395396; cv=none; b=P4OrY2qGqbI/mt49IE0mUvg0/OXYtayRM8Aue+ufGvLbKL+ZtKVJtaonH8t3dSZP75CFDTPuVtYiD00TZktuXqCmNE7V+gRiZ1xg+1N0ao8676KkgzZKuE3efXmVg4lI65ExTCEtiggsuaRglVDg8sgWCU8u/XMQU77WnBceQP8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395396; c=relaxed/simple; bh=aoFaZI/ddTYyuaHJogLkn/bFQ58PMo/7JU1hL1rwvwo=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=pI3rLvJKG5xM66p5RA7E/QS0IT1C8mOzAGJ1HEzlNTbmhFyxLCcUU8i0cHLhV0bse2udE2UHWktWpagiIQSckPW7uw0R5MRkG3s7cznbCQ8glzWDhcPaK2OU/n2BSUmOsTWWPdEMRFeD/TsoT9OGyVPqqJNL52w5KZDywbI8uTk= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 226D44BC896C Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-483487335c2so17524725e9.2 for ; Fri, 13 Mar 2026 02:49:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773395395; x=1774000195; 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=6oO3WAm0MPKYCqvJZfC7jYHbablzgfDLkKy4hSwseXE=; b=a8r97tmNMGHLQAIeS1jKY9Z07ACKoA1x9WLDCKgmCxndE0rLA8MSVzl4s5xrKCnMqo zYUPmAo4S6tnYpJHT/CzvUeeBW4zoQ81yH62dXB5t7E/kRMaNCQtSjMX+vrH4jTLfN9g mWDP0GKzpwK8UXEanzqEsJMy8bE25XsBBfe1NE7yjfXoq2INdKBWSgtyMR1KGWHme1F4 CEuaynsUPM7VBgjAZVGpdVGzK9m9ONL6XAqa2Ep4zQ3dKBYIb0p3Op9D5HyMNKJ4GMrn mGaT3/8WNaCYEJKd5TsEqwf15kC4jYZz5EtOlsRgjPiWOkQKHTTQlziJyZv85ac89c8w rEzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773395395; x=1774000195; 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=6oO3WAm0MPKYCqvJZfC7jYHbablzgfDLkKy4hSwseXE=; b=D6HN3iuHxjw4fzuzmCrmjajVzw82QmJiWwWUuIjPJdkshRZCP3FwuOl0QcyF76H/9d GpqBffk58Dcea9yQdqLWlvmbhzF6wfjrtSu5mCAAakFNxvLEh8Hu6qqzEXsYWyYf7fM2 BpCPzabDUju+zPF0IfNyG7yvf6fa1wTLp7OkcnDOssLhbnHJnMkKiLmOj93o48+YtEOp nIBYEFTECOVlqeB2HtVlPAyCgdTeUXctpiU4FoCb630UuF7R6/28NdmcATEEbD24ipmv R+g9Q8MUYN4KTMWMiNTgzcofdiVPRNPvi79tt9klXIr8QYfGh5oQ/DWD9EttWaE0zVox ewaA== X-Gm-Message-State: AOJu0Yw/n0rfZSIBrD8vvJoLgyGdN18g0KTCoZe+wHPoqr0GwbCD0kfg mtZ1fvC29t1m6X3k2npYMEtigQxBzhXyRP7ZieXIsouy9YXzKFbXPkgAziv/KfPeBG/DsI6qTb3 iTag= X-Gm-Gg: ATEYQzxtgJhpfY7PBlzvuRp1cdqTto9+9U62yd6WrgEgG3ZfM8UHOO7PZduFQ1fHvJI mT6WU/aovTy7i8KjRQ8ZERbd6TvqM9cNW2j4LoF4JV90lJA7HupDMB0tjNIzT7xW32ZT8XX63YK CKuEGbRnrtQBzb54raUiByN1JaX0Hzcosg8KVISNWZ1kIHu8h9K1IDPyk5TW0kBloHZOkJLKYr9 5LXhRx/coGYSCmPj6z4n4DMppioBGZ+2PpOLqMWUKr5OaNP6RcubKjSBxZbNd9vJiGCbDadGkpw hoq4N+pzb6xSXCcmARsWgZ0qCOKqy+HM3sqWVVGGUgdX5RpoDe0LZ/auZX8Fm62CAUVQWLE/Xl3 MQQTk1OzN0QttFsnQE3nJZMaIUX71brmDuqV06n5D2Us1o1tmUNxf0UhnCq2LwOp5mEKJ5c+oZA /N+Uergh0fjdAipzTRTERh9r53BGyWbQREplzzAXbHegKC3k+q96PQaTc9KXZ2GiFMgf5IvHhtR Yyblv/8Ivgj+40= X-Received: by 2002:a05:600c:4753:b0:485:3a93:3aa3 with SMTP id 5b1f17b1804b1-485566d3094mr38229825e9.12.1773395394957; Fri, 13 Mar 2026 02:49:54 -0700 (PDT) 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-4854b66e3f8sm193220955e9.14.2026.03.13.02.49.54 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 13 Mar 2026 02:49:54 -0700 (PDT) Message-ID: Date: Fri, 13 Mar 2026 10:49:53 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 1/8] bfd/mcore: drop BFD_RELOC_MCORE_{PCREL_32,RVA} From: Jan Beulich To: Binutils References: <76acf518-e951-4737-8444-6718df6ce778@suse.com> 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: <76acf518-e951-4737-8444-6718df6ce778@suse.com> X-Spam-Status: No, score=-3016.9 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, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on 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 They're unused. Really there was a bogus use in the assembler: If the type isn't used anywhere else, the case label was stale (in one of two ways; assume it was missed during some earlier conversion, with the alternative being that it should be dropped altogether). --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -5067,9 +5067,7 @@ enum bfd_reloc_code_real BFD_RELOC_MCORE_PCREL_IMM8BY4, BFD_RELOC_MCORE_PCREL_IMM11BY2, BFD_RELOC_MCORE_PCREL_IMM4BY2, - BFD_RELOC_MCORE_PCREL_32, BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2, - BFD_RELOC_MCORE_RVA, /* Toshiba Media Processor Relocations. */ BFD_RELOC_MEP_8, --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -2213,9 +2213,7 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MCORE_PCREL_IMM8BY4", "BFD_RELOC_MCORE_PCREL_IMM11BY2", "BFD_RELOC_MCORE_PCREL_IMM4BY2", - "BFD_RELOC_MCORE_PCREL_32", "BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2", - "BFD_RELOC_MCORE_RVA", "BFD_RELOC_MEP_8", "BFD_RELOC_MEP_16", "BFD_RELOC_MEP_32", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -4424,11 +4424,7 @@ ENUMX ENUMX BFD_RELOC_MCORE_PCREL_IMM4BY2 ENUMX - BFD_RELOC_MCORE_PCREL_32 -ENUMX BFD_RELOC_MCORE_PCREL_JSR_IMM11BY2 -ENUMX - BFD_RELOC_MCORE_RVA ENUMDOC Motorola Mcore relocations. --- a/gas/config/tc-mcore.c +++ b/gas/config/tc-mcore.c @@ -2015,7 +2015,7 @@ md_apply_fix (fixS * fixP, fixP->fx_done = 0; break; - case BFD_RELOC_MCORE_PCREL_32: + case BFD_RELOC_32_PCREL: case BFD_RELOC_VTABLE_INHERIT: case BFD_RELOC_VTABLE_ENTRY: fixP->fx_done = 0; From patchwork Fri Mar 13 09:50:30 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 131661 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id 6D20A4C31813 for ; Fri, 13 Mar 2026 09:51:25 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6D20A4C31813 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=e5ybskOo 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 06FD34C31834 for ; Fri, 13 Mar 2026 09:50:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 06FD34C31834 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 06FD34C31834 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=1773395433; cv=none; b=vTkB5sF0uFpaavyRDaXtirncKavOyfi76p8e2VOJX6o8TcQ01EiRbM9JSTZilOQWBQby1aifIZ8js1YjFAvGwloU0RSs+8E8440I88UlNIC1zHz/YFQn1oZHx+e8OtOYaV99LPT0MkulNLvsYXe02Ca1WYYcr6RdjW1OfTriI6U= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395433; c=relaxed/simple; bh=FZiesqdivv0w6VwFFN1rumMsp2Vo9MCJ8YkjCzCJDtE=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=ovOx9vaRvfwTQlNbJDmRXkyYAvLSMiL28K6jPv1riQCljLSB6TZ23hh/3wtg9JzVdZ9AC0EZOyaKAdeQ1HP40TSEPdGMuCd+0X0uxw0qMsZ0YNL+/FYD2afEJBJCMVUTj+fn2VYTjsliil58gOlft+cesg9F/YhYKBjxG9yRUqI= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 06FD34C31834 Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-48535a0ef86so16377405e9.1 for ; Fri, 13 Mar 2026 02:50:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773395432; x=1774000232; 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=vC6JoaoxKPZvr2svCWMWboPpMZLDF14QDz042KT7hxI=; b=e5ybskOouSZL9fM08EK6Ln66J9fWs0cGG2H0HUcBO371Hazuzbr57iOzQ8tIM4R6X8 YlM148BTlbK/Xyn5SGf/2tBFAyNSqAdlE8Vr+v671CudEbmgZFKBXKE69HX/oAtzmrz9 M9ng8eW4g3/EV7ICNCUDmV3KXxpBT1T+a40J5+AXYwnbr+n5JdgOtoP79fCNimnJ+gSm 7UqJ97cSrwcP0e0+289jk9Cp++d4f6Rmb7PBRVYZ0y+8KExLU66NPyShoeKQ9UA4Jv98 RA8zWEq5c587Bt9vOfGAbMFaBvSOklQol1cj/OQZRz9NJoPcOPl+FlMukQIIgnESgO3C UH2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773395432; x=1774000232; 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=vC6JoaoxKPZvr2svCWMWboPpMZLDF14QDz042KT7hxI=; b=j5TsEywZFMHiV6SaDxAPDjvBPMjPBgL0/4sqt6/FjQxbKsHVwHU5Utz3e4o1nu+sZ3 WnwfdSRZ9EUujs+j+Kju6YCUVi6N68gqeIUfb910hOFI6OsUORt4i7JlHSJT3H+S33jL tzUFRm7265jL5RgWp0uC+UlztC9Ja/ELGiLQtlbDsf/4HaR2V+HSP23eomDJjRMP3Gdb t78f4XZSP3wOtmC71iKRiepN0WhEoVkLhBAqtI//vOsV24mUiKXb29txbS9fgh/dP2F7 Jz5m2tcwo49laV1J2v3Us/EVa4FN+wZqZzX6kuXmALvMdTAHSwe7gTNnJz8jbvpZwhCr GDfQ== X-Gm-Message-State: AOJu0YzvVnyR+hsqUDgh0l6NZBK86tYiK4uyU+xbpwP4onAsjnJ2e7Hm sbyfyWW+2f3kzJhlQ/gZ6DagP6Q0KvssaC1MCfkRl1LFR/FKTiwYzHro3SeFX+fxUw5iKxuvVSV w5Cs= X-Gm-Gg: ATEYQzy0tQUibOH9iLIdJWFY+gB81nxcLcHfaWBy/WZzhGIAXG9LwcH0Dy4yBQYrDFa mflu7k4nMMn4YKJ55ZrwEo4JZZ5QMH6OS0QV7CIM7sGZAln6ltUY6dpwsHlQIx4ezm9702pWgKU IO7IHnOPCam0Gi5rXD5ztQLIryw/Gac4ho0pz+5U0h35dxmMFeZwKQqysDUlqxWCWaqNRcADscl D+xo9nBErLFokhwVNNtioZQfpzerDBiLag/ZcH0i3DE+lGSeIs8rJiee0niCsHlTFQt91d1YC7z aq/bgPUFNDdYOo0m2fJsRUfDei/4Dsi+X7PW2xSAJJM2j46iQCDYCcIw3FfeKgULjuyDmHr26Fv fjRmIAJuDqtdc+6wqa4/0U6NN99ujROe8waXyUbgqR2EIoXdx+x7u+97MM6nsuVDt1lpFbxyA26 9oSDn+OztAf79rh0DWG8CAwaxeWP14UFypF7cm+KKRVTNbN3t5+LpU/OeYb6KQQnl/slIZT/ECF 4Qbfe8iP4AAf0E= X-Received: by 2002:a05:600c:45d5:b0:477:7bca:8b34 with SMTP id 5b1f17b1804b1-485566d3104mr39672455e9.6.1773395431842; Fri, 13 Mar 2026 02:50:31 -0700 (PDT) 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-4854b65fd3dsm199346995e9.10.2026.03.13.02.50.31 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 13 Mar 2026 02:50:31 -0700 (PDT) Message-ID: <52edf7a5-2967-4bce-8ed4-dbb4837e66e1@suse.com> Date: Fri, 13 Mar 2026 10:50:30 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 2/8] bfd/mn10300: drop BFD_RELOC_MN10300_*_PCREL From: Jan Beulich To: Binutils References: <76acf518-e951-4737-8444-6718df6ce778@suse.com> Content-Language: en-US Cc: Alexandre Oliva 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: <76acf518-e951-4737-8444-6718df6ce778@suse.com> X-Spam-Status: No, score=-3016.9 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, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on 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 They're unused. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3814,14 +3814,6 @@ enum bfd_reloc_code_real BFD_RELOC_MN10300_TLS_DTPOFF, BFD_RELOC_MN10300_TLS_TPOFF, - /* This is a 32bit pcrel reloc for the mn10300, offset by two bytes in - the instruction. */ - BFD_RELOC_MN10300_32_PCREL, - - /* This is a 16bit pcrel reloc for the mn10300, offset by two bytes in - the instruction. */ - BFD_RELOC_MN10300_16_PCREL, - /* i386/elf relocations. */ BFD_RELOC_386_GOT32, BFD_RELOC_386_PLT32, --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1406,8 +1406,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_TLS_DTPMOD", "BFD_RELOC_MN10300_TLS_DTPOFF", "BFD_RELOC_MN10300_TLS_TPOFF", - "BFD_RELOC_MN10300_32_PCREL", - "BFD_RELOC_MN10300_16_PCREL", "BFD_RELOC_386_GOT32", "BFD_RELOC_386_PLT32", "BFD_RELOC_386_GOTOFF", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -2316,16 +2316,6 @@ ENUMX BFD_RELOC_MN10300_TLS_TPOFF ENUMDOC Various TLS-related relocations. -ENUM - BFD_RELOC_MN10300_32_PCREL -ENUMDOC - This is a 32bit pcrel reloc for the mn10300, offset by two bytes in - the instruction. -ENUM - BFD_RELOC_MN10300_16_PCREL -ENUMDOC - This is a 16bit pcrel reloc for the mn10300, offset by two bytes in - the instruction. ENUM BFD_RELOC_386_GOT32 From patchwork Fri Mar 13 09:51:16 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 131662 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id 6A8004C3184D for ; Fri, 13 Mar 2026 09:53:38 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6A8004C3184D 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=GA/od456 X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com [IPv6:2a00:1450:4864:20::32e]) by sourceware.org (Postfix) with ESMTPS id 0323A4C31834 for ; Fri, 13 Mar 2026 09:51:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0323A4C31834 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 0323A4C31834 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::32e ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395479; cv=none; b=Yn9rKSGwTQ1JX6P1lG4tvRIoTk802PI+G8XV8+ygIT/YWDKRPi/fYppgVhObACwrypIuy7eUNPjsc/WUuZyWc6T0bhDH9GwXWhuL1LAk0prH5oO5Dt9XEZtItOTyZP4w65LnEiyZ5HO4Rwau9CRpgi9+JFTgat25n56JZEl7I/Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395479; c=relaxed/simple; bh=nYKingVVoRJr51Fi43JgiNdXpThoKRsjjvEyKJB9pfs=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=d4t/463Ek7ZrhDUdBCg/Y7PYmvq8is29CSSVWjjwpNKIHTPkkGJIYka6MnR5YW5zcOHaN2sp6PP1qBWGo8jZtM/K6MjDvTIAk55B/r9aQeYKGOAZF7E8p3T9i4HA1l1KXJcJIt2YIIlWn5tMNfLUfJtb3Wyip19/qlq7wOKmx24= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 0323A4C31834 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-48539cbb7b1so11231355e9.3 for ; Fri, 13 Mar 2026 02:51:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773395478; x=1774000278; 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=50vvKW/MFifwJaU83/bMUDLC2dRpszXgOhRqw6Cw1nM=; b=GA/od456r77bke+EwHsxcJJhy0qcTeRC3kweWRA3HUPq83eQ7s+ThASzDyvTfXKpzd 1uym/+cd68/0cx4tpV9HMO8eIv8zs7lZQe/TIbZ51U5xVc2geVdBFwziJ0OFmx+t7lUQ SK1kc+YUBjTk7yrJioGyT+THIaoTzl8lOdkCMbyt0hkWmVxHF3TO1kswROSTzXle9EBm qhY/oOCVY9dnLsVqo6bbxVcTWT37E5caIMmeDSeqpDQARcPxm+OzXgik9GJqlD5V2jK4 2A00kvmjIGwcWDnuxTJP/TS6NnzfYp3kZwXHgqWn1sXcK6vsHcx0PH1SEft5vf3wCvpf POmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773395478; x=1774000278; 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=50vvKW/MFifwJaU83/bMUDLC2dRpszXgOhRqw6Cw1nM=; b=fRdArtYLW2bXbwNR+vjlqXK6IUMQUPKPQIczM5DxADFczWDAao91DP1doTgFVtM+oO ZiayJCW3BVLNjT3nWOioi5MYsWvIKilyh1tkED+ZYub7SqYlWbXNnX3BQJwgndr7aUgT uy3kxxt2Njm1+m6omWq+rthz+Cbt7mOg7k4sbmz867f8o7a5x3pdxl39dl8W9zBujJdU Hqf/bs2sSIQuTkcaAoZReCBInHYzJ/Y8dWMvXpR3WfQzIJDn95XSJeENV+/Kao7NWk2/ xC2udgpnRIwObcCG4DQ/9bT30mwjX53VF2LsjxnFGpkyQoV9r3Hd/u+3I+y8nMmBgBzl mANw== X-Gm-Message-State: AOJu0Ywmxf5IcZ5Vu54DaHi7PvvCpYYwNgYx61bIdGKjRpXGKVwfnQZB h8A2Recj+aiT1hM3TU7lwDpWM13ym5QHhXByar9ha/vBTO776F7992C+WCn+EryGmCmpJ6wfLSy DZRc= X-Gm-Gg: ATEYQzzwYmVF2NHDxRkZHdvHE+f1U6eljwJX/utJGZ4WBiGTOKpwPDkfuAepRUbNHgv RLV7eFUyU+FyW3s7ru/mBhcFey+JtQaG5EEY6I3g+EO+8nd3A6w1rrgT4RR7fjdAyg+CHQO5WJi ZL5uSI7FVhnGbw8j465Ru+msi04e7jY7Eqj+PT+az/5l+6gqfC0RhGER2qplhj9/URZ75CznacF O2gPPW4odE0TCkMwM/y3BtuNDUyp7vIB1+ZeQZ0lfSEwxkz39n7Z0x9PPZhlivX76uIY7fbBF1L tS3fgxrs9Q6FQVSlpGK8P6978Y3dmH70RX/RAkNrBWWu93Pio0moMRLvGKGNxP30nJo4HS/ycwv ozfazitW8VLspjKiCcZipGhCKUkY/lzeuPezn3+TE8nq32we4RVuE19hBqMQ5TdJpDVLYVJ3VMQ EakgkP77cr1jlpaKzPm/CYTKxHSHy6pFMFBHWinc1z6nCYfYV35m0InBB07y+e1kNC6ij5VhhKg p4I05cfuMrJFNzq5Cs2KW13Aw== X-Received: by 2002:a05:600c:a09:b0:485:4453:401d with SMTP id 5b1f17b1804b1-485566e2d72mr38090985e9.2.1773395477808; Fri, 13 Mar 2026 02:51:17 -0700 (PDT) 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-48541b7f3cdsm335475065e9.14.2026.03.13.02.51.17 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 13 Mar 2026 02:51:17 -0700 (PDT) Message-ID: <5a7ada21-ecae-4c59-a32f-c0f83350ef22@suse.com> Date: Fri, 13 Mar 2026 10:51:16 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 3/8] bfd/sh: drop unused relocation enumerators From: Jan Beulich To: Binutils References: <76acf518-e951-4737-8444-6718df6ce778@suse.com> Content-Language: en-US Cc: Alexandre Oliva 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: <76acf518-e951-4737-8444-6718df6ce778@suse.com> X-Spam-Status: No, score=-1007.2 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_75_100, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on 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 Maybe there once were plans with them, but if so those never materialized. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -4284,26 +4284,6 @@ enum bfd_reloc_code_real BFD_RELOC_SH_LOOP_START, BFD_RELOC_SH_LOOP_END, BFD_RELOC_SH_GOTPC, - BFD_RELOC_SH_GOT_LOW16, - BFD_RELOC_SH_GOT_MEDLOW16, - BFD_RELOC_SH_GOT_MEDHI16, - BFD_RELOC_SH_GOT_HI16, - BFD_RELOC_SH_GOTPLT_LOW16, - BFD_RELOC_SH_GOTPLT_MEDLOW16, - BFD_RELOC_SH_GOTPLT_MEDHI16, - BFD_RELOC_SH_GOTPLT_HI16, - BFD_RELOC_SH_PLT_LOW16, - BFD_RELOC_SH_PLT_MEDLOW16, - BFD_RELOC_SH_PLT_MEDHI16, - BFD_RELOC_SH_PLT_HI16, - BFD_RELOC_SH_GOTOFF_LOW16, - BFD_RELOC_SH_GOTOFF_MEDLOW16, - BFD_RELOC_SH_GOTOFF_MEDHI16, - BFD_RELOC_SH_GOTOFF_HI16, - BFD_RELOC_SH_GOTPC_LOW16, - BFD_RELOC_SH_GOTPC_MEDLOW16, - BFD_RELOC_SH_GOTPC_MEDHI16, - BFD_RELOC_SH_GOTPC_HI16, BFD_RELOC_SH_COPY64, BFD_RELOC_SH_GLOB_DAT64, BFD_RELOC_SH_JMP_SLOT64, @@ -4314,24 +4294,6 @@ enum bfd_reloc_code_real BFD_RELOC_SH_GOTPLT10BY8, BFD_RELOC_SH_GOTPLT32, BFD_RELOC_SH_SHMEDIA_CODE, - BFD_RELOC_SH_IMMU5, - BFD_RELOC_SH_IMMS6, - BFD_RELOC_SH_IMMS6BY32, - BFD_RELOC_SH_IMMU6, - BFD_RELOC_SH_IMMS10, - BFD_RELOC_SH_IMMS10BY2, - BFD_RELOC_SH_IMMS10BY4, - BFD_RELOC_SH_IMMS10BY8, - BFD_RELOC_SH_IMMS16, - BFD_RELOC_SH_IMMU16, - BFD_RELOC_SH_IMM_LOW16, - BFD_RELOC_SH_IMM_LOW16_PCREL, - BFD_RELOC_SH_IMM_MEDLOW16, - BFD_RELOC_SH_IMM_MEDLOW16_PCREL, - BFD_RELOC_SH_IMM_MEDHI16, - BFD_RELOC_SH_IMM_MEDHI16_PCREL, - BFD_RELOC_SH_IMM_HI16, - BFD_RELOC_SH_IMM_HI16_PCREL, BFD_RELOC_SH_PT_16, BFD_RELOC_SH_TLS_GD_32, BFD_RELOC_SH_TLS_LD_32, --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1789,26 +1789,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SH_LOOP_START", "BFD_RELOC_SH_LOOP_END", "BFD_RELOC_SH_GOTPC", - "BFD_RELOC_SH_GOT_LOW16", - "BFD_RELOC_SH_GOT_MEDLOW16", - "BFD_RELOC_SH_GOT_MEDHI16", - "BFD_RELOC_SH_GOT_HI16", - "BFD_RELOC_SH_GOTPLT_LOW16", - "BFD_RELOC_SH_GOTPLT_MEDLOW16", - "BFD_RELOC_SH_GOTPLT_MEDHI16", - "BFD_RELOC_SH_GOTPLT_HI16", - "BFD_RELOC_SH_PLT_LOW16", - "BFD_RELOC_SH_PLT_MEDLOW16", - "BFD_RELOC_SH_PLT_MEDHI16", - "BFD_RELOC_SH_PLT_HI16", - "BFD_RELOC_SH_GOTOFF_LOW16", - "BFD_RELOC_SH_GOTOFF_MEDLOW16", - "BFD_RELOC_SH_GOTOFF_MEDHI16", - "BFD_RELOC_SH_GOTOFF_HI16", - "BFD_RELOC_SH_GOTPC_LOW16", - "BFD_RELOC_SH_GOTPC_MEDLOW16", - "BFD_RELOC_SH_GOTPC_MEDHI16", - "BFD_RELOC_SH_GOTPC_HI16", "BFD_RELOC_SH_COPY64", "BFD_RELOC_SH_GLOB_DAT64", "BFD_RELOC_SH_JMP_SLOT64", @@ -1819,24 +1799,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SH_GOTPLT10BY8", "BFD_RELOC_SH_GOTPLT32", "BFD_RELOC_SH_SHMEDIA_CODE", - "BFD_RELOC_SH_IMMU5", - "BFD_RELOC_SH_IMMS6", - "BFD_RELOC_SH_IMMS6BY32", - "BFD_RELOC_SH_IMMU6", - "BFD_RELOC_SH_IMMS10", - "BFD_RELOC_SH_IMMS10BY2", - "BFD_RELOC_SH_IMMS10BY4", - "BFD_RELOC_SH_IMMS10BY8", - "BFD_RELOC_SH_IMMS16", - "BFD_RELOC_SH_IMMU16", - "BFD_RELOC_SH_IMM_LOW16", - "BFD_RELOC_SH_IMM_LOW16_PCREL", - "BFD_RELOC_SH_IMM_MEDLOW16", - "BFD_RELOC_SH_IMM_MEDLOW16_PCREL", - "BFD_RELOC_SH_IMM_MEDHI16", - "BFD_RELOC_SH_IMM_MEDHI16_PCREL", - "BFD_RELOC_SH_IMM_HI16", - "BFD_RELOC_SH_IMM_HI16_PCREL", "BFD_RELOC_SH_PT_16", "BFD_RELOC_SH_TLS_GD_32", "BFD_RELOC_SH_TLS_LD_32", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -3196,46 +3196,6 @@ ENUMX ENUMX BFD_RELOC_SH_GOTPC ENUMX - BFD_RELOC_SH_GOT_LOW16 -ENUMX - BFD_RELOC_SH_GOT_MEDLOW16 -ENUMX - BFD_RELOC_SH_GOT_MEDHI16 -ENUMX - BFD_RELOC_SH_GOT_HI16 -ENUMX - BFD_RELOC_SH_GOTPLT_LOW16 -ENUMX - BFD_RELOC_SH_GOTPLT_MEDLOW16 -ENUMX - BFD_RELOC_SH_GOTPLT_MEDHI16 -ENUMX - BFD_RELOC_SH_GOTPLT_HI16 -ENUMX - BFD_RELOC_SH_PLT_LOW16 -ENUMX - BFD_RELOC_SH_PLT_MEDLOW16 -ENUMX - BFD_RELOC_SH_PLT_MEDHI16 -ENUMX - BFD_RELOC_SH_PLT_HI16 -ENUMX - BFD_RELOC_SH_GOTOFF_LOW16 -ENUMX - BFD_RELOC_SH_GOTOFF_MEDLOW16 -ENUMX - BFD_RELOC_SH_GOTOFF_MEDHI16 -ENUMX - BFD_RELOC_SH_GOTOFF_HI16 -ENUMX - BFD_RELOC_SH_GOTPC_LOW16 -ENUMX - BFD_RELOC_SH_GOTPC_MEDLOW16 -ENUMX - BFD_RELOC_SH_GOTPC_MEDHI16 -ENUMX - BFD_RELOC_SH_GOTPC_HI16 -ENUMX BFD_RELOC_SH_COPY64 ENUMX BFD_RELOC_SH_GLOB_DAT64 @@ -3256,42 +3216,6 @@ ENUMX ENUMX BFD_RELOC_SH_SHMEDIA_CODE ENUMX - BFD_RELOC_SH_IMMU5 -ENUMX - BFD_RELOC_SH_IMMS6 -ENUMX - BFD_RELOC_SH_IMMS6BY32 -ENUMX - BFD_RELOC_SH_IMMU6 -ENUMX - BFD_RELOC_SH_IMMS10 -ENUMX - BFD_RELOC_SH_IMMS10BY2 -ENUMX - BFD_RELOC_SH_IMMS10BY4 -ENUMX - BFD_RELOC_SH_IMMS10BY8 -ENUMX - BFD_RELOC_SH_IMMS16 -ENUMX - BFD_RELOC_SH_IMMU16 -ENUMX - BFD_RELOC_SH_IMM_LOW16 -ENUMX - BFD_RELOC_SH_IMM_LOW16_PCREL -ENUMX - BFD_RELOC_SH_IMM_MEDLOW16 -ENUMX - BFD_RELOC_SH_IMM_MEDLOW16_PCREL -ENUMX - BFD_RELOC_SH_IMM_MEDHI16 -ENUMX - BFD_RELOC_SH_IMM_MEDHI16_PCREL -ENUMX - BFD_RELOC_SH_IMM_HI16 -ENUMX - BFD_RELOC_SH_IMM_HI16_PCREL -ENUMX BFD_RELOC_SH_PT_16 ENUMX BFD_RELOC_SH_TLS_GD_32 From patchwork Fri Mar 13 09:54:21 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 131663 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id A74DE4B1A2CE for ; Fri, 13 Mar 2026 09:55:31 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A74DE4B1A2CE 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=H9wiHmSz 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 E2E584C3184B for ; Fri, 13 Mar 2026 09:54:24 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E2E584C3184B 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 E2E584C3184B 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=1773395665; cv=none; b=cnnsVg3pXWZM/iFEqyXUDYCrg0qTRVKFzpiPPqFk1D2Hn0YtoB2xcXWLUWFNVTgL2Gdn5H4V2/IzuJvYa1o7aY8pKqTSOaRbkP/q51mARAWjdC0a4N2f7rMOYL/DlQU0g6tky3Z0uFeIA8zYG8TgKB4EOizsYQBjOYmFZyU1Ks4= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395665; c=relaxed/simple; bh=894T5DoQCl9FnYM3SEYMXBV/Qm/kElp8SOkvv2VVuwE=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=N55BtvfXbz/Zd2Qr2n5rXdkPWFQSZEz9eFrjERdqAjU41uDQHq1bIVE83/y8VNn0+34d/T7chKo//2A2pe3bkkhdbcwRk6iwf50J4kmtTmhV8YmcR5/TbJs/CixgjTf7jS1/4VL7yDIu1ZspmIWzMhZTEOeS/Fl++KpqPXwkZlY= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E2E584C3184B Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-48535a0ef86so16405605e9.1 for ; Fri, 13 Mar 2026 02:54:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773395664; x=1774000464; 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=HmpVPcrxfgVlXb/dhU+1kciN8/zU1XVdAjLQ4Yw7JDQ=; b=H9wiHmSzhOhP32XoSRYY9FKd3FCKT4nuzZ0dEzaq5OyEjt26mqYLTzJuC/7m32+y0e jKGvyak2tfu83hhDk63gU1iTiytHQsne3FPKJdBFzBYInSIzSDlRZ/x283BYQ8gti+Fc Y5TJiWHlqp6kmPhhu93XjubeUp1uUJ0Znzh7Swa1cpGc+HP5US+PzAlgxiaR5p/0Da2z r9erc9xby8eSC6lnO211TJrRLwg8Huecl50pyoUa0AqrCp4NTBiNl2XY0OFPqzs6/u7i gBkkJHMsndc0+7MSU55IFtKuZIKTjmoQ5hivnN1TNAhRf9btoK26Bdg7DvwD7SViSMYS eX0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773395664; x=1774000464; 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=HmpVPcrxfgVlXb/dhU+1kciN8/zU1XVdAjLQ4Yw7JDQ=; b=K1lwOPLzUB6Gxu9x8wyqJSMXIJGj6dFhRY6o6wUezdfl0Y9YNGff/d/NQaBX87hiqR X4GHZd6ueUs+OfU5h0t8qH8BQIy3gYLJlLPBTJ173acAEYO1wviKigqpIw/0OnqTkHps g2CH7yieaVAH0XzV8pIG7668Mj4x+ZdRov/kyq36tdJR5klj4DCJUHYulc5NPQQY8i2O 6KjNaOmd8d9pShutR2XKUTwCqrjwkFiUHUgBNR0aymdDA06Fr/BAXwpNR5r8AWIZXNzl jgcjbFMxxarFFu4YLEg8mROdNX7Qnme09QWMiDhggbyClEtNJV0FKbioRHb9xfpZGV0u k+Ng== X-Gm-Message-State: AOJu0YxEctvLdZrqnIB4qEkYMo4vvOcKgXPuVCU+v9rIMRVSBZRMi8iI rH6ArvUlxTt5vhipoTxhF8JvUv7TVoQreu0FbT85QD66j3eqAo+FYOi1uebwcQ8htKy2zvVV27e FUuA= X-Gm-Gg: ATEYQzyaQddFWkUklY50qcGNOuDjUBXxVl7GmyBmt2II/vnAxdpzsgOIi/nXYxeqGWS tmxJdwJq4H/eK19ZfLZZIWGUt7seiYh1NfIDaIl8OWmHi61x0sL+BpL89KLllHC5UrhjqJDkcau /IqPlILLj+3sAni9zwnw1lCs27ahGqkv1S2aOpg2jve4D7r97KVxz+H23Uuw6H0CPr6p0QKgdVK ss4tXHA6p4i/N8U4ZmQ8+g5FPres8xtVFdn6he1ZP7+6b1s3ej6cP0b2gITccBlPqit00nx0QUJ SsUaUH8lafLtiW/HllhgGlSS4OrMFgu11D0/LySqK51oraRz2qn2vLpjlyaICAwsZX4wZGcqNEq lcIyyATVWKmAMnqRSbIY18Z+6G5sQif+S5Lo83fOyD8213XH/4Dhv0utlzIMO0nUScHCFeGnEMv dsggAGCfdW/ETvjwB0I6aV25yfDNO5JeJrPPZc+r7pyVXZD1Xs+CtRXKnoirk9gjN5Qp81iolTB 6MYWgEUb8ep4UA= X-Received: by 2002:a05:600c:4ed1:b0:485:3d43:7c9a with SMTP id 5b1f17b1804b1-4855670e6dcmr39847025e9.25.1773395663526; Fri, 13 Mar 2026 02:54:23 -0700 (PDT) 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-439fe20bd9csm16158255f8f.21.2026.03.13.02.54.22 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 13 Mar 2026 02:54:23 -0700 (PDT) Message-ID: Date: Fri, 13 Mar 2026 10:54:21 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 4/8] bfd/ELF: fold BFD_RELOC__GOTOFF* From: Jan Beulich To: Binutils References: <76acf518-e951-4737-8444-6718df6ce778@suse.com> Content-Language: en-US Cc: Claudiu Zissulescu , "ramana.radhakrishnan@arm.com" , Richard Earnshaw , Jie Zhang , Nick Clifton , Alexandre Oliva , "H.J. Lu" , Jon Beniston , Doug Evans , 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: <76acf518-e951-4737-8444-6718df6ce778@suse.com> X-Spam-Status: No, score=-1007.2 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, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on 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 For many of the cases there's no need to have separate relocs per arch; just like for other more or less generic ones a single one (per purpose; a 64-bit generic one is being introduced) will do. Arm64, C-Sky, and KVX - sadly - continue to be exceptions. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3306,6 +3306,7 @@ enum bfd_reloc_code_real BFD_RELOC_32_GOT_PCREL, BFD_RELOC_16_GOT_PCREL, BFD_RELOC_8_GOT_PCREL, + BFD_RELOC_64_GOTOFF, BFD_RELOC_32_GOTOFF, BFD_RELOC_16_GOTOFF, BFD_RELOC_LO16_GOTOFF, @@ -3760,8 +3761,6 @@ enum bfd_reloc_code_real BFD_RELOC_FRV_FUNCDESC_GOTOFFHI, BFD_RELOC_FRV_FUNCDESC_GOTOFFLO, BFD_RELOC_FRV_GOTOFF12, - BFD_RELOC_FRV_GOTOFFHI, - BFD_RELOC_FRV_GOTOFFLO, BFD_RELOC_FRV_GETTLSOFF, BFD_RELOC_FRV_TLSDESC_VALUE, BFD_RELOC_FRV_GOTTLSDESC12, @@ -3817,7 +3816,6 @@ enum bfd_reloc_code_real /* i386/elf relocations. */ BFD_RELOC_386_GOT32, BFD_RELOC_386_PLT32, - BFD_RELOC_386_GOTOFF, BFD_RELOC_386_GOTPC, BFD_RELOC_386_TLS_TPOFF, BFD_RELOC_386_TLS_IE, @@ -3848,7 +3846,6 @@ enum bfd_reloc_code_real BFD_RELOC_X86_64_DTPOFF32, BFD_RELOC_X86_64_GOTTPOFF, BFD_RELOC_X86_64_TPOFF32, - BFD_RELOC_X86_64_GOTOFF64, BFD_RELOC_X86_64_GOTPC32, BFD_RELOC_X86_64_GOT64, BFD_RELOC_X86_64_GOTPCREL64, @@ -4165,7 +4162,6 @@ enum bfd_reloc_code_real /* Relocations for setting up GOTs and PLTs for shared libraries. */ BFD_RELOC_ARM_GOT32, - BFD_RELOC_ARM_GOTOFF, BFD_RELOC_ARM_GOTPC, BFD_RELOC_ARM_GOT_PREL, @@ -4352,7 +4348,6 @@ enum bfd_reloc_code_real BFD_RELOC_ARC_32_PCREL, BFD_RELOC_ARC_GOT32, BFD_RELOC_ARC_GOTPC32, - BFD_RELOC_ARC_GOTOFF, BFD_RELOC_ARC_GOTPC, BFD_RELOC_ARC_S21W_PCREL_PLT, BFD_RELOC_ARC_S25H_PCREL_PLT, @@ -4417,8 +4412,6 @@ enum bfd_reloc_code_real BFD_RELOC_BFIN_FUNCDESC_GOTOFFHI, BFD_RELOC_BFIN_FUNCDESC_GOTOFFLO, BFD_RELOC_BFIN_GOTOFF17M4, - BFD_RELOC_BFIN_GOTOFFHI, - BFD_RELOC_BFIN_GOTOFFLO, /* ADI Blackfin GOT relocation. */ BFD_RELOC_BFIN_GOT, @@ -4591,9 +4584,6 @@ enum bfd_reloc_code_real BFD_RELOC_M32R_GOT24, BFD_RELOC_M32R_26_PLTREL, BFD_RELOC_M32R_GOTOFF, - BFD_RELOC_M32R_GOTOFF_HI_ULO, - BFD_RELOC_M32R_GOTOFF_HI_SLO, - BFD_RELOC_M32R_GOTOFF_LO, BFD_RELOC_M32R_GOTPC24, BFD_RELOC_M32R_GOT16_HI_ULO, BFD_RELOC_M32R_GOT16_HI_SLO, @@ -4919,8 +4909,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_16_GOTOFF, - BFD_RELOC_V850_32_GOTOFF, /* Start code. */ BFD_RELOC_V850_CODE, @@ -5054,8 +5042,6 @@ enum bfd_reloc_code_real BFD_RELOC_METAG_LOOG, BFD_RELOC_METAG_REL8, BFD_RELOC_METAG_REL16, - BFD_RELOC_METAG_HI16_GOTOFF, - BFD_RELOC_METAG_LO16_GOTOFF, BFD_RELOC_METAG_GETSET_GOTOFF, BFD_RELOC_METAG_GETSET_GOT, BFD_RELOC_METAG_HI16_GOTPC, @@ -5063,7 +5049,6 @@ enum bfd_reloc_code_real BFD_RELOC_METAG_HI16_PLT, BFD_RELOC_METAG_LO16_PLT, BFD_RELOC_METAG_RELBRANCH_PLT, - BFD_RELOC_METAG_GOTOFF, BFD_RELOC_METAG_PLT, BFD_RELOC_METAG_TLS_GD, BFD_RELOC_METAG_TLS_LDM, @@ -5427,9 +5412,6 @@ enum bfd_reloc_code_real /* 32 bit rel. offset to GOT entry. */ BFD_RELOC_390_GOTENT, - /* 64 bit offset to GOT. */ - BFD_RELOC_390_GOTOFF64, - /* 12-bit offset to symbol-entry within GOT, with PLT handling. */ BFD_RELOC_390_GOTPLT12, @@ -6152,8 +6134,6 @@ enum bfd_reloc_code_real BFD_RELOC_LM32_CALL, BFD_RELOC_LM32_BRANCH, BFD_RELOC_LM32_16_GOT, - BFD_RELOC_LM32_GOTOFF_HI16, - BFD_RELOC_LM32_GOTOFF_LO16, /* Difference between two section addreses. Must be followed by a BFD_RELOC_MACH_O_PAIR. */ --- 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_GOTOFF BFD_RELOC_32_GOTOFF #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 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -2019,7 +2019,7 @@ static const struct elf32_arm_reloc_map {BFD_RELOC_GLOB_DAT, R_ARM_GLOB_DAT}, {BFD_RELOC_JMP_SLOT, R_ARM_JUMP_SLOT}, {BFD_RELOC_RELATIVE, R_ARM_RELATIVE}, - {BFD_RELOC_ARM_GOTOFF, R_ARM_GOTOFF32}, + {BFD_RELOC_32_GOTOFF, R_ARM_GOTOFF32}, {BFD_RELOC_ARM_GOTPC, R_ARM_GOTPC}, {BFD_RELOC_ARM_GOT_PREL, R_ARM_GOT_PREL}, {BFD_RELOC_ARM_GOT32, R_ARM_GOT32}, --- a/bfd/elf32-bfin.c +++ b/bfd/elf32-bfin.c @@ -1034,8 +1034,8 @@ static const struct bfin_reloc_map bfin_ { BFD_RELOC_BFIN_FUNCDESC_GOTOFFHI, R_BFIN_FUNCDESC_GOTOFFHI }, { BFD_RELOC_BFIN_FUNCDESC_GOTOFFLO, R_BFIN_FUNCDESC_GOTOFFLO }, { BFD_RELOC_BFIN_GOTOFF17M4, R_BFIN_GOTOFF17M4 }, - { BFD_RELOC_BFIN_GOTOFFHI, R_BFIN_GOTOFFHI }, - { BFD_RELOC_BFIN_GOTOFFLO, R_BFIN_GOTOFFLO }, + { BFD_RELOC_HI16_GOTOFF, R_BFIN_GOTOFFHI }, + { BFD_RELOC_LO16_GOTOFF, R_BFIN_GOTOFFLO }, { BFD_RELOC_VTABLE_INHERIT, R_BFIN_GNU_VTINHERIT }, { BFD_RELOC_VTABLE_ENTRY, R_BFIN_GNU_VTENTRY }, --- a/bfd/elf32-frv.c +++ b/bfd/elf32-frv.c @@ -2441,10 +2441,10 @@ frv_reloc_type_lookup (bfd *abfd ATTRIBU case BFD_RELOC_FRV_GOTOFF12: return &elf32_frv_howto_table[ (int) R_FRV_GOTOFF12]; - case BFD_RELOC_FRV_GOTOFFHI: + case BFD_RELOC_HI16_GOTOFF: return &elf32_frv_howto_table[ (int) R_FRV_GOTOFFHI]; - case BFD_RELOC_FRV_GOTOFFLO: + case BFD_RELOC_LO16_GOTOFF: return &elf32_frv_howto_table[ (int) R_FRV_GOTOFFLO]; case BFD_RELOC_FRV_GETTLSOFF: --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -233,8 +233,8 @@ elf_i386_reloc_type_lookup (bfd *abfd, TRACE ("BFD_RELOC_RELATIVE"); return &elf_howto_table[R_386_RELATIVE]; - case BFD_RELOC_386_GOTOFF: - TRACE ("BFD_RELOC_386_GOTOFF"); + case BFD_RELOC_32_GOTOFF: + TRACE ("BFD_RELOC_32_GOTOFF"); return &elf_howto_table[R_386_GOTOFF]; case BFD_RELOC_386_GOTPC: --- a/bfd/elf32-lm32.c +++ b/bfd/elf32-lm32.c @@ -442,8 +442,8 @@ static const struct lm32_reloc_map lm32_ { BFD_RELOC_VTABLE_INHERIT, R_LM32_GNU_VTINHERIT }, { BFD_RELOC_VTABLE_ENTRY, R_LM32_GNU_VTENTRY }, { 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_HI16_GOTOFF, R_LM32_GOTOFF_HI16 }, + { BFD_RELOC_LO16_GOTOFF, R_LM32_GOTOFF_LO16 }, { BFD_RELOC_COPY, R_LM32_COPY }, { BFD_RELOC_GLOB_DAT, R_LM32_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_LM32_JMP_SLOT }, --- a/bfd/elf32-m32r.c +++ b/bfd/elf32-m32r.c @@ -1223,9 +1223,9 @@ static const struct m32r_reloc_map m32r_ { BFD_RELOC_M32R_GOTPC_HI_ULO, R_M32R_GOTPC_HI_ULO }, { BFD_RELOC_M32R_GOTPC_HI_SLO, R_M32R_GOTPC_HI_SLO }, { BFD_RELOC_M32R_GOTPC_LO, R_M32R_GOTPC_LO }, - { BFD_RELOC_M32R_GOTOFF_HI_ULO, R_M32R_GOTOFF_HI_ULO }, - { BFD_RELOC_M32R_GOTOFF_HI_SLO, R_M32R_GOTOFF_HI_SLO }, - { BFD_RELOC_M32R_GOTOFF_LO, R_M32R_GOTOFF_LO }, + { BFD_RELOC_HI16_GOTOFF, R_M32R_GOTOFF_HI_ULO }, + { BFD_RELOC_HI16_S_GOTOFF, R_M32R_GOTOFF_HI_SLO }, + { BFD_RELOC_LO16_GOTOFF, R_M32R_GOTOFF_LO }, }; #endif --- a/bfd/elf32-metag.c +++ b/bfd/elf32-metag.c @@ -709,8 +709,8 @@ static const struct metag_reloc_map meta { BFD_RELOC_VTABLE_ENTRY, R_METAG_GNU_VTENTRY }, { BFD_RELOC_METAG_REL8, R_METAG_REL8 }, { BFD_RELOC_METAG_REL16, R_METAG_REL16 }, - { BFD_RELOC_METAG_HI16_GOTOFF, R_METAG_HI16_GOTOFF }, - { BFD_RELOC_METAG_LO16_GOTOFF, R_METAG_LO16_GOTOFF }, + { BFD_RELOC_HI16_GOTOFF, R_METAG_HI16_GOTOFF }, + { BFD_RELOC_LO16_GOTOFF, R_METAG_LO16_GOTOFF }, { BFD_RELOC_METAG_GETSET_GOTOFF, R_METAG_GETSET_GOTOFF }, { BFD_RELOC_METAG_GETSET_GOT, R_METAG_GETSET_GOT }, { BFD_RELOC_METAG_HI16_GOTPC, R_METAG_HI16_GOTPC }, @@ -718,7 +718,7 @@ static const struct metag_reloc_map meta { BFD_RELOC_METAG_HI16_PLT, R_METAG_HI16_PLT }, { BFD_RELOC_METAG_LO16_PLT, R_METAG_LO16_PLT }, { BFD_RELOC_METAG_RELBRANCH_PLT, R_METAG_RELBRANCH_PLT }, - { BFD_RELOC_METAG_GOTOFF, R_METAG_GOTOFF }, + { BFD_RELOC_32_GOTOFF, R_METAG_GOTOFF }, { BFD_RELOC_METAG_PLT, R_METAG_PLT }, { BFD_RELOC_COPY, R_METAG_COPY }, { BFD_RELOC_JMP_SLOT, R_METAG_JMP_SLOT }, --- a/bfd/elf32-v850.c +++ b/bfd/elf32-v850.c @@ -1740,8 +1740,8 @@ static const struct v850_elf_reloc_map v { BFD_RELOC_GLOB_DAT, R_V850_GLOB_DAT }, { BFD_RELOC_JMP_SLOT, R_V850_JMP_SLOT }, { 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_16_GOTOFF, R_V850_16_GOTOFF }, + { BFD_RELOC_32_GOTOFF, R_V850_32_GOTOFF }, { BFD_RELOC_V850_CODE, R_V850_CODE }, { BFD_RELOC_V850_DATA, R_V850_DATA }, }; --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -263,7 +263,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_GOTENT]; case BFD_RELOC_16_GOTOFF: return &elf_howto_table[(int) R_390_GOTOFF16]; - case BFD_RELOC_390_GOTOFF64: + case BFD_RELOC_64_GOTOFF: return &elf_howto_table[(int) R_390_GOTOFF64]; case BFD_RELOC_390_GOTPLT12: return &elf_howto_table[(int) R_390_GOTPLT12]; --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -255,7 +255,7 @@ static const struct elf_reloc_map x86_64 { BFD_RELOC_X86_64_GOTTPOFF, R_X86_64_GOTTPOFF, }, { BFD_RELOC_X86_64_TPOFF32, R_X86_64_TPOFF32, }, { BFD_RELOC_64_PCREL, R_X86_64_PC64, }, - { BFD_RELOC_X86_64_GOTOFF64, R_X86_64_GOTOFF64, }, + { BFD_RELOC_64_GOTOFF, R_X86_64_GOTOFF64, }, { BFD_RELOC_X86_64_GOTPC32, R_X86_64_GOTPC32, }, { BFD_RELOC_X86_64_GOT64, R_X86_64_GOT64, }, { BFD_RELOC_X86_64_GOTPCREL64,R_X86_64_GOTPCREL64, }, --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1081,6 +1081,7 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_32_GOT_PCREL", "BFD_RELOC_16_GOT_PCREL", "BFD_RELOC_8_GOT_PCREL", + "BFD_RELOC_64_GOTOFF", "BFD_RELOC_32_GOTOFF", "BFD_RELOC_16_GOTOFF", "BFD_RELOC_LO16_GOTOFF", @@ -1373,8 +1374,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_FRV_FUNCDESC_GOTOFFHI", "BFD_RELOC_FRV_FUNCDESC_GOTOFFLO", "BFD_RELOC_FRV_GOTOFF12", - "BFD_RELOC_FRV_GOTOFFHI", - "BFD_RELOC_FRV_GOTOFFLO", "BFD_RELOC_FRV_GETTLSOFF", "BFD_RELOC_FRV_TLSDESC_VALUE", "BFD_RELOC_FRV_GOTTLSDESC12", @@ -1408,7 +1407,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_TLS_TPOFF", "BFD_RELOC_386_GOT32", "BFD_RELOC_386_PLT32", - "BFD_RELOC_386_GOTOFF", "BFD_RELOC_386_GOTPC", "BFD_RELOC_386_TLS_TPOFF", "BFD_RELOC_386_TLS_IE", @@ -1437,7 +1435,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_X86_64_DTPOFF32", "BFD_RELOC_X86_64_GOTTPOFF", "BFD_RELOC_X86_64_TPOFF32", - "BFD_RELOC_X86_64_GOTOFF64", "BFD_RELOC_X86_64_GOTPC32", "BFD_RELOC_X86_64_GOT64", "BFD_RELOC_X86_64_GOTPCREL64", @@ -1683,7 +1680,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_GOTOFF", "BFD_RELOC_ARM_GOTPC", "BFD_RELOC_ARM_GOT_PREL", "BFD_RELOC_ARM_TLS_GD32", @@ -1855,7 +1851,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARC_32_PCREL", "BFD_RELOC_ARC_GOT32", "BFD_RELOC_ARC_GOTPC32", - "BFD_RELOC_ARC_GOTOFF", "BFD_RELOC_ARC_GOTPC", "BFD_RELOC_ARC_S21W_PCREL_PLT", "BFD_RELOC_ARC_S25H_PCREL_PLT", @@ -1896,8 +1891,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_BFIN_FUNCDESC_GOTOFFHI", "BFD_RELOC_BFIN_FUNCDESC_GOTOFFLO", "BFD_RELOC_BFIN_GOTOFF17M4", - "BFD_RELOC_BFIN_GOTOFFHI", - "BFD_RELOC_BFIN_GOTOFFLO", "BFD_RELOC_BFIN_GOT", "BFD_RELOC_BFIN_PLTPC", "BFD_ARELOC_BFIN_PUSH", @@ -1953,9 +1946,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_M32R_GOT24", "BFD_RELOC_M32R_26_PLTREL", "BFD_RELOC_M32R_GOTOFF", - "BFD_RELOC_M32R_GOTOFF_HI_ULO", - "BFD_RELOC_M32R_GOTOFF_HI_SLO", - "BFD_RELOC_M32R_GOTOFF_LO", "BFD_RELOC_M32R_GOTPC24", "BFD_RELOC_M32R_GOT16_HI_ULO", "BFD_RELOC_M32R_GOT16_HI_SLO", @@ -2124,8 +2114,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_16_GOTOFF", - "BFD_RELOC_V850_32_GOTOFF", "BFD_RELOC_V850_CODE", "BFD_RELOC_V850_DATA", "BFD_RELOC_TIC30_LDP", @@ -2202,8 +2190,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_METAG_LOOG", "BFD_RELOC_METAG_REL8", "BFD_RELOC_METAG_REL16", - "BFD_RELOC_METAG_HI16_GOTOFF", - "BFD_RELOC_METAG_LO16_GOTOFF", "BFD_RELOC_METAG_GETSET_GOTOFF", "BFD_RELOC_METAG_GETSET_GOT", "BFD_RELOC_METAG_HI16_GOTPC", @@ -2211,7 +2197,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_METAG_HI16_PLT", "BFD_RELOC_METAG_LO16_PLT", "BFD_RELOC_METAG_RELBRANCH_PLT", - "BFD_RELOC_METAG_GOTOFF", "BFD_RELOC_METAG_PLT", "BFD_RELOC_METAG_TLS_GD", "BFD_RELOC_METAG_TLS_LDM", @@ -2409,7 +2394,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_390_GOTPCDBL", "BFD_RELOC_390_GOT64", "BFD_RELOC_390_GOTENT", - "BFD_RELOC_390_GOTOFF64", "BFD_RELOC_390_GOTPLT12", "BFD_RELOC_390_GOTPLT16", "BFD_RELOC_390_GOTPLT32", @@ -2814,8 +2798,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_LM32_CALL", "BFD_RELOC_LM32_BRANCH", "BFD_RELOC_LM32_16_GOT", - "BFD_RELOC_LM32_GOTOFF_HI16", - "BFD_RELOC_LM32_GOTOFF_LO16", "BFD_RELOC_MACH_O_SECTDIFF", "BFD_RELOC_MACH_O_LOCAL_SECTDIFF", "BFD_RELOC_MACH_O_PAIR", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -1435,6 +1435,8 @@ ENUMX ENUMX BFD_RELOC_8_GOT_PCREL ENUMX + BFD_RELOC_64_GOTOFF +ENUMX BFD_RELOC_32_GOTOFF ENUMX BFD_RELOC_16_GOTOFF @@ -2228,10 +2230,6 @@ ENUMX ENUMX BFD_RELOC_FRV_GOTOFF12 ENUMX - BFD_RELOC_FRV_GOTOFFHI -ENUMX - BFD_RELOC_FRV_GOTOFFLO -ENUMX BFD_RELOC_FRV_GETTLSOFF ENUMX BFD_RELOC_FRV_TLSDESC_VALUE @@ -2322,8 +2320,6 @@ ENUM ENUMX BFD_RELOC_386_PLT32 ENUMX - BFD_RELOC_386_GOTOFF -ENUMX BFD_RELOC_386_GOTPC ENUMX BFD_RELOC_386_TLS_TPOFF @@ -2383,8 +2379,6 @@ ENUMX ENUMX BFD_RELOC_X86_64_TPOFF32 ENUMX - BFD_RELOC_X86_64_GOTOFF64 -ENUMX BFD_RELOC_X86_64_GOTPC32 ENUMX BFD_RELOC_X86_64_GOT64 @@ -2965,8 +2959,6 @@ ENUMDOC ENUM BFD_RELOC_ARM_GOT32 ENUMX - BFD_RELOC_ARM_GOTOFF -ENUMX BFD_RELOC_ARM_GOTPC ENUMX BFD_RELOC_ARM_GOT_PREL @@ -3331,8 +3323,6 @@ ENUMX ENUMX BFD_RELOC_ARC_GOTPC32 ENUMX - BFD_RELOC_ARC_GOTOFF -ENUMX BFD_RELOC_ARC_GOTPC ENUMX BFD_RELOC_ARC_S21W_PCREL_PLT @@ -3437,10 +3427,6 @@ ENUMX BFD_RELOC_BFIN_FUNCDESC_GOTOFFLO ENUMX BFD_RELOC_BFIN_GOTOFF17M4 -ENUMX - BFD_RELOC_BFIN_GOTOFFHI -ENUMX - BFD_RELOC_BFIN_GOTOFFLO ENUMDOC ADI Blackfin FD-PIC relocations. ENUM @@ -3674,12 +3660,6 @@ ENUMX ENUMX BFD_RELOC_M32R_GOTOFF ENUMX - BFD_RELOC_M32R_GOTOFF_HI_ULO -ENUMX - BFD_RELOC_M32R_GOTOFF_HI_SLO -ENUMX - BFD_RELOC_M32R_GOTOFF_LO -ENUMX BFD_RELOC_M32R_GOTPC24 ENUMX BFD_RELOC_M32R_GOT16_HI_ULO @@ -4177,10 +4157,6 @@ ENUMX BFD_RELOC_V850_22_PLT_PCREL ENUMX BFD_RELOC_V850_32_PLT_PCREL -ENUMX - BFD_RELOC_V850_16_GOTOFF -ENUMX - BFD_RELOC_V850_32_GOTOFF ENUMDOC DSO relocations. ENUM @@ -4402,10 +4378,6 @@ ENUMX ENUMX BFD_RELOC_METAG_REL16 ENUMX - BFD_RELOC_METAG_HI16_GOTOFF -ENUMX - BFD_RELOC_METAG_LO16_GOTOFF -ENUMX BFD_RELOC_METAG_GETSET_GOTOFF ENUMX BFD_RELOC_METAG_GETSET_GOT @@ -4420,8 +4392,6 @@ ENUMX ENUMX BFD_RELOC_METAG_RELBRANCH_PLT ENUMX - BFD_RELOC_METAG_GOTOFF -ENUMX BFD_RELOC_METAG_PLT ENUMX BFD_RELOC_METAG_TLS_GD @@ -4989,10 +4959,6 @@ ENUM ENUMDOC 32 bit rel. offset to GOT entry. ENUM - BFD_RELOC_390_GOTOFF64 -ENUMDOC - 64 bit offset to GOT. -ENUM BFD_RELOC_390_GOTPLT12 ENUMDOC 12-bit offset to symbol-entry within GOT, with PLT handling. @@ -6140,10 +6106,6 @@ ENUMX BFD_RELOC_LM32_BRANCH ENUMX BFD_RELOC_LM32_16_GOT -ENUMX - BFD_RELOC_LM32_GOTOFF_HI16 -ENUMX - BFD_RELOC_LM32_GOTOFF_LO16 ENUMDOC Lattice Mico32 relocations. --- a/gas/config/tc-arc.c +++ b/gas/config/tc-arc.c @@ -542,7 +542,7 @@ static const struct arc_reloc_op_tag } arc_reloc_op[] = { - DEF (gotoff, BFD_RELOC_ARC_GOTOFF, 1), + DEF (gotoff, BFD_RELOC_32_GOTOFF, 1), DEF (gotpc, BFD_RELOC_ARC_GOTPC32, 0), DEF (plt, BFD_RELOC_32_PLT_PCREL, 0), DEF (sda, DUMMY_RELOC_ARC_ENTRY, 1), @@ -3099,7 +3099,7 @@ md_apply_fix (fixS *fixP, gas_assert (!fixP->fx_subsy); /* Fall through. */ - case BFD_RELOC_ARC_GOTOFF: + case BFD_RELOC_32_GOTOFF: case BFD_RELOC_ARC_32_ME: case BFD_RELOC_32_PCREL: md_number_to_chars_midend (fixpos, value, fixP->fx_size); --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -23894,7 +23894,7 @@ static const struct asm_shift_name shift 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 }, + { "gotoff", BFD_RELOC_32_GOTOFF }, { "GOTOFF", BFD_RELOC_32_GOTOFF }, { "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 }, @@ -28458,7 +28458,7 @@ md_apply_fix (fixS * fixP, break; case BFD_RELOC_ARM_GOT32: - case BFD_RELOC_ARM_GOTOFF: + case BFD_RELOC_32_GOTOFF: break; case BFD_RELOC_ARM_GOT_PREL: @@ -29413,7 +29413,7 @@ tc_gen_reloc (asection *section, fixS *f case BFD_RELOC_ARM_TLS_DESCSEQ: case BFD_RELOC_ARM_THM_TLS_DESCSEQ: case BFD_RELOC_ARM_GOT32: - case BFD_RELOC_ARM_GOTOFF: + case BFD_RELOC_32_GOTOFF: case BFD_RELOC_ARM_GOT_PREL: case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_ARM_TARGET1: @@ -29746,7 +29746,7 @@ arm_fix_adjustable (fixS * fixP) /* Don't allow symbols to be discarded on GOT related relocs. */ 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_32_GOTOFF || fixP->fx_r_type == BFD_RELOC_ARM_TLS_GD32 || fixP->fx_r_type == BFD_RELOC_ARM_TLS_GD32_FDPIC || fixP->fx_r_type == BFD_RELOC_ARM_TLS_LE32 --- a/gas/config/tc-frv.c +++ b/gas/config/tc-frv.c @@ -1399,8 +1399,8 @@ frv_force_relocation (fixS *fix) case BFD_RELOC_FRV_FUNCDESC_GOTOFFHI: case BFD_RELOC_FRV_FUNCDESC_GOTOFFLO: case BFD_RELOC_FRV_GOTOFF12: - case BFD_RELOC_FRV_GOTOFFHI: - case BFD_RELOC_FRV_GOTOFFLO: + case BFD_RELOC_HI16_GOTOFF: + case BFD_RELOC_LO16_GOTOFF: case BFD_RELOC_FRV_GETTLSOFF: case BFD_RELOC_FRV_TLSDESC_VALUE: case BFD_RELOC_FRV_GOTTLSDESC12: @@ -1455,8 +1455,8 @@ md_apply_fix (fixS *fixP, valueT *valP, case BFD_RELOC_FRV_FUNCDESC_GOTOFFHI: case BFD_RELOC_FRV_FUNCDESC_GOTOFFLO: case BFD_RELOC_FRV_GOTOFF12: - case BFD_RELOC_FRV_GOTOFFHI: - case BFD_RELOC_FRV_GOTOFFLO: + case BFD_RELOC_HI16_GOTOFF: + case BFD_RELOC_LO16_GOTOFF: case BFD_RELOC_FRV_GETTLSOFF: case BFD_RELOC_FRV_TLSDESC_VALUE: case BFD_RELOC_FRV_GOTTLSDESC12: --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -1403,8 +1403,8 @@ gotrel[] = { STRING_COMMA_LEN ("GOTPLT"), { _dummy_first_bfd_reloc_code_real, BFD_RELOC_X86_64_GOTPLT64 }, OPERAND_TYPE_IMM64_DISP64, true }, - { STRING_COMMA_LEN ("GOTOFF"), { BFD_RELOC_386_GOTOFF, - BFD_RELOC_X86_64_GOTOFF64 }, + { STRING_COMMA_LEN ("GOTOFF"), { BFD_RELOC_32_GOTOFF, + BFD_RELOC_64_GOTOFF }, OPERAND_TYPE_IMM64_DISP64, true }, { STRING_COMMA_LEN ("GOTPCREL"), { _dummy_first_bfd_reloc_code_real, BFD_RELOC_X86_64_GOTPCREL }, @@ -4097,7 +4097,7 @@ tc_i386_fix_adjustable (fixS *fixP) for size relocations. */ if (fixP->fx_r_type == BFD_RELOC_SIZE32 || fixP->fx_r_type == BFD_RELOC_SIZE64 - || fixP->fx_r_type == BFD_RELOC_386_GOTOFF + || fixP->fx_r_type == BFD_RELOC_32_GOTOFF || fixP->fx_r_type == BFD_RELOC_386_GOT32 || fixP->fx_r_type == BFD_RELOC_386_GOT32X || fixP->fx_r_type == BFD_RELOC_386_TLS_GD @@ -4127,7 +4127,7 @@ tc_i386_fix_adjustable (fixS *fixP) || fixP->fx_r_type == BFD_RELOC_X86_64_CODE_6_GOTTPOFF || fixP->fx_r_type == BFD_RELOC_X86_64_TPOFF32 || fixP->fx_r_type == BFD_RELOC_X86_64_TPOFF64 - || fixP->fx_r_type == BFD_RELOC_X86_64_GOTOFF64 + || fixP->fx_r_type == BFD_RELOC_64_GOTOFF || fixP->fx_r_type == BFD_RELOC_X86_64_GOT64 || fixP->fx_r_type == BFD_RELOC_X86_64_GOTPC32_TLSDESC || fixP->fx_r_type == BFD_RELOC_X86_64_CODE_4_GOTPC32_TLSDESC @@ -15077,9 +15077,9 @@ i386_finalize_displacement (segT exp_seg /* We do this to make sure that the section symbol is in the symbol table. We will ultimately change the relocation to be relative to the beginning of the section. */ - if (i.reloc[this_operand] == BFD_RELOC_386_GOTOFF + if (i.reloc[this_operand] == BFD_RELOC_32_GOTOFF || i.reloc[this_operand] == BFD_RELOC_X86_64_GOTPCREL - || i.reloc[this_operand] == BFD_RELOC_X86_64_GOTOFF64) + || i.reloc[this_operand] == BFD_RELOC_64_GOTOFF) { if (exp->X_op != O_symbol) goto inv_disp; @@ -15092,7 +15092,7 @@ i386_finalize_displacement (segT exp_seg exp->X_op_symbol = GOT_symbol; if (i.reloc[this_operand] == BFD_RELOC_X86_64_GOTPCREL) i.reloc[this_operand] = BFD_RELOC_32_PCREL; - else if (i.reloc[this_operand] == BFD_RELOC_X86_64_GOTOFF64) + else if (i.reloc[this_operand] == BFD_RELOC_64_GOTOFF) i.reloc[this_operand] = BFD_RELOC_64; else i.reloc[this_operand] = BFD_RELOC_32; @@ -18418,9 +18418,9 @@ i386_validate_fix (fixS *fixp) else { if (!object_64bit) - fixp->fx_r_type = BFD_RELOC_386_GOTOFF; + fixp->fx_r_type = BFD_RELOC_32_GOTOFF; else - fixp->fx_r_type = BFD_RELOC_X86_64_GOTOFF64; + fixp->fx_r_type = BFD_RELOC_64_GOTOFF; } fixp->fx_subsy = 0; } @@ -18524,7 +18524,7 @@ tc_gen_reloc (asection *section ATTRIBUT case BFD_RELOC_386_PLT32: case BFD_RELOC_386_GOT32: case BFD_RELOC_386_GOT32X: - case BFD_RELOC_386_GOTOFF: + case BFD_RELOC_32_GOTOFF: case BFD_RELOC_386_GOTPC: case BFD_RELOC_386_TLS_GD: case BFD_RELOC_386_TLS_LDM: @@ -18546,7 +18546,7 @@ tc_gen_reloc (asection *section ATTRIBUT case BFD_RELOC_X86_64_CODE_6_GOTTPOFF: case BFD_RELOC_X86_64_TPOFF32: case BFD_RELOC_X86_64_TPOFF64: - case BFD_RELOC_X86_64_GOTOFF64: + case BFD_RELOC_64_GOTOFF: case BFD_RELOC_X86_64_GOTPC32: case BFD_RELOC_X86_64_GOT64: case BFD_RELOC_X86_64_GOTPCREL64: @@ -18661,7 +18661,7 @@ tc_gen_reloc (asection *section ATTRIBUT case BFD_RELOC_X86_64_DTPOFF64: case BFD_RELOC_X86_64_TPOFF64: case BFD_RELOC_64_PCREL: - case BFD_RELOC_X86_64_GOTOFF64: + case BFD_RELOC_64_GOTOFF: case BFD_RELOC_X86_64_GOT64: case BFD_RELOC_X86_64_GOTPCREL64: case BFD_RELOC_X86_64_GOTPC64: --- a/gas/config/tc-lm32.c +++ b/gas/config/tc-lm32.c @@ -318,9 +318,9 @@ md_cgen_lookup_reloc (const CGEN_INSN *i case LM32_OPERAND_GOT16: return BFD_RELOC_LM32_16_GOT; case LM32_OPERAND_GOTOFFHI16: - return BFD_RELOC_LM32_GOTOFF_HI16; + return BFD_RELOC_HI16_GOTOFF; case LM32_OPERAND_GOTOFFLO16: - return BFD_RELOC_LM32_GOTOFF_LO16; + return BFD_RELOC_LO16_GOTOFF; case LM32_OPERAND_GP16: return BFD_RELOC_GPREL16; case LM32_OPERAND_LO16: --- a/gas/config/tc-m32r.c +++ b/gas/config/tc-m32r.c @@ -1967,11 +1967,11 @@ m32r_cgen_record_fixup_exp (fragS *frag, case BFD_RELOC_M32R_GOTOFF: if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_SLO) - r_type = BFD_RELOC_M32R_GOTOFF_HI_SLO; + r_type = BFD_RELOC_HI16_S_GOTOFF; else if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_HI16_ULO) - r_type = BFD_RELOC_M32R_GOTOFF_HI_ULO; + r_type = BFD_RELOC_HI16_GOTOFF; else if (fixP->fx_cgen.opinfo == BFD_RELOC_M32R_LO16) - r_type = BFD_RELOC_M32R_GOTOFF_LO; + r_type = BFD_RELOC_LO16_GOTOFF; break; case BFD_RELOC_M32R_26_PLTREL: --- a/gas/config/tc-metag.c +++ b/gas/config/tc-metag.c @@ -679,7 +679,7 @@ parse_imm_addr (const char *line, metag_ addr->reloc_type = BFD_RELOC_METAG_TLS_IE; } else if (exp->X_op == O_PIC_reloc && - exp->X_md == BFD_RELOC_METAG_GOTOFF) + exp->X_md == BFD_RELOC_32_GOTOFF) { exp->X_op = O_symbol; addr->reloc_type = BFD_RELOC_METAG_GETSET_GOTOFF; @@ -1880,12 +1880,12 @@ parse_imm16 (const char *line, metag_ins { exp->X_op = O_symbol; - if (exp->X_md == BFD_RELOC_METAG_GOTOFF) + if (exp->X_md == BFD_RELOC_32_GOTOFF) { if (is_hi) - insn->reloc_type = BFD_RELOC_METAG_HI16_GOTOFF; + insn->reloc_type = BFD_RELOC_HI16_GOTOFF; else if (is_lo) - insn->reloc_type = BFD_RELOC_METAG_LO16_GOTOFF; + insn->reloc_type = BFD_RELOC_LO16_GOTOFF; else return NULL; } @@ -6779,8 +6779,8 @@ metag_fix_adjustable (fixS * fixP) if (S_IS_WEAK (fixP->fx_addsy)) return 0; - if (fixP->fx_r_type == BFD_RELOC_METAG_HI16_GOTOFF || - fixP->fx_r_type == BFD_RELOC_METAG_LO16_GOTOFF || + if (fixP->fx_r_type == BFD_RELOC_HI16_GOTOFF || + fixP->fx_r_type == BFD_RELOC_LO16_GOTOFF || fixP->fx_r_type == BFD_RELOC_METAG_GETSET_GOTOFF || fixP->fx_r_type == BFD_RELOC_METAG_GETSET_GOT || fixP->fx_r_type == BFD_RELOC_METAG_HI16_GOTPC || @@ -6922,7 +6922,7 @@ metag_parse_name (char const * name, exp goto no_suffix; else if ((next_end = metag_end_of_match (next + 1, "GOTOFF"))) { - reloc_type = BFD_RELOC_METAG_GOTOFF; + reloc_type = BFD_RELOC_32_GOTOFF; op_type = O_PIC_reloc; } else if ((next_end = metag_end_of_match (next + 1, "GOT"))) --- a/gas/config/tc-s390.c +++ b/gas/config/tc-s390.c @@ -1294,7 +1294,7 @@ s390_elf_cons (int nbytes /* 1=.byte, 2= BFD_RELOC_390_GOT64, /* ELF_SUFFIX_GOT */ BFD_RELOC_64_PLT_PCREL, /* ELF_SUFFIX_PLT */ BFD_RELOC_UNUSED, /* ELF_SUFFIX_GOTENT */ - BFD_RELOC_390_GOTOFF64, /* ELF_SUFFIX_GOTOFF */ + BFD_RELOC_64_GOTOFF, /* ELF_SUFFIX_GOTOFF */ BFD_RELOC_390_GOTPLT64, /* ELF_SUFFIX_GOTPLT */ BFD_RELOC_390_PLTOFF64, /* ELF_SUFFIX_PLTOFF */ BFD_RELOC_390_TLS_GD64, /* ELF_SUFFIX_TLS_GD */ @@ -2383,7 +2383,7 @@ tc_s390_fix_adjustable (fixS *fixP) /* adjust_reloc_syms doesn't know about the GOT. */ if ( fixP->fx_r_type == BFD_RELOC_16_GOTOFF || fixP->fx_r_type == BFD_RELOC_32_GOTOFF - || fixP->fx_r_type == BFD_RELOC_390_GOTOFF64 + || fixP->fx_r_type == BFD_RELOC_64_GOTOFF || fixP->fx_r_type == BFD_RELOC_390_PLTOFF16 || fixP->fx_r_type == BFD_RELOC_390_PLTOFF32 || fixP->fx_r_type == BFD_RELOC_390_PLTOFF64 @@ -2445,7 +2445,7 @@ tc_s390_force_relocation (struct fix *fi case BFD_RELOC_390_GOT20: case BFD_RELOC_32_GOT_PCREL: case BFD_RELOC_32_GOTOFF: - case BFD_RELOC_390_GOTOFF64: + case BFD_RELOC_64_GOTOFF: case BFD_RELOC_390_PLTOFF16: case BFD_RELOC_390_PLTOFF32: case BFD_RELOC_390_PLTOFF64: @@ -2750,7 +2750,7 @@ md_apply_fix (fixS *fixP, valueT *valP, md_number_to_chars (where, value, sizeof (int)); break; - case BFD_RELOC_390_GOTOFF64: + case BFD_RELOC_64_GOTOFF: if (fixP->fx_done) md_number_to_chars (where, value, 8); break; --- a/opcodes/frv-asm.c +++ b/opcodes/frv-asm.c @@ -256,7 +256,7 @@ parse_ulo16 (CGEN_CPU_DESC cd, { *strp += 10; errmsg = parse_symbolic_address (cd, strp, opindex, - BFD_RELOC_FRV_GOTOFFLO, + BFD_RELOC_LO16_GOTOFF, & result_type, & value); if (**strp != ')') return "missing ')'"; @@ -382,7 +382,7 @@ parse_uslo16 (CGEN_CPU_DESC cd, { *strp += 10; errmsg = parse_symbolic_address (cd, strp, opindex, - BFD_RELOC_FRV_GOTOFFLO, + BFD_RELOC_LO16_GOTOFF, & result_type, & value); if (**strp != ')') return "missing ')'"; @@ -515,7 +515,7 @@ parse_uhi16 (CGEN_CPU_DESC cd, { *strp += 10; errmsg = parse_symbolic_address (cd, strp, opindex, - BFD_RELOC_FRV_GOTOFFHI, + BFD_RELOC_HI16_GOTOFF, & result_type, & value); if (**strp != ')') return "missing ')'"; --- a/opcodes/lm32-asm.c +++ b/opcodes/lm32-asm.c @@ -211,7 +211,7 @@ parse_gotoff_hi16 (CGEN_CPU_DESC cd, bfd_vma value; *strp += 11; - errmsg = cgen_parse_address (cd, strp, opindex, BFD_RELOC_LM32_GOTOFF_HI16, + errmsg = cgen_parse_address (cd, strp, opindex, BFD_RELOC_HI16_GOTOFF, & result_type, & value); if (**strp != ')') return _("missing `)'"); @@ -241,7 +241,7 @@ parse_gotoff_lo16 (CGEN_CPU_DESC cd, bfd_vma value; *strp += 11; - errmsg = cgen_parse_address (cd, strp, opindex, BFD_RELOC_LM32_GOTOFF_LO16, + errmsg = cgen_parse_address (cd, strp, opindex, BFD_RELOC_LO16_GOTOFF, &result_type, &value); if (**strp != ')') return _("missing `)'"); From patchwork Fri Mar 13 09:55:43 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 131665 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id CE8754B1A2BE for ; Fri, 13 Mar 2026 09:57:42 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CE8754B1A2BE 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=Fdu5TbkV 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 5D9074BA2E19 for ; Fri, 13 Mar 2026 09:55:46 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5D9074BA2E19 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 5D9074BA2E19 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=1773395746; cv=none; b=bS/iaj8LY5WetLQBTNB1TeJbp+WRxIEqlTcE542HNGy7lBmV34C9ciiVQvCkQvBVVy56vbG2mLgdd8yLsVcXuNiS7JEv/IcjOpCnvluOVkbZcmmdoSvIEPdNZZET8FlNA4FGxYTvxU/EWqSk/L8O8pZalMNUC4M2JROQX7aNAbM= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395746; c=relaxed/simple; bh=kzgKtJ4ZvY4qH7T6jhE4JXBRCSnc5GVvoiKcICn0Wfw=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=giUV0dtvxNP0ixTg4NxQSRqkqRSBzVC1DdzbhbtCswNAd61m4ELCY6zMoWtv9b53HPU7PHjveipuc8XjUiclhx7HQ0tuiKl14w4d0WfNZo01j17VKvQlnvBiNuFLZARLjDsodWX/By9g0Fuwwt1/5RHHeqaPYvY7wI9i+veSANI= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5D9074BA2E19 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-485392de558so12408095e9.1 for ; Fri, 13 Mar 2026 02:55:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773395745; x=1774000545; 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=SOT1M8Qf+5DM08tTokDWK7qQ0E4u3VVyYhNwPfxbJSM=; b=Fdu5TbkV3o9BdfuKyD3xohz96Y+fIM2EBHb/nN5e9xFe05FUTa61pw8xuqJJcW8pTf TGpxx+NgvZd+jo6mQI3OtQMrvhLxdj++WMwd8DZCMzbhqlY992GbKBsFayFE48UdpCwu XT9hZotc3FfamToZjiLqgSlmo0Eb2261iMiGCY0BqReDzH4XA+FDriZKM5og/rHb3VGi +OBufxpNMBFyzJT+H7+xX6wlOzB1LPrnXhYzrBPafWFuinEHLGU1CFXDunYIMOKGftIt tmFSyOQTi+hBxsHpEc9b4G5VzA0S+2+R9O4EDEmzbD+qiwhLEQkM/FlGs1g59VUSoY60 c4nw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773395745; x=1774000545; 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=SOT1M8Qf+5DM08tTokDWK7qQ0E4u3VVyYhNwPfxbJSM=; b=jMPQQYdMrk5ha32CAZpskyNd2478S0vwGbJ9+zfTA7r7KpOrVAXnNr/JsvLgbeq9lg gtxNMNn3SdVM5ApQjlomDfS4CGlavbQ9rmaGPkFHbsh4FYdfix6CqzfbZVkpClur/SOe jvzy+K3iYsu6iwsqjsvlO2FGXdzqTIzh/7QhHogBhnVFkHPkZa7yFkGIlOStKOHdUa7e 8YdvXvZ2HhrKDKp0CVGNAOpbAkB/Xgm5lePhPPn1ZGHqDhxsHAq/lq/AFoFFGd1b5Xzu 9y8NRpp2Sgo0maJ3m8TKzVcDbHXdS3KbHC8uZo8KkNKQ1N+B7mbYoFSZOCtG4vsorFi6 zjPQ== X-Gm-Message-State: AOJu0YzCKcxL63EnPEmx1O1OTKkIp292L5hZVklkb/aZ5RX0rJmRbvYM X0gfUUZIZ/rWzWDsPd0Lip1jpEkh5g1nB+GCQV5WnYG33l9SC/KReD+mVaCjet7BXOvkauAQ42d gXUE= X-Gm-Gg: ATEYQzzjllvkJUoUrlQ+QJOtAsRYoKQgfTZ8RDXTx1OhR/OFCHdSozKKNSbffiImcyn cLwEYq+J5FTmYnln0XyTfaE215ujVrivz1ZZxGYX03g1fLs5zmh3y76gjbiQem1hr7qNnVablN6 JxOkS3HASqQ0Ab9JxnhR6blT8p66eGz2QTiCb/KYWWBy0hhJxCasts8+/lziYVNRcsqQzulcgCs TEa/AKge4QGuS8SclYhnQlMo30QqfQHddIZ5Hv7Q5TIo6Tc49H6OtCm0cjyatUrl0bMtK7Fxr68 67MyRhS6yWkxgrD5jXFwJzpw6bAbklTGLl4Cca3XqXCz9mUKZdR94UICIOt2pJWF+Vhppr0QabB aBKM0hBQ98kHfTE09V83HyWxteUPcqpUKOsjDjj1BvfT50kc+irZLqHn/RY+DeaT1uEpKU56mWp I5GPX71AprAV0f/CdKm0/cIdrrRgD9HeaI1oUxTfn2zgNCUhr2EwGk9K7dtMREvsTTDJcRBegjK wuJTPiA7v4sGmoO7729vCojDw== X-Received: by 2002:a05:600c:3552:b0:485:3a59:99ca with SMTP id 5b1f17b1804b1-485566fab0bmr36952555e9.16.1773395745114; Fri, 13 Mar 2026 02:55:45 -0700 (PDT) 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-439fe22e9ddsm13673483f8f.37.2026.03.13.02.55.44 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 13 Mar 2026 02:55:44 -0700 (PDT) Message-ID: Date: Fri, 13 Mar 2026 10:55:43 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 5/8] bfd/s390+sh: don't abuse BFD_RELOC_32_GOT_PCREL From: Jan Beulich To: Binutils References: <76acf518-e951-4737-8444-6718df6ce778@suse.com> Content-Language: en-US Cc: Andreas Krebbel , Alexandre Oliva 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: <76acf518-e951-4737-8444-6718df6ce778@suse.com> X-Spam-Status: No, score=-3016.9 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, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on 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 Neither R_390_GOT32 nor R_SH_GOT32 are PC-relative relocations, so don't use a generic PC-relative enumerator for them. Doing so gets in the way of properly using that enumerator. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -4286,6 +4286,7 @@ enum bfd_reloc_code_real BFD_RELOC_SH_RELATIVE64, BFD_RELOC_SH_GOT10BY4, BFD_RELOC_SH_GOT10BY8, + BFD_RELOC_SH_GOT32, BFD_RELOC_SH_GOTPLT10BY4, BFD_RELOC_SH_GOTPLT10BY8, BFD_RELOC_SH_GOTPLT32, @@ -5373,6 +5374,9 @@ enum bfd_reloc_code_real /* 12 bit GOT offset. */ BFD_RELOC_390_GOT12, + /* 32 bit GOT offset. */ + BFD_RELOC_390_GOT32, + /* 32 bit PC relative offset to GOT. */ BFD_RELOC_390_GOTPC, --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -199,7 +199,7 @@ elf_s390_reloc_type_lookup (bfd *abfd AT return &elf_howto_table[(int) R_390_PC32]; case BFD_RELOC_390_GOT12: return &elf_howto_table[(int) R_390_GOT12]; - case BFD_RELOC_32_GOT_PCREL: + case BFD_RELOC_390_GOT32: return &elf_howto_table[(int) R_390_GOT32]; case BFD_RELOC_32_PLT_PCREL: return &elf_howto_table[(int) R_390_PLT32]; --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -353,7 +353,7 @@ static const struct elf_reloc_map sh_rel { BFD_RELOC_SH_TLS_DTPMOD32, R_SH_TLS_DTPMOD32 }, { BFD_RELOC_SH_TLS_DTPOFF32, R_SH_TLS_DTPOFF32 }, { BFD_RELOC_SH_TLS_TPOFF32, R_SH_TLS_TPOFF32 }, - { BFD_RELOC_32_GOT_PCREL, R_SH_GOT32 }, + { BFD_RELOC_SH_GOT32, R_SH_GOT32 }, { BFD_RELOC_32_PLT_PCREL, R_SH_PLT32 }, { BFD_RELOC_COPY, R_SH_COPY }, { BFD_RELOC_GLOB_DAT, R_SH_GLOB_DAT }, --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -213,7 +213,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_PC32]; case BFD_RELOC_390_GOT12: return &elf_howto_table[(int) R_390_GOT12]; - case BFD_RELOC_32_GOT_PCREL: + case BFD_RELOC_390_GOT32: return &elf_howto_table[(int) R_390_GOT32]; case BFD_RELOC_32_PLT_PCREL: return &elf_howto_table[(int) R_390_PLT32]; --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1791,6 +1791,7 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_SH_RELATIVE64", "BFD_RELOC_SH_GOT10BY4", "BFD_RELOC_SH_GOT10BY8", + "BFD_RELOC_SH_GOT32", "BFD_RELOC_SH_GOTPLT10BY4", "BFD_RELOC_SH_GOTPLT10BY8", "BFD_RELOC_SH_GOTPLT32", @@ -2381,6 +2382,7 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_RX_RELAX", "BFD_RELOC_390_12", "BFD_RELOC_390_GOT12", + "BFD_RELOC_390_GOT32", "BFD_RELOC_390_GOTPC", "BFD_RELOC_390_GOT16", "BFD_RELOC_390_PC12DBL", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -3200,6 +3200,8 @@ ENUMX ENUMX BFD_RELOC_SH_GOT10BY8 ENUMX + BFD_RELOC_SH_GOT32 +ENUMX BFD_RELOC_SH_GOTPLT10BY4 ENUMX BFD_RELOC_SH_GOTPLT10BY8 @@ -4907,6 +4909,10 @@ ENUM ENUMDOC 12 bit GOT offset. ENUM + BFD_RELOC_390_GOT32 +ENUMDOC + 32 bit GOT offset. +ENUM BFD_RELOC_390_GOTPC ENUMDOC 32 bit PC relative offset to GOT. --- a/gas/config/tc-s390.c +++ b/gas/config/tc-s390.c @@ -1107,7 +1107,7 @@ s390_lit_suffix (char **str_p, expressio if (nbytes == 2) reloc = BFD_RELOC_390_GOT16; else if (nbytes == 4) - reloc = BFD_RELOC_32_GOT_PCREL; + reloc = BFD_RELOC_390_GOT32; else if (nbytes == 8) reloc = BFD_RELOC_390_GOT64; } @@ -1271,7 +1271,7 @@ s390_elf_cons (int nbytes /* 1=.byte, 2= static bfd_reloc_code_real_type tab4[] = { BFD_RELOC_UNUSED, /* ELF_SUFFIX_NONE */ - BFD_RELOC_32_GOT_PCREL, /* ELF_SUFFIX_GOT */ + BFD_RELOC_390_GOT32, /* ELF_SUFFIX_GOT */ BFD_RELOC_32_PLT_PCREL, /* ELF_SUFFIX_PLT */ BFD_RELOC_UNUSED, /* ELF_SUFFIX_GOTENT */ BFD_RELOC_32_GOTOFF, /* ELF_SUFFIX_GOTOFF */ @@ -2396,7 +2396,7 @@ tc_s390_fix_adjustable (fixS *fixP) || fixP->fx_r_type == BFD_RELOC_390_GOT12 || fixP->fx_r_type == BFD_RELOC_390_GOT20 || fixP->fx_r_type == BFD_RELOC_390_GOT16 - || fixP->fx_r_type == BFD_RELOC_32_GOT_PCREL + || fixP->fx_r_type == BFD_RELOC_390_GOT32 || fixP->fx_r_type == BFD_RELOC_390_GOT64 || fixP->fx_r_type == BFD_RELOC_390_GOTENT || fixP->fx_r_type == BFD_RELOC_390_GOTPLT12 @@ -2443,7 +2443,7 @@ tc_s390_force_relocation (struct fix *fi { case BFD_RELOC_390_GOT12: case BFD_RELOC_390_GOT20: - case BFD_RELOC_32_GOT_PCREL: + case BFD_RELOC_390_GOT32: case BFD_RELOC_32_GOTOFF: case BFD_RELOC_64_GOTOFF: case BFD_RELOC_390_PLTOFF16: @@ -2728,7 +2728,7 @@ md_apply_fix (fixS *fixP, valueT *valP, if (fixP->fx_done) md_number_to_chars (where, value, 4); break; - case BFD_RELOC_32_GOT_PCREL: + case BFD_RELOC_390_GOT32: case BFD_RELOC_390_PLTOFF32: case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_390_GOTPLT32: --- a/gas/config/tc-sh.c +++ b/gas/config/tc-sh.c @@ -340,7 +340,7 @@ sh_check_fixup (expressionS *main_exp, b case BFD_RELOC_SH_DISP20: switch (exp->X_md) { - case BFD_RELOC_32_GOT_PCREL: + case BFD_RELOC_SH_GOT32: *r_type_p = BFD_RELOC_SH_GOT20; break; @@ -3313,7 +3313,7 @@ bool sh_fix_adjustable (fixS *fixP) { if (fixP->fx_r_type == BFD_RELOC_32_PLT_PCREL - || fixP->fx_r_type == BFD_RELOC_32_GOT_PCREL + || fixP->fx_r_type == BFD_RELOC_SH_GOT32 || fixP->fx_r_type == BFD_RELOC_SH_GOT20 || fixP->fx_r_type == BFD_RELOC_SH_GOTPC || fixP->fx_r_type == BFD_RELOC_SH_GOTFUNCDESC @@ -3670,7 +3670,7 @@ md_apply_fix (fixS *fixP, valueT *valP, case BFD_RELOC_SH_TLS_IE_32: S_SET_THREAD_LOCAL (fixP->fx_addsy); /* Fallthrough */ - case BFD_RELOC_32_GOT_PCREL: + case BFD_RELOC_SH_GOT32: case BFD_RELOC_SH_GOT20: case BFD_RELOC_SH_GOTPLT32: case BFD_RELOC_SH_GOTFUNCDESC: @@ -3962,7 +3962,7 @@ sh_parse_name (char const *name, else if ((next_end = sh_end_of_match (next + 1, "GOTPLT"))) reloc_type = BFD_RELOC_SH_GOTPLT32; else if ((next_end = sh_end_of_match (next + 1, "GOT"))) - reloc_type = BFD_RELOC_32_GOT_PCREL; + reloc_type = BFD_RELOC_SH_GOT32; else if ((next_end = sh_end_of_match (next + 1, "PLT"))) reloc_type = BFD_RELOC_32_PLT_PCREL; else if ((next_end = sh_end_of_match (next + 1, "TLSGD"))) --- a/gas/config/tc-sh.h +++ b/gas/config/tc-sh.h @@ -202,7 +202,7 @@ extern bool sh_fix_adjustable (struct fi #define TC_FORCE_RELOCATION_LOCAL(FIX) \ (GENERIC_FORCE_RELOCATION_LOCAL (FIX) \ || (FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL \ - || (FIX)->fx_r_type == BFD_RELOC_32_GOT_PCREL \ + || (FIX)->fx_r_type == BFD_RELOC_SH_GOT32 \ || (FIX)->fx_r_type == BFD_RELOC_SH_GOTPC) #define TC_FORCE_RELOCATION_SUB_LOCAL(FIX, SEG) \ From patchwork Fri Mar 13 09:57:54 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 131666 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id EE9CE4C31890 for ; Fri, 13 Mar 2026 09:59:11 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EE9CE4C31890 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=PZR0rszO X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) by sourceware.org (Postfix) with ESMTPS id D4DEB4B1A2F4 for ; Fri, 13 Mar 2026 09:57:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D4DEB4B1A2F4 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 D4DEB4B1A2F4 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::42e ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395878; cv=none; b=LdXNkl6Qd5d2y8KRFpQpC8EjKC8jjEowLaRfuNYttHffbEtFR+s6dKkDSrdY+dMCLTps3RpPOxMrciU4uQa6lj+ElmJIrno7Do2fd8nxRjEyNaJGSWFAH9m2fk/c8NmIXtBZ2WGKuLKpueHHSNuctF6+VPiljvqCTLmawcoNfZI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395878; c=relaxed/simple; bh=zedUiJVhAuC/a5CuyTVRxR7wlBJxUCetzdx7N+iXU1A=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=QeTrgNCwpBxRGjj1lal77pB6eD17BsWljsb2Fip0vp8N3bYxuAlu2vl4javUSACHA+bxG3Wxjr2GI6EBqVlZKt3uJ64q6gjxUHsNZWWJYLlxjgK/P+awNQEEyEs2S0zIyl6ZjY85hIBz93rgWnKHcnVnE8TyQyykhT/693eQoQI= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D4DEB4B1A2F4 Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-439c56e822eso2078266f8f.2 for ; Fri, 13 Mar 2026 02:57:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773395877; x=1774000677; 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=hiB4RsU5m+IqMbdapuvZp3EizKK66TyQNEf6bjPLZmo=; b=PZR0rszOj2waZEkc/hgsIc6bpgcWXityUVwWeONBEBh0ougneDgD/IeIgdSSZGUjdE ZHHOyvQOvmXkWAR+N+3j+Ysnp92aC2rv/SvlqEo74k0LzRlV00BqSW8Xatp2CMwwc+cY 5tbfRE2pNSl/Ps25Q35oxyfxInawsDuJxBEr+q6XDW2HNc+hx9TbuK35kgPTUzwUf+f4 26WI05hmAA5xtg20I/j0vhRNTy3VtzbshbVLkzwdPQrJmIwHe4/1GBbkj56BGbzfBxte WttjbsYPzam/UEVxTPKDgZCyTvqYNI7jZm3wkvONz19bh+NsYTVJPedt4NgUtNaPmJBg T7ng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773395877; x=1774000677; 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=hiB4RsU5m+IqMbdapuvZp3EizKK66TyQNEf6bjPLZmo=; b=mi7zyUAEPiZYpwxc5JchMuHe+16xPt0++hta9sU1rEE/dAEZy798qZmIOBgTmwgKQM dWEulfirbMmItj8ZNFXvqrbNO5uO6kC2C6dOR+q18FvabegS9qyHEdFwwOGbWdh3MYZ1 3EWk4olDESJi9CLkZUa7JU+cbsYyLJgHSM7gmxYAXSnzauLayNSS7GAaMeAT/ahRdXds YIbHZ0P39r9OBAiUv/cf+1bbUVg05GRG/VjNtdLBYiqH+/GViDrIdIUTAwzPYB8eotpt Zu04ElO4yIEVC2SkVN8FJADXtftCb47VRTTid5gHz84CBdNsUglSgXaUioibLRo79U5p T/QA== X-Gm-Message-State: AOJu0YxXsCmn9HbHIRAVJdrUR5m8Ra3btccVFkoH1idDmfV4eT5aG/iI olmjAPaS7LUGQq7IYraU93pFVpc3nWemhTQSxQht9lQtYmtKCMalhehTOry1GZXVJlA+mPbs+I7 GKvw= X-Gm-Gg: ATEYQzxU/3yCygF9Efzfvy+CY6/wRkVQ2llUY+Uc5BIWQDT8KqfjFOVg1vZxn1Zafb9 AAsdYY8RcnIUACQdZ+G4wiRNVN5l1IBDa0yQ6pEOKjBaghg8gOjXPxNhABtrClsp6y6OTETX9R/ 9z8wdRpP6oILFRELy5/kBya+zb2xxJjPSailM+KVokEh7NcV+Nwly8+veZbxkcEzp/797bnTKyG H44WigokivMy+tifNjdrsnermk35mujHo6fRf3dkZ6PwGEKGWfNZJIH2HuAjc/ZVvfKJtn7gWd7 fd9CzG6JroMvGaT/6Yp8eMLscqOzkWIVxt0afHqWgE7rutD7lqnlPyndAMFB+eJJIrdm/qRyyTk +6wppsHjCgay1KOeA2jHcUeKte/gP/RNQSB3Zpbj/WWKDrUm+Q8zeqzkTRCVlZlsPaOeh567Wyx mopPnxyWDjRf636D2Zu3v79XAagvOtkqm1HX3UMXg8D1iMbpBbW2eJUH3kGfUM7k4XhXYqYhwPK B52MMVCv41007w= X-Received: by 2002:a5d:5e01:0:b0:439:befa:91cb with SMTP id ffacd0b85a97d-43a04dc0958mr4908687f8f.45.1773395876468; Fri, 13 Mar 2026 02:57:56 -0700 (PDT) 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-439fe226473sm14930609f8f.32.2026.03.13.02.57.55 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 13 Mar 2026 02:57:56 -0700 (PDT) Message-ID: Date: Fri, 13 Mar 2026 10:57:54 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 6/8] bfd/ELF: fold BFD_RELOC__GOTPC* From: Jan Beulich To: Binutils References: <76acf518-e951-4737-8444-6718df6ce778@suse.com> Content-Language: en-US Cc: Claudiu Zissulescu , Nick Clifton , "ramana.radhakrishnan@arm.com" , Richard Earnshaw , "H.J. Lu" , Andreas Krebbel , Alexandre Oliva 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: <76acf518-e951-4737-8444-6718df6ce778@suse.com> X-Spam-Status: No, score=-3016.9 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, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on 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 For many of the cases there's no need to have separate relocs per arch; just like for other more or less generic ones a single one (per purpose; a 64-bit generic one is being introduced) will do. C-Sky - sadly - continues to be an exception. --- Why is it that BFD_RELOC_386_GOTPC (but not BFD_RELOC_X86_64_GOTPC{32,64}) is among the types checked in TC_FORCE_RELOCATION_LOCAL()? Without that, BFD_RELOC_X86_64_GOTPC32 type could also be replaced by BFD_RELOC_32_PLT_PCREL, then even simplifying at least one expression. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3816,7 +3816,6 @@ enum bfd_reloc_code_real /* i386/elf relocations. */ BFD_RELOC_386_GOT32, BFD_RELOC_386_PLT32, - BFD_RELOC_386_GOTPC, BFD_RELOC_386_TLS_TPOFF, BFD_RELOC_386_TLS_IE, BFD_RELOC_386_TLS_GOTIE, @@ -4162,7 +4161,6 @@ enum bfd_reloc_code_real /* Relocations for setting up GOTs and PLTs for shared libraries. */ BFD_RELOC_ARM_GOT32, - BFD_RELOC_ARM_GOTPC, BFD_RELOC_ARM_GOT_PREL, /* ARM thread-local storage relocations. */ @@ -4279,7 +4277,6 @@ enum bfd_reloc_code_real BFD_RELOC_SH_LABEL, BFD_RELOC_SH_LOOP_START, BFD_RELOC_SH_LOOP_END, - BFD_RELOC_SH_GOTPC, BFD_RELOC_SH_COPY64, BFD_RELOC_SH_GLOB_DAT64, BFD_RELOC_SH_JMP_SLOT64, @@ -4348,7 +4345,6 @@ enum bfd_reloc_code_real BFD_RELOC_ARC_SDA16_ST2, BFD_RELOC_ARC_32_PCREL, BFD_RELOC_ARC_GOT32, - BFD_RELOC_ARC_GOTPC32, BFD_RELOC_ARC_GOTPC, BFD_RELOC_ARC_S21W_PCREL_PLT, BFD_RELOC_ARC_S25H_PCREL_PLT, @@ -4905,7 +4901,6 @@ enum bfd_reloc_code_real BFD_RELOC_V850_CALLT_15_16_OFFSET, /* DSO relocations. */ - BFD_RELOC_V850_32_GOTPCREL, BFD_RELOC_V850_16_GOT, BFD_RELOC_V850_32_GOT, BFD_RELOC_V850_22_PLT_PCREL, @@ -5377,9 +5372,6 @@ enum bfd_reloc_code_real /* 32 bit GOT offset. */ BFD_RELOC_390_GOT32, - /* 32 bit PC relative offset to GOT. */ - BFD_RELOC_390_GOTPC, - /* 16 bit GOT offset. */ BFD_RELOC_390_GOT16, --- 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_GOTOFF BFD_RELOC_32_GOTOFF +#define BFD_RELOC_ARC_GOTPC32 BFD_RELOC_32_GOT_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 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -2020,7 +2020,7 @@ static const struct elf32_arm_reloc_map {BFD_RELOC_JMP_SLOT, R_ARM_JUMP_SLOT}, {BFD_RELOC_RELATIVE, R_ARM_RELATIVE}, {BFD_RELOC_32_GOTOFF, R_ARM_GOTOFF32}, - {BFD_RELOC_ARM_GOTPC, R_ARM_GOTPC}, + {BFD_RELOC_32_GOT_PCREL, R_ARM_GOTPC}, {BFD_RELOC_ARM_GOT_PREL, R_ARM_GOT_PREL}, {BFD_RELOC_ARM_GOT32, R_ARM_GOT32}, {BFD_RELOC_32_PLT_PCREL, R_ARM_PLT32}, --- a/bfd/elf32-i386.c +++ b/bfd/elf32-i386.c @@ -237,7 +237,7 @@ elf_i386_reloc_type_lookup (bfd *abfd, TRACE ("BFD_RELOC_32_GOTOFF"); return &elf_howto_table[R_386_GOTOFF]; - case BFD_RELOC_386_GOTPC: + case BFD_RELOC_32_GOT_PCREL: TRACE ("BFD_RELOC_386_GOTPC"); return &elf_howto_table[R_386_GOTPC]; --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -213,7 +213,7 @@ elf_s390_reloc_type_lookup (bfd *abfd AT return &elf_howto_table[(int) R_390_RELATIVE]; case BFD_RELOC_32_GOTOFF: return &elf_howto_table[(int) R_390_GOTOFF32]; - case BFD_RELOC_390_GOTPC: + case BFD_RELOC_32_GOT_PCREL: return &elf_howto_table[(int) R_390_GOTPC]; case BFD_RELOC_390_GOT16: return &elf_howto_table[(int) R_390_GOT16]; --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -360,7 +360,7 @@ static const struct elf_reloc_map sh_rel { BFD_RELOC_JMP_SLOT, R_SH_JMP_SLOT }, { BFD_RELOC_RELATIVE, R_SH_RELATIVE }, { BFD_RELOC_32_GOTOFF, R_SH_GOTOFF }, - { BFD_RELOC_SH_GOTPC, R_SH_GOTPC }, + { BFD_RELOC_32_GOT_PCREL, R_SH_GOTPC }, { BFD_RELOC_SH_GOTPLT32, R_SH_GOTPLT32 }, { BFD_RELOC_SH_GOT20, R_SH_GOT20 }, { BFD_RELOC_SH_GOTOFF20, R_SH_GOTOFF20 }, --- a/bfd/elf32-v850.c +++ b/bfd/elf32-v850.c @@ -1731,7 +1731,7 @@ static const struct v850_elf_reloc_map v { BFD_RELOC_V850_16_S1, R_V850_16_S1 }, { BFD_RELOC_V850_LO16_S1, R_V850_LO16_S1 }, { BFD_RELOC_V850_CALLT_15_16_OFFSET, R_V850_CALLT_15_16_OFFSET }, - { BFD_RELOC_V850_32_GOTPCREL, R_V850_32_GOTPCREL }, + { BFD_RELOC_32_GOT_PCREL, R_V850_32_GOTPCREL }, { BFD_RELOC_V850_16_GOT, R_V850_16_GOT }, { BFD_RELOC_V850_32_GOT, R_V850_32_GOT }, { BFD_RELOC_V850_22_PLT_PCREL, R_V850_22_PLT }, --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -227,7 +227,7 @@ elf_s390_reloc_type_lookup (bfd *abfd, return &elf_howto_table[(int) R_390_RELATIVE]; case BFD_RELOC_32_GOTOFF: return &elf_howto_table[(int) R_390_GOTOFF32]; - case BFD_RELOC_390_GOTPC: + case BFD_RELOC_32_GOT_PCREL: return &elf_howto_table[(int) R_390_GOTPC]; case BFD_RELOC_390_GOT16: return &elf_howto_table[(int) R_390_GOT16]; --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1407,7 +1407,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MN10300_TLS_TPOFF", "BFD_RELOC_386_GOT32", "BFD_RELOC_386_PLT32", - "BFD_RELOC_386_GOTPC", "BFD_RELOC_386_TLS_TPOFF", "BFD_RELOC_386_TLS_IE", "BFD_RELOC_386_TLS_GOTIE", @@ -1680,7 +1679,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_GOTPC", "BFD_RELOC_ARM_GOT_PREL", "BFD_RELOC_ARM_TLS_GD32", "BFD_RELOC_ARM_TLS_LDO32", @@ -1784,7 +1782,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_GOTPC", "BFD_RELOC_SH_COPY64", "BFD_RELOC_SH_GLOB_DAT64", "BFD_RELOC_SH_JMP_SLOT64", @@ -1851,7 +1848,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_ARC_SDA16_ST2", "BFD_RELOC_ARC_32_PCREL", "BFD_RELOC_ARC_GOT32", - "BFD_RELOC_ARC_GOTPC32", "BFD_RELOC_ARC_GOTPC", "BFD_RELOC_ARC_S21W_PCREL_PLT", "BFD_RELOC_ARC_S25H_PCREL_PLT", @@ -2110,7 +2106,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_V850_16_S1", "BFD_RELOC_V850_LO16_S1", "BFD_RELOC_V850_CALLT_15_16_OFFSET", - "BFD_RELOC_V850_32_GOTPCREL", "BFD_RELOC_V850_16_GOT", "BFD_RELOC_V850_32_GOT", "BFD_RELOC_V850_22_PLT_PCREL", @@ -2383,7 +2378,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_390_12", "BFD_RELOC_390_GOT12", "BFD_RELOC_390_GOT32", - "BFD_RELOC_390_GOTPC", "BFD_RELOC_390_GOT16", "BFD_RELOC_390_PC12DBL", "BFD_RELOC_390_PLT12DBL", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -2320,8 +2320,6 @@ ENUM ENUMX BFD_RELOC_386_PLT32 ENUMX - BFD_RELOC_386_GOTPC -ENUMX BFD_RELOC_386_TLS_TPOFF ENUMX BFD_RELOC_386_TLS_IE @@ -2959,8 +2957,6 @@ ENUMDOC ENUM BFD_RELOC_ARM_GOT32 ENUMX - BFD_RELOC_ARM_GOTPC -ENUMX BFD_RELOC_ARM_GOT_PREL ENUMDOC Relocations for setting up GOTs and PLTs for shared libraries. @@ -3186,8 +3182,6 @@ ENUMX ENUMX BFD_RELOC_SH_LOOP_END ENUMX - BFD_RELOC_SH_GOTPC -ENUMX BFD_RELOC_SH_COPY64 ENUMX BFD_RELOC_SH_GLOB_DAT64 @@ -3323,8 +3317,6 @@ ENUMX ENUMX BFD_RELOC_ARC_GOT32 ENUMX - BFD_RELOC_ARC_GOTPC32 -ENUMX BFD_RELOC_ARC_GOTPC ENUMX BFD_RELOC_ARC_S21W_PCREL_PLT @@ -4150,8 +4142,6 @@ ENUM ENUMDOC This is a 16 bit offset from the call table base pointer. ENUM - BFD_RELOC_V850_32_GOTPCREL -ENUMX BFD_RELOC_V850_16_GOT ENUMX BFD_RELOC_V850_32_GOT @@ -4913,10 +4903,6 @@ ENUM ENUMDOC 32 bit GOT offset. ENUM - BFD_RELOC_390_GOTPC -ENUMDOC - 32 bit PC relative offset to GOT. -ENUM BFD_RELOC_390_GOT16 ENUMDOC 16 bit GOT offset. --- a/gas/config/tc-arc.c +++ b/gas/config/tc-arc.c @@ -543,7 +543,7 @@ static const struct arc_reloc_op_tag arc_reloc_op[] = { DEF (gotoff, BFD_RELOC_32_GOTOFF, 1), - DEF (gotpc, BFD_RELOC_ARC_GOTPC32, 0), + DEF (gotpc, BFD_RELOC_32_GOT_PCREL, 0), DEF (plt, BFD_RELOC_32_PLT_PCREL, 0), DEF (sda, DUMMY_RELOC_ARC_ENTRY, 1), DEF (pcl, BFD_RELOC_32_PCREL, 1), @@ -3087,7 +3087,7 @@ md_apply_fix (fixS *fixP, md_number_to_chars (fixpos, value, fixP->fx_size); return; - case BFD_RELOC_ARC_GOTPC32: + case BFD_RELOC_32_GOT_PCREL: /* I cannot fix an GOTPC relocation because I need to relax it from ld rx,[pcl,@sym@gotpc] to add rx,pcl,@sym@gotpc. */ as_bad (_("Unsupported operation on reloc")); @@ -3260,7 +3260,7 @@ tc_gen_reloc (asection *section ATTRIBUT /* if we have something like add gp, pcl, _GLOBAL_OFFSET_TABLE_@gotpc. */ - if (code == BFD_RELOC_ARC_GOTPC32 + if (code == BFD_RELOC_32_GOT_PCREL && GOT_symbol && fixP->fx_addsy == GOT_symbol) code = BFD_RELOC_ARC_GOTPC; @@ -4215,7 +4215,7 @@ tc_arc_fix_adjustable (fixS *fixP) /* Adjust_reloc_syms doesn't know about the GOT. */ switch (fixP->fx_r_type) { - case BFD_RELOC_ARC_GOTPC32: + case BFD_RELOC_32_GOT_PCREL: case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_ARC_S25H_PCREL_PLT: case BFD_RELOC_ARC_S21H_PCREL_PLT: --- a/gas/config/tc-arc.h +++ b/gas/config/tc-arc.h @@ -129,7 +129,7 @@ extern const char *arc_target_format; relocations. Check also that fx_addsy is not NULL, in order to 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 \ + if ((FIXP->fx_r_type == BFD_RELOC_32_GOT_PCREL \ || 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 \ --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -29554,7 +29554,7 @@ tc_gen_reloc (asection *section, fixS *f && GOT_symbol && fixp->fx_addsy == GOT_symbol) { - code = BFD_RELOC_ARM_GOTPC; + code = BFD_RELOC_32_GOT_PCREL; reloc->addend = fixp->fx_offset = reloc->address; } #endif --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -13079,7 +13079,7 @@ output_disp (fragS *insn_start_frag, off { if (!object_64bit) { - reloc_type = BFD_RELOC_386_GOTPC; + reloc_type = BFD_RELOC_32_GOT_PCREL; i.has_gotpc_tls_reloc = true; i.op[n].disps->X_add_number += encoding_length (insn_start_frag, insn_start_off, p); @@ -13313,7 +13313,7 @@ output_imm (fragS *insn_start_frag, offs == O_subtract)))) { if (!object_64bit) - reloc_type = BFD_RELOC_386_GOTPC; + reloc_type = BFD_RELOC_32_GOT_PCREL; else if (size == 4) reloc_type = BFD_RELOC_X86_64_GOTPC32; else if (size == 8) @@ -18525,7 +18525,7 @@ tc_gen_reloc (asection *section ATTRIBUT case BFD_RELOC_386_GOT32: case BFD_RELOC_386_GOT32X: case BFD_RELOC_32_GOTOFF: - case BFD_RELOC_386_GOTPC: + case BFD_RELOC_32_GOT_PCREL: case BFD_RELOC_386_TLS_GD: case BFD_RELOC_386_TLS_LDM: case BFD_RELOC_386_TLS_LDO_32: @@ -18622,7 +18622,7 @@ tc_gen_reloc (asection *section ATTRIBUT && fixp->fx_addsy == GOT_symbol) { if (!object_64bit) - code = BFD_RELOC_386_GOTPC; + code = BFD_RELOC_32_GOT_PCREL; else code = BFD_RELOC_X86_64_GOTPC32; } --- a/gas/config/tc-i386.h +++ b/gas/config/tc-i386.h @@ -164,7 +164,7 @@ extern int tc_i386_fix_adjustable (struc #define TC_FORCE_RELOCATION_LOCAL(FIX) \ (GENERIC_FORCE_RELOCATION_LOCAL (FIX) \ || (FIX)->fx_r_type == BFD_RELOC_386_PLT32 \ - || (FIX)->fx_r_type == BFD_RELOC_386_GOTPC \ + || (FIX)->fx_r_type == BFD_RELOC_32_GOT_PCREL \ || (FIX)->fx_r_type == BFD_RELOC_X86_64_GOTPCREL \ || (FIX)->fx_r_type == BFD_RELOC_X86_64_GOTPCRELX \ || (FIX)->fx_r_type == BFD_RELOC_X86_64_REX_GOTPCRELX \ --- a/gas/config/tc-s390.c +++ b/gas/config/tc-s390.c @@ -2449,7 +2449,7 @@ tc_s390_force_relocation (struct fix *fi case BFD_RELOC_390_PLTOFF16: case BFD_RELOC_390_PLTOFF32: case BFD_RELOC_390_PLTOFF64: - case BFD_RELOC_390_GOTPC: + case BFD_RELOC_32_GOT_PCREL: case BFD_RELOC_390_GOT16: case BFD_RELOC_390_GOTPCDBL: case BFD_RELOC_390_GOT64: @@ -2840,7 +2840,7 @@ tc_gen_reloc (asection *seg ATTRIBUTE_UN { if ( (s390_arch_size == 32 && code == BFD_RELOC_32_PCREL) || (s390_arch_size == 64 && code == BFD_RELOC_64_PCREL)) - code = BFD_RELOC_390_GOTPC; + code = BFD_RELOC_32_GOT_PCREL; if (code == BFD_RELOC_390_PC32DBL) code = BFD_RELOC_390_GOTPCDBL; } --- a/gas/config/tc-sh.c +++ b/gas/config/tc-sh.c @@ -320,7 +320,7 @@ sh_check_fixup (expressionS *main_exp, b { if (exp->X_add_symbol && exp->X_add_symbol == GOT_symbol) { - *r_type_p = BFD_RELOC_SH_GOTPC; + *r_type_p = BFD_RELOC_32_GOT_PCREL; return 0; } exp = symbol_get_value_expression (exp->X_add_symbol); @@ -3315,7 +3315,7 @@ sh_fix_adjustable (fixS *fixP) if (fixP->fx_r_type == BFD_RELOC_32_PLT_PCREL || fixP->fx_r_type == BFD_RELOC_SH_GOT32 || fixP->fx_r_type == BFD_RELOC_SH_GOT20 - || fixP->fx_r_type == BFD_RELOC_SH_GOTPC + || fixP->fx_r_type == BFD_RELOC_32_GOT_PCREL || fixP->fx_r_type == BFD_RELOC_SH_GOTFUNCDESC || fixP->fx_r_type == BFD_RELOC_SH_GOTFUNCDESC20 || fixP->fx_r_type == BFD_RELOC_SH_GOTOFFFUNCDESC @@ -3644,7 +3644,7 @@ md_apply_fix (fixS *fixP, valueT *valP, apply_full_field_fix (fixP, buf, val, 4); break; - case BFD_RELOC_SH_GOTPC: + case BFD_RELOC_32_GOT_PCREL: /* This is tough to explain. We end up with this one if we have operands that look like "_GLOBAL_OFFSET_TABLE_+[.-.L284]". The goal here is to obtain the absolute address of the GOT, --- a/gas/config/tc-sh.h +++ b/gas/config/tc-sh.h @@ -181,7 +181,7 @@ extern void sh_elf_final_processing (voi when used at runtime implies that we should add the address of the GOT to the specified location, and as a result we have simplified the expression into something we can use. */ -#define TC_RELOC_GLOBAL_OFFSET_TABLE BFD_RELOC_SH_GOTPC +#define TC_RELOC_GLOBAL_OFFSET_TABLE BFD_RELOC_32_GOT_PCREL #define tc_fix_adjustable(FIX) sh_fix_adjustable(FIX) extern bool sh_fix_adjustable (struct fix *); @@ -203,7 +203,7 @@ extern bool sh_fix_adjustable (struct fi (GENERIC_FORCE_RELOCATION_LOCAL (FIX) \ || (FIX)->fx_r_type == BFD_RELOC_32_PLT_PCREL \ || (FIX)->fx_r_type == BFD_RELOC_SH_GOT32 \ - || (FIX)->fx_r_type == BFD_RELOC_SH_GOTPC) + || (FIX)->fx_r_type == BFD_RELOC_32_GOT_PCREL) #define TC_FORCE_RELOCATION_SUB_LOCAL(FIX, SEG) \ ((!md_register_arithmetic && (SEG) == reg_section) \ From patchwork Fri Mar 13 09:58:47 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 131668 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id 2255E4C3184B for ; Fri, 13 Mar 2026 10:01:55 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2255E4C3184B 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=Zeq2Md4c X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com [IPv6:2a00:1450:4864:20::431]) by sourceware.org (Postfix) with ESMTPS id 1E0914BBCD8F for ; Fri, 13 Mar 2026 09:58:51 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1E0914BBCD8F 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 1E0914BBCD8F Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::431 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395931; cv=none; b=yGV9SxLxZueYe/olPADhvLKSeLMVyEwO1qOFp4YfzyioY/8WG7xTv4racSOCj22U9zq02ZFp+GXWOZC/PIeC1OlbENssPOi01dcn4MUQSYmbRBod4EukRQ4niFwJ5iYEhLO9mwOErmo9lKBVKzNUfHvm1Tc65yVrcnWLeXVHeL0= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773395931; c=relaxed/simple; bh=dLcWgO+VMsgiBipB7iBjjd3WgAVRvmcMQYFqGcS1UEc=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=eWYe7+Xgl2TKBea7ZSyqWWEhi/DDAMgK3tjEmM+wQLib3t86rHd9oTQF7h3zwyxixuBpXhaGK52tH634e68va/k2vRY9L1HVwasSl7X7rrfR5kkRlgZCMifknIOLQ4hiJDkHMYuLKbrdvm6Xos0JglaxpIwlk7g2Ng+sCL/mcjY= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1E0914BBCD8F Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-439cb5af25bso2127381f8f.1 for ; Fri, 13 Mar 2026 02:58:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773395930; x=1774000730; 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=EDzRjw1Curu+lVVYjBmpqangRKnjYS3RkC7m034Neqo=; b=Zeq2Md4c8/VTL9tkuZeoWwaYA66JMJiACJzvD/MLKcfZSmkqbsLKsl7I1T2c8tavBd TajV7bHZ0K9Kin+9ra0v7t2t4V/IoPlVz3ZK25YVBwnXivXiQtHvXzaHIFruYU7tkIDC vArgA+AwniAG1jU/xnhHo+qbYnrSjYNnd1IIp8T7EA+JBvxFgDuLjnYN7n5XG4b3jImd hd92tS8xwhMQClSx7SVn3AfeEFURKSnWWApxa7xSbF0B7Ks1Q3Eqipy4zvjB1HI6+RDM 2aPjmV9RfikBdAQ0tfYtNI2CbKkvqiOtnEipQ2V1JbGSQtT7nn5iERkLIezQbYbb7F2/ A6vg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773395930; x=1774000730; 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=EDzRjw1Curu+lVVYjBmpqangRKnjYS3RkC7m034Neqo=; b=O+yvAcos5nVE9nYQjsMktny2PC5sNDsWgtjrceydjehUI/FQYo6lvnZ8BM+cScA/IV 31Dwt70JjIdpIuGTqbA2bFhKVH9H3mQm1R2t8TwSmTr/zjcUFPZ/ls88tV+AoJlEelTE I2uZIxmB6PNE6JxoinwypEndnoJbnJV0ERkT5w/2M/LkBQz9rbqpmUgxY5FpdnC/NQCy VdtO8mCK2PeWAZLeHD8e+CWGZjvidjoz42/v7TDassJ7uJxcvHbEi2iYIV50B60tNAh7 oBDxU0rDhuPhE/zks5CRKa3A8RLFpF1F3KrdevSK4jq5WShYmTgZYlbHGCpXH/BMZHga uaqQ== X-Gm-Message-State: AOJu0YzYm1v0ZaItAfICJ7/dn5lKZcFs1hEJ8jFhe88LlLQtZsE8/hLJ iuiUACm1m1m+IzOtkeKOWb6yWkVQYnOuxpuZ+gq+g2IXqx41on9hLTM3ecQlJVKa2K1NCl1R1hY VsZk= X-Gm-Gg: ATEYQzxNDcjWETiHvCC6d1RB5+b5EfnvDt+l68GY0KJi0uDF3fAdZlhuKRMATKxjLPJ zYbl4tdfVT6UNYfsKRTtBQnntMNmU6vNQ/5oHY2qH3Q04Hb3tAO3u4j+5UqhsOilf1kOYZ+Vm5u Am+jkvPTymW7SujjRdnaFrZU/DImffbHGNfkUUcyHC8x5VWZhrs8iTTpmKVYnzFgLkMRPXaz80M hanuoVlFbMZ7Mci9dwNDl9HlyKyA1ZSR1Vtf39zhc9wYcl1P6Hy06dCDZPmOWPNHTAk/OxnkuCj WB1IxRxDqeBZMpkFLZbWFPpc5I4ZbACRQnsS+NrQIDbwW05iFNoSKPYIwPtI+WrzKBzuA0doZ5m M5tlCCskCVdHFq7ajoRnb92/sBZdL7Ss0cNwl9ss16AemVHF2css/awMbYWlACcqdleihil9NnI Pg/43IjoIZgrxf7OwPLif882NvvhRWcBcjuLkvPKHRWGedQOPkHkhPSygupjRW7HcCIQSR76sw3 SYNLaf8HB3GVUQ= X-Received: by 2002:a05:6000:1866:b0:439:ba69:101d with SMTP id ffacd0b85a97d-43a04d79003mr5139420f8f.1.1773395929882; Fri, 13 Mar 2026 02:58:49 -0700 (PDT) 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-439fe23afc5sm18035776f8f.39.2026.03.13.02.58.48 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 13 Mar 2026 02:58:49 -0700 (PDT) Message-ID: <5c321840-a3cd-4b47-841d-23e7bd8beae6@suse.com> Date: Fri, 13 Mar 2026 10:58:47 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 7/8] bfd/Sparc: drop 64-bit BFD_RELOC_* aliases From: Jan Beulich To: Binutils References: <76acf518-e951-4737-8444-6718df6ce778@suse.com> 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: <76acf518-e951-4737-8444-6718df6ce778@suse.com> X-Spam-Status: No, score=-3016.9 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, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on 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 For other relocations (e.g. BFD_RELOC_{8,16,32}{,_PCREL} or BFD_RELOC_32_PCREL_S2) the generic enumerator is used. Plus use of such aliases obfuscates where the generic types are actually in use. --- With this no users of ENUMEQ{,X} exist anymore. We could hance drop support for them from doc/*.str. Unless anyone forsees any new use? --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3413,7 +3413,6 @@ enum bfd_reloc_code_real BFD_RELOC_SPARC_BASE22, /* SPARC64 relocations. */ -#define BFD_RELOC_SPARC_64 BFD_RELOC_64 BFD_RELOC_SPARC_10, BFD_RELOC_SPARC_11, BFD_RELOC_SPARC_OLO10, @@ -3428,7 +3427,6 @@ enum bfd_reloc_code_real BFD_RELOC_SPARC_7, BFD_RELOC_SPARC_6, BFD_RELOC_SPARC_5, -#define BFD_RELOC_SPARC_DISP64 BFD_RELOC_64_PCREL BFD_RELOC_SPARC_HIX22, BFD_RELOC_SPARC_LOX10, BFD_RELOC_SPARC_H44, --- a/bfd/elfxx-sparc.c +++ b/bfd/elfxx-sparc.c @@ -396,7 +396,7 @@ _bfd_sparc_elf_reloc_type_lookup (bfd *a case BFD_RELOC_SPARC_11: return &_bfd_sparc_elf_howto_table[R_SPARC_11]; - case BFD_RELOC_SPARC_64: + case BFD_RELOC_64: return &_bfd_sparc_elf_howto_table[R_SPARC_64]; case BFD_RELOC_SPARC_OLO10: @@ -435,7 +435,7 @@ _bfd_sparc_elf_reloc_type_lookup (bfd *a case BFD_RELOC_SPARC_6: return &_bfd_sparc_elf_howto_table[R_SPARC_6]; - case BFD_RELOC_SPARC_DISP64: + case BFD_RELOC_64_PCREL: return &_bfd_sparc_elf_howto_table[R_SPARC_DISP64]; case BFD_RELOC_64_PLT_PCREL: --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -1628,10 +1628,7 @@ ENUMX ENUMDOC I think these are specific to SPARC a.out (e.g., Sun 4). -ENUMEQ - BFD_RELOC_SPARC_64 - BFD_RELOC_64 -ENUMX +ENUM BFD_RELOC_SPARC_10 ENUMX BFD_RELOC_SPARC_11 @@ -1659,9 +1656,6 @@ ENUMX BFD_RELOC_SPARC_6 ENUMX BFD_RELOC_SPARC_5 -ENUMEQX - BFD_RELOC_SPARC_DISP64 - BFD_RELOC_64_PCREL ENUMX BFD_RELOC_SPARC_HIX22 ENUMX From patchwork Fri Mar 13 10:00:45 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 131667 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id 56B954BB591B for ; Fri, 13 Mar 2026 10:01:44 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 56B954BB591B 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=SF2X8TAy X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com [IPv6:2a00:1450:4864:20::32c]) by sourceware.org (Postfix) with ESMTPS id D63D24BB5886 for ; Fri, 13 Mar 2026 10:00:48 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D63D24BB5886 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 D63D24BB5886 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::32c ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773396049; cv=none; b=i9TdrBHp4WAh7VlBSOfgZRnVct+2Mat5kLv/BnIW/o1zq+H9Z+lx8NYkgHAjjTr+wcLWhekfIAXGYi0qBM6G+wMsILkUnGVMVk3V4Mik5Ib5IwB3nMXO51KraZKAAq5opUkpO/pLF69cqym/IXSt1JGZxnTOovJkSIBKfpgAQSk= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1773396049; c=relaxed/simple; bh=SzhbJ4hZm20X/sBu0wqvyhyNtPePykNEsYtQxwDbIAk=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:From:To; b=fktfqdcQDTwRkrT/yWEuLq3KatDXy72BBLlLJ3MzVfqNZOiDEeoaJPhwDlZ2taHUKSFJ4SyjxW+XHQEReCnmJM6jnl7zbqkvaeAgYTe/VvVajvjCCEbI8te+cM27herw51JLFDVd7s7PnJOlJeBEzcSK3M8Km+/vZsDGiiJBIqE= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D63D24BB5886 Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-4853f2826f7so19073255e9.1 for ; Fri, 13 Mar 2026 03:00:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773396048; x=1774000848; 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=gS7pLG3uYEpArRgt6vG5bXFBL6J9P37FPWvzPrTAtmQ=; b=SF2X8TAyo49gk3qxMNxsF2WQPAfG8zP0Iajfuhe8rRiA5oPOmjciP4UOsqVSqmMC5Y oFRb3gFcF9H4GrkuJC1f7vAYvvpZkcRM5TFgLbMS04Elq2tFhLODMH93VL9mzGM7yUZq jYK9oM5jZk0g1PZFwko/sRrIpI1grrTYp5Nwjzmz4RIVlYBufnXQHRBNB8FS5xxr+y7y kvI6ZErpidmLv5Fu+FP+GqqWp6K8wYLTOEgVsSrM25luXq0j7Vkvxx+4m+cuV4QFnEOT YUAFVO8B+q0NeKVukU0KJJwsMRe4ZCmJ+WIY8XLmH/7lNI8oCkSlr/znlodbjWN9Klx8 qA8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773396048; x=1774000848; 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=gS7pLG3uYEpArRgt6vG5bXFBL6J9P37FPWvzPrTAtmQ=; b=i7vMMLxjpBPFXAZtXSFEgPey1LjVUjlb2QJqGHZEYQOzUrKnMqfZ6sHKviSjjXUXkd L81xKlJtxtrOgwcGJby4w5hMVksNsFOf9ntyQBJ3PQ9n4T6o7s1/TelyinmwISi0mwzQ qlykXbSzHMQd/mEY5v0XvPj6IQdXopSkhs7ywOl4TPguBWOgblgq/Zoei/9HpAsZ+z+B ilg9NWog7WsV9k64LGqXc2dVO2K+JvdzXwgoHIEtkbe+rplC68dzgDbhoveVt+XZ+N1J v89cst7/JHFQ8mf7/PDTt5OLLoYwaAsliTgrKDOy1EvVKG47/jYdvCSu2ZvZ3o/qdzjV e44w== X-Gm-Message-State: AOJu0YwoS3JQ04BnsNnGmoBGEt5NygbKEudrXRgkrsv5xaMQk50IOROY G+152Ips99dGCTaTkIRVFUfVCsrAbnt5POOeogyxM0p4xuTlcSvhTEA5yV9rCoHPlAZfY6F8sDL y+xo= X-Gm-Gg: ATEYQzyDQmEg6w/Chwz1G/6U9+JbQ8wLLB8LEggEFGOZRQEyE9KTHYcCcogKOXWxGRT 8bNiM2jGGr00dem+RhjNaZJ8ff1tVwNbh4HdWvKjqVS42yC8egvhtgWbiyi8cWV93HFUKc66WYx BEWe++S4LnjOdg10byWWrWHHkmPhaYfIYEEnw0TswVC+cElEcWWFZbH3x8zMnwrmiy+lflkwj/C SuZIzD5Vnei/HRdc+eFPwDikaDQNHFGP1Ag40ljtrxE1eA10ZdCBcgmnSxy+aZVcSFY6kltSr1R MDl4Osib56eAOR4mOSkLaoFUx5kEuyoXSqNn6nYF9hj+9Ln1Mo8/XCUQKWeaQAxX2Aum/1Bmvc8 zybkcvJsz4EjK3trGvb3l5CmHX3NHfq/VStdpsIBl08KVsqPbqKkAgUmpmZAHZPC2xAN0czeUb0 6mS6EFqbHv2cbqYASU0lohBiCxzr4qUuB+O0+momUlHnCeoXuJnUcUfG6PHzBgJEMKmXaHlQtsK 3+/HkQBBfmquYU= X-Received: by 2002:a05:600c:3b14:b0:485:4526:ee06 with SMTP id 5b1f17b1804b1-485566d70efmr39358055e9.11.1773396047311; Fri, 13 Mar 2026 03:00:47 -0700 (PDT) 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-4854b5f6c24sm179775745e9.5.2026.03.13.03.00.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 13 Mar 2026 03:00:46 -0700 (PDT) Message-ID: <598bf9c3-b548-4ace-8ad1-cc9ca29af1a2@suse.com> Date: Fri, 13 Mar 2026 11:00:45 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: [PATCH 8/8] bfd/ELF: fold BFD_RELOC__PCREL* From: Jan Beulich To: Binutils References: <76acf518-e951-4737-8444-6718df6ce778@suse.com> Content-Language: en-US Cc: Hans-Peter Nilsson , Chenghua Xu , Zhensong Liu , Palmer Dabbelt , Andrew Waterman , Jim Wilson , Nelson Chu 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: <76acf518-e951-4737-8444-6718df6ce778@suse.com> X-Spam-Status: No, score=-3016.9 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, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on 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, as long as the resulting reloc's properties fit such a generic use (in the assembler it could, after all, also result from ordinary expressions or uses with the .reloc directive). Arm64, C-Sky, and KVX - sadly - are once again exceptions. For cris it's a PLT reloc which is being replaced. For msp430 also drop BFD_RELOC_MSP430_16_BYTE, which has already been merely an alias of BFD_RELOC_16 (resolving to R_MSP430_16_BYTE). --- It's not clear to me why LoongArch's "fast" lookup stopped at BFD_RELOC_LARCH_RELAX (which is also unlike the range special cased in gas); subsequent relocations also are contiguous. IOW instead of dropping BFD_RELOC_LARCH_{32,64}_PCREL (and moving the "terminator" slightly back), the target may want (need) excluding here as well. --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -3879,8 +3879,7 @@ enum bfd_reloc_code_real BFD_RELOC_NS32K_DISP_16_PCREL, BFD_RELOC_NS32K_DISP_32_PCREL, - /* PDP11 relocations. */ - BFD_RELOC_PDP11_DISP_8_PCREL, + /* PDP11 relocation(s). */ BFD_RELOC_PDP11_DISP_6_PCREL, /* Picojava relocs. Not all of these appear in object files. */ @@ -3888,8 +3887,6 @@ enum bfd_reloc_code_real BFD_RELOC_PJ_CODE_LO16, BFD_RELOC_PJ_CODE_DIR16, BFD_RELOC_PJ_CODE_DIR32, - BFD_RELOC_PJ_CODE_REL16, - BFD_RELOC_PJ_CODE_REL32, /* Power(rs6000) and PowerPC relocations. */ BFD_RELOC_PPC_B26, @@ -5292,7 +5289,6 @@ enum bfd_reloc_code_real BFD_RELOC_RISCV_SET8, BFD_RELOC_RISCV_SET16, BFD_RELOC_RISCV_SET32, - BFD_RELOC_RISCV_32_PCREL, BFD_RELOC_RISCV_SET_ULEB128, BFD_RELOC_RISCV_SUB_ULEB128, @@ -5832,10 +5828,6 @@ enum bfd_reloc_code_real /* 32-bit offset to symbol with PLT entry, relative to GOT. */ BFD_RELOC_CRIS_32_PLT_GOTREL, - /* 32-bit offset to symbol with PLT entry, relative to this - relocation. */ - BFD_RELOC_CRIS_32_PLT_PCREL, - /* Relocs used in TLS code for CRIS. */ BFD_RELOC_CRIS_32_GOT_GD, BFD_RELOC_CRIS_16_GOT_GD, @@ -5927,8 +5919,6 @@ enum bfd_reloc_code_real BFD_RELOC_MSP430_10_PCREL, BFD_RELOC_MSP430_16_PCREL, BFD_RELOC_MSP430_16, - BFD_RELOC_MSP430_16_PCREL_BYTE, - BFD_RELOC_MSP430_16_BYTE, BFD_RELOC_MSP430_2X_PCREL, BFD_RELOC_MSP430_RL_PCREL, BFD_RELOC_MSP430_ABS8, @@ -7207,7 +7197,6 @@ enum bfd_reloc_code_real BFD_RELOC_LARCH_TLS_LD_HI20, BFD_RELOC_LARCH_TLS_GD_PC_HI20, BFD_RELOC_LARCH_TLS_GD_HI20, - BFD_RELOC_LARCH_32_PCREL, BFD_RELOC_LARCH_RELAX, BFD_RELOC_LARCH_DELETE, BFD_RELOC_LARCH_ALIGN, @@ -7217,7 +7206,6 @@ enum bfd_reloc_code_real BFD_RELOC_LARCH_SUB6, BFD_RELOC_LARCH_ADD_ULEB128, BFD_RELOC_LARCH_SUB_ULEB128, - BFD_RELOC_LARCH_64_PCREL, BFD_RELOC_LARCH_CALL36, BFD_RELOC_LARCH_TLS_DESC_PC_HI20, BFD_RELOC_LARCH_TLS_DESC_PC_LO12, --- a/bfd/elf32-cris.c +++ b/bfd/elf32-cris.c @@ -408,7 +408,7 @@ static const struct cris_reloc_map cris_ { BFD_RELOC_CRIS_32_GOTPLT, R_CRIS_32_GOTPLT }, { BFD_RELOC_CRIS_32_GOTREL, R_CRIS_32_GOTREL }, { BFD_RELOC_CRIS_32_PLT_GOTREL, R_CRIS_32_PLT_GOTREL }, - { BFD_RELOC_CRIS_32_PLT_PCREL, R_CRIS_32_PLT_PCREL }, + { BFD_RELOC_32_PLT_PCREL, R_CRIS_32_PLT_PCREL }, { BFD_RELOC_CRIS_32_GOT_GD, R_CRIS_32_GOT_GD }, { BFD_RELOC_CRIS_16_GOT_GD, R_CRIS_16_GOT_GD }, { BFD_RELOC_CRIS_32_GD, R_CRIS_32_GD }, --- a/bfd/elf32-msp430.c +++ b/bfd/elf32-msp430.c @@ -622,8 +622,7 @@ static const struct msp430_reloc_map msp {BFD_RELOC_16, R_MSP430_16_BYTE}, {BFD_RELOC_MSP430_16_PCREL, R_MSP430_16_PCREL}, {BFD_RELOC_MSP430_16, R_MSP430_16}, - {BFD_RELOC_MSP430_16_PCREL_BYTE, R_MSP430_16_PCREL_BYTE}, - {BFD_RELOC_MSP430_16_BYTE, R_MSP430_16_BYTE}, + {BFD_RELOC_16_PCREL, R_MSP430_16_PCREL_BYTE}, {BFD_RELOC_MSP430_2X_PCREL, R_MSP430_2X_PCREL}, {BFD_RELOC_MSP430_RL_PCREL, R_MSP430_RL_PCREL}, {BFD_RELOC_8, R_MSP430_8}, --- a/bfd/elf32-pj.c +++ b/bfd/elf32-pj.c @@ -271,8 +271,8 @@ static const struct elf_reloc_map pj_rel { BFD_RELOC_PJ_CODE_DIR32, R_PJ_CODE_DIR32 }, { BFD_RELOC_PJ_CODE_LO16, R_PJ_CODE_LO16 }, { BFD_RELOC_PJ_CODE_HI16, R_PJ_CODE_HI16 }, - { BFD_RELOC_PJ_CODE_REL32, R_PJ_CODE_REL32 }, - { BFD_RELOC_PJ_CODE_REL16, R_PJ_CODE_REL16 }, + { BFD_RELOC_32_PCREL, R_PJ_CODE_REL32 }, + { BFD_RELOC_16_PCREL, R_PJ_CODE_REL16 }, { BFD_RELOC_VTABLE_INHERIT, R_PJ_GNU_VTINHERIT }, { BFD_RELOC_VTABLE_ENTRY, R_PJ_GNU_VTENTRY }, }; --- a/bfd/elfxx-loongarch.c +++ b/bfd/elfxx-loongarch.c @@ -1389,7 +1389,7 @@ static loongarch_reloc_howto_type loonga 0, /* src_mask */ 0xffffffff, /* dst_mask */ true, /* pcrel_offset */ - BFD_RELOC_LARCH_32_PCREL, /* bfd_reloc_code_real_type */ + BFD_RELOC_32_PCREL, /* bfd_reloc_code_real_type */ reloc_sign_bits, /* adjust_reloc_bits */ NULL), /* larch_reloc_type_name */ @@ -1581,7 +1581,7 @@ static loongarch_reloc_howto_type loonga 0, /* src_mask */ 0xffffffffffffffff, /* dst_mask */ true, /* pcrel_offset */ - BFD_RELOC_LARCH_64_PCREL, /* bfd_reloc_code_real_type */ + BFD_RELOC_64_PCREL, /* bfd_reloc_code_real_type */ NULL, /* adjust_reloc_bits */ NULL), /* larch_reloc_type_name */ @@ -2144,10 +2144,10 @@ loongarch_reloc_type_lookup (bfd *abfd A BFD_ASSERT (ARRAY_SIZE (loongarch_howto_table) == R_LARCH_count); /* Fast search for new reloc types. */ - if (BFD_RELOC_LARCH_B16 <= code && code < BFD_RELOC_LARCH_RELAX) + if (BFD_RELOC_LARCH_B16 <= code && code <= BFD_RELOC_LARCH_TLS_GD_HI20) { - BFD_ASSERT (BFD_RELOC_LARCH_RELAX - BFD_RELOC_LARCH_B16 - == R_LARCH_RELAX - R_LARCH_B16); + BFD_ASSERT (BFD_RELOC_LARCH_TLS_GD_HI20 - BFD_RELOC_LARCH_B16 + == R_LARCH_TLS_GD_HI20 - R_LARCH_B16); loongarch_reloc_howto_type *ht; ht = &loongarch_howto_table[code - BFD_RELOC_LARCH_B16 + R_LARCH_B16]; BFD_ASSERT (ht->bfd_type == code); --- a/bfd/elfxx-riscv.c +++ b/bfd/elfxx-riscv.c @@ -1020,7 +1020,7 @@ static const struct elf_reloc_map riscv_ { BFD_RELOC_RISCV_SET8, R_RISCV_SET8 }, { BFD_RELOC_RISCV_SET16, R_RISCV_SET16 }, { BFD_RELOC_RISCV_SET32, R_RISCV_SET32 }, - { BFD_RELOC_RISCV_32_PCREL, R_RISCV_32_PCREL }, + { BFD_RELOC_32_PCREL, R_RISCV_32_PCREL }, { BFD_RELOC_RISCV_SET_ULEB128, R_RISCV_SET_ULEB128 }, { BFD_RELOC_RISCV_SUB_ULEB128, R_RISCV_SUB_ULEB128 }, }; --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -1467,14 +1467,11 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_NS32K_DISP_8_PCREL", "BFD_RELOC_NS32K_DISP_16_PCREL", "BFD_RELOC_NS32K_DISP_32_PCREL", - "BFD_RELOC_PDP11_DISP_8_PCREL", "BFD_RELOC_PDP11_DISP_6_PCREL", "BFD_RELOC_PJ_CODE_HI16", "BFD_RELOC_PJ_CODE_LO16", "BFD_RELOC_PJ_CODE_DIR16", "BFD_RELOC_PJ_CODE_DIR32", - "BFD_RELOC_PJ_CODE_REL16", - "BFD_RELOC_PJ_CODE_REL32", "BFD_RELOC_PPC_B26", "BFD_RELOC_PPC_BA26", "BFD_RELOC_PPC_TOC16", @@ -2311,7 +2308,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_RISCV_SET8", "BFD_RELOC_RISCV_SET16", "BFD_RELOC_RISCV_SET32", - "BFD_RELOC_RISCV_32_PCREL", "BFD_RELOC_RISCV_SET_ULEB128", "BFD_RELOC_RISCV_SUB_ULEB128", "BFD_RELOC_RL78_NEG8", @@ -2622,7 +2618,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_CRIS_16_GOTPLT", "BFD_RELOC_CRIS_32_GOTREL", "BFD_RELOC_CRIS_32_PLT_GOTREL", - "BFD_RELOC_CRIS_32_PLT_PCREL", "BFD_RELOC_CRIS_32_GOT_GD", "BFD_RELOC_CRIS_16_GOT_GD", "BFD_RELOC_CRIS_32_GD", @@ -2691,8 +2686,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_MSP430_10_PCREL", "BFD_RELOC_MSP430_16_PCREL", "BFD_RELOC_MSP430_16", - "BFD_RELOC_MSP430_16_PCREL_BYTE", - "BFD_RELOC_MSP430_16_BYTE", "BFD_RELOC_MSP430_2X_PCREL", "BFD_RELOC_MSP430_RL_PCREL", "BFD_RELOC_MSP430_ABS8", @@ -3398,7 +3391,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_LARCH_TLS_LD_HI20", "BFD_RELOC_LARCH_TLS_GD_PC_HI20", "BFD_RELOC_LARCH_TLS_GD_HI20", - "BFD_RELOC_LARCH_32_PCREL", "BFD_RELOC_LARCH_RELAX", "BFD_RELOC_LARCH_DELETE", "BFD_RELOC_LARCH_ALIGN", @@ -3408,7 +3400,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_LARCH_SUB6", "BFD_RELOC_LARCH_ADD_ULEB128", "BFD_RELOC_LARCH_SUB_ULEB128", - "BFD_RELOC_LARCH_64_PCREL", "BFD_RELOC_LARCH_CALL36", "BFD_RELOC_LARCH_TLS_DESC_PC_HI20", "BFD_RELOC_LARCH_TLS_DESC_PC_LO12", --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -2443,11 +2443,9 @@ ENUMDOC ns32k relocations. ENUM - BFD_RELOC_PDP11_DISP_8_PCREL -ENUMX BFD_RELOC_PDP11_DISP_6_PCREL ENUMDOC - PDP11 relocations. + PDP11 relocation(s). ENUM BFD_RELOC_PJ_CODE_HI16 @@ -2457,10 +2455,6 @@ ENUMX BFD_RELOC_PJ_CODE_DIR16 ENUMX BFD_RELOC_PJ_CODE_DIR32 -ENUMX - BFD_RELOC_PJ_CODE_REL16 -ENUMX - BFD_RELOC_PJ_CODE_REL32 ENUMDOC Picojava relocs. Not all of these appear in object files. @@ -4748,8 +4742,6 @@ ENUMX ENUMX BFD_RELOC_RISCV_SET32 ENUMX - BFD_RELOC_RISCV_32_PCREL -ENUMX BFD_RELOC_RISCV_SET_ULEB128 ENUMX BFD_RELOC_RISCV_SUB_ULEB128 @@ -5612,11 +5604,6 @@ ENUM BFD_RELOC_CRIS_32_PLT_GOTREL ENUMDOC 32-bit offset to symbol with PLT entry, relative to GOT. -ENUM - BFD_RELOC_CRIS_32_PLT_PCREL -ENUMDOC - 32-bit offset to symbol with PLT entry, relative to this - relocation. ENUM BFD_RELOC_CRIS_32_GOT_GD @@ -5783,10 +5770,6 @@ ENUMX ENUMX BFD_RELOC_MSP430_16 ENUMX - BFD_RELOC_MSP430_16_PCREL_BYTE -ENUMX - BFD_RELOC_MSP430_16_BYTE -ENUMX BFD_RELOC_MSP430_2X_PCREL ENUMX BFD_RELOC_MSP430_RL_PCREL @@ -7794,9 +7777,6 @@ ENUMX BFD_RELOC_LARCH_TLS_GD_HI20 ENUMX - BFD_RELOC_LARCH_32_PCREL - -ENUMX BFD_RELOC_LARCH_RELAX ENUMX @@ -7822,9 +7802,6 @@ ENUMX BFD_RELOC_LARCH_SUB_ULEB128 ENUMX - BFD_RELOC_LARCH_64_PCREL - -ENUMX BFD_RELOC_LARCH_CALL36 ENUMX --- a/gas/config/tc-cris.c +++ b/gas/config/tc-cris.c @@ -3502,7 +3502,7 @@ cris_get_reloc_suffix (char **cPP, bfd_r PICMAP ("GOTPLT16", BFD_RELOC_CRIS_16_GOTPLT), PICMAP ("GOTPLT", BFD_RELOC_CRIS_32_GOTPLT), PICMAP ("PLTG", BFD_RELOC_CRIS_32_PLT_GOTREL), - PICMAP ("PLT", BFD_RELOC_CRIS_32_PLT_PCREL), + PICMAP ("PLT", BFD_RELOC_32_PLT_PCREL), PICMAP ("GOTOFF", BFD_RELOC_CRIS_32_GOTREL), PICMAP ("GOT16", BFD_RELOC_CRIS_16_GOT), PICMAP ("GOT", BFD_RELOC_CRIS_32_GOT), @@ -3672,7 +3672,7 @@ cris_number_to_imm (char *bufp, long val case BFD_RELOC_CRIS_16_GOTPLT: case BFD_RELOC_CRIS_32_GOTPLT: case BFD_RELOC_CRIS_32_PLT_GOTREL: - case BFD_RELOC_CRIS_32_PLT_PCREL: + case BFD_RELOC_32_PLT_PCREL: /* We don't want to put in any kind of non-zero bits in the data being relocated for these. */ md_number_to_chars (bufp, 0, n); @@ -3924,7 +3924,7 @@ tc_gen_reloc (asection *section ATTRIBUT case BFD_RELOC_CRIS_32_GOTPLT: case BFD_RELOC_CRIS_32_GOTREL: case BFD_RELOC_CRIS_32_PLT_GOTREL: - case BFD_RELOC_CRIS_32_PLT_PCREL: + case BFD_RELOC_32_PLT_PCREL: case BFD_RELOC_32: case BFD_RELOC_32_PCREL: case BFD_RELOC_16: @@ -4101,7 +4101,7 @@ md_cris_force_relocation (struct fix *fi case BFD_RELOC_CRIS_32_GOTPLT: case BFD_RELOC_CRIS_32_GOTREL: case BFD_RELOC_CRIS_32_PLT_GOTREL: - case BFD_RELOC_CRIS_32_PLT_PCREL: + case BFD_RELOC_32_PLT_PCREL: return 1; default: ; --- a/gas/config/tc-cris.h +++ b/gas/config/tc-cris.h @@ -79,7 +79,7 @@ extern int md_cris_force_relocation (str || (RTYPE) == BFD_RELOC_CRIS_32_GOTPLT \ || (RTYPE) == BFD_RELOC_CRIS_32_GOTREL \ || (RTYPE) == BFD_RELOC_CRIS_32_PLT_GOTREL \ - || (RTYPE) == BFD_RELOC_CRIS_32_PLT_PCREL) + || (RTYPE) == BFD_RELOC_32_PLT_PCREL) /* Make sure we don't resolve fixups for which we want to emit dynamic relocations. */ --- a/gas/config/tc-loongarch.c +++ b/gas/config/tc-loongarch.c @@ -865,8 +865,10 @@ loongarch_args_parser_can_match_arg_help _("not support reloc bit-field\nfmt: %c%c %s\nargs: %s"), esc_ch1, esc_ch2, bit_field, arg); - if (ip->reloc_info[0].type >= BFD_RELOC_LARCH_B16 - && ip->reloc_info[0].type <= BFD_RELOC_LARCH_TLS_DESC_PCADD_LO12) + if ((ip->reloc_info[0].type >= BFD_RELOC_LARCH_B16 + && ip->reloc_info[0].type <= BFD_RELOC_LARCH_TLS_DESC_PCADD_LO12) + || ip->reloc_info[0].type == BFD_RELOC_32_PCREL + || ip->reloc_info[0].type == BFD_RELOC_64_PCREL) { /* As we compact stack-relocs, it is no need for pop operation. But break out until here in order to check the imm field. @@ -1714,10 +1716,10 @@ md_apply_fix (fixS *fixP, valueT *valP, switch (fixP->fx_r_type) { case BFD_RELOC_64: - fixP->fx_r_type = BFD_RELOC_LARCH_64_PCREL; + fixP->fx_r_type = BFD_RELOC_64_PCREL; break; case BFD_RELOC_32: - fixP->fx_r_type = BFD_RELOC_LARCH_32_PCREL; + fixP->fx_r_type = BFD_RELOC_32_PCREL; break; default: break; @@ -1736,7 +1738,7 @@ md_apply_fix (fixS *fixP, valueT *valP, && S_GET_VALUE (fixP->fx_subsy) == fixP->fx_frag->fr_address + fixP->fx_where) { - fixP->fx_r_type = BFD_RELOC_LARCH_32_PCREL; + fixP->fx_r_type = BFD_RELOC_32_PCREL; fixP->fx_subsy = NULL; break; } --- a/gas/config/tc-msp430.c +++ b/gas/config/tc-msp430.c @@ -291,7 +291,7 @@ target_is_430xv2 (void) : ((OP).vshift == 1 \ ? BFD_RELOC_MSP430_ABS_HI16 : BFD_RELOC_16)) \ : ((imm_op || byte_op) \ - ? BFD_RELOC_MSP430_16_BYTE : BFD_RELOC_MSP430_16)) + ? BFD_RELOC_16 : BFD_RELOC_MSP430_16)) /* Generate a 16-bit pc-relative relocation. For the 430X we generate a relocation without linker range checking. @@ -302,7 +302,7 @@ target_is_430xv2 (void) (target_is_430x () \ ? BFD_RELOC_MSP430X_PCR16 \ : (imm_op || byte_op) \ - ? BFD_RELOC_MSP430_16_PCREL_BYTE : BFD_RELOC_MSP430_16_PCREL) + ? BFD_RELOC_16_PCREL : BFD_RELOC_MSP430_16_PCREL) /* Profiling capability: It is a performance hit to use gcc's profiling approach for this tiny target. @@ -4523,7 +4523,7 @@ md_apply_fix (fixS * fixp, valueT * valu _("odd address operand: %ld"), value); /* Fall through. */ - case BFD_RELOC_MSP430_16_PCREL_BYTE: + case BFD_RELOC_16_PCREL: /* Nothing to be corrected here. */ if (value < -32768 || value > 65536) as_bad_where (fixp->fx_file, fixp->fx_line, @@ -4533,7 +4533,6 @@ md_apply_fix (fixS * fixp, valueT * valu case BFD_RELOC_MSP430X_ABS16: case BFD_RELOC_MSP430_16: case BFD_RELOC_16: - case BFD_RELOC_MSP430_16_BYTE: value &= 0xffff; /* Get rid of extended sign. */ bfd_putl16 (value, where); break; --- a/gas/config/tc-pdp11.c +++ b/gas/config/tc-pdp11.c @@ -268,7 +268,7 @@ md_apply_fix (fixS *fixP, mask = 0xffffffff; shift = 0; break; - case BFD_RELOC_PDP11_DISP_8_PCREL: + case BFD_RELOC_8_PCREL: mask = 0x00ff; shift = 1; break; @@ -790,7 +790,7 @@ md_assemble (char *instruction_string) new_pointer = parse_expression (str, &op1); op1.code = 0; op1.reloc.pc_rel = 1; - op1.reloc.type = BFD_RELOC_PDP11_DISP_8_PCREL; + op1.reloc.type = BFD_RELOC_8_PCREL; if (op1.reloc.exp.X_op != O_symbol) { op1.error = _("Symbol expected"); --- a/gas/config/tc-pj.c +++ b/gas/config/tc-pj.c @@ -127,12 +127,12 @@ c_to_r (int x) case O_8: return BFD_RELOC_8; case O_R16: - return BFD_RELOC_PJ_CODE_REL16; + return BFD_RELOC_16_PCREL; case O_U16: case O_16: return BFD_RELOC_PJ_CODE_DIR16; case O_R32: - return BFD_RELOC_PJ_CODE_REL32; + return BFD_RELOC_32_PCREL; case O_32: return BFD_RELOC_PJ_CODE_DIR32; } @@ -375,7 +375,7 @@ md_apply_fix (fixS *fixP, valueT * valP, fixP->fx_done = 0; return; - case BFD_RELOC_PJ_CODE_REL16: + case BFD_RELOC_16_PCREL: if (val < -0x8000 || val >= 0x7fff) as_bad_where (fixP->fx_file, fixP->fx_line, _("pcrel too far")); buf[0] |= (val >> 8) & 0xff; @@ -404,7 +404,7 @@ md_apply_fix (fixS *fixP, valueT * valP, break; case BFD_RELOC_PJ_CODE_DIR32: - case BFD_RELOC_PJ_CODE_REL32: + case BFD_RELOC_32_PCREL: *buf++ = val >> 24; *buf++ = val >> 16; *buf++ = val >> 8; --- a/gas/config/tc-riscv.c +++ b/gas/config/tc-riscv.c @@ -4749,7 +4749,7 @@ md_apply_fix (fixS *fixP, valueT *valP, && S_GET_VALUE (fixP->fx_subsy) == fixP->fx_frag->fr_address + fixP->fx_where) { - fixP->fx_r_type = BFD_RELOC_RISCV_32_PCREL; + fixP->fx_r_type = BFD_RELOC_32_PCREL; fixP->fx_subsy = NULL; break; }