From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pj1-x102a.google.com (mail-pj1-x102a.google.com [IPv6:2607:f8b0:4864:20::102a]) by sourceware.org (Postfix) with ESMTPS id 21F643858430 for ; Thu, 31 Aug 2023 17:13:51 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 21F643858430 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-pj1-x102a.google.com with SMTP id 98e67ed59e1d1-26d144db2b4so152320a91.1 for ; Thu, 31 Aug 2023 10:13:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693502029; x=1694106829; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0lorxFel+xYZ+zbbCQjRHYRxi9G4Lkx4+6SKW7TxKJY=; b=ZzJjaFaWnXDWDZEmE+K2emfSpywcAVZxYFQ7z4wMbcSuLdnVoro1fdtamWbIKjUO8M U0HOCjSng8z4lOuAyGqkwZusHcHQ1FevANfc1fm+2v1ZVOK+P4j5P/3DH7888h7W9EvV GtTEyqZxrcpvyZtrJXsWL2I7Nn18sgGbs/fwdyXbCY3aU9B4HFtGMQF/xJlgtmQcvGyU TcltOinNV3GabTaJ7MJpsCsa96Eqyv6UZoWd01fw+ge96EUP2hvRewDt9sFtaC7ZrdHz LfNnP9EmmxTBS/x2XwpcvBdOzasdEpcqw6TmN4gRx94M6VgZk2sAoSqOnkeV5KGMciZ1 VIzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693502029; x=1694106829; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0lorxFel+xYZ+zbbCQjRHYRxi9G4Lkx4+6SKW7TxKJY=; b=XKemtcZkucFTqOpZV2XL2xGv6DlkaLCT/ix9NQDddUR7pAxbeYuyYE1CQ8JDK4auBu PDB7CemoUsP12W5me3DbtoPp0HhoiNHX8wcJLslXOZyX0UK+n1xORGTniOKE8UTUajFU p2nzKzSoK+T5YAtLsogiW+D8fEinr4TExrJJIQcvM2EfNETtPY4Z3EgUXSjZwPd8kFeV y9ZH1iJNpBU2nyM2qsfspOtQIWznJCcqqBV3oaDqYSixIOOc7fxC2t7b+0xvVFAaJIrH TzCTsNtUqe646C37ABEHWNQp2D+M71Zgjs5E3lQPtMTy10SAb94lguo0skscwjFj01Pl BorA== X-Gm-Message-State: AOJu0Yy6x3IJGBRM133KzwbpYB+KOBH0gBhJWWw8jMyK682q8fiZhT6M BqpS6yfggdCTP5elcr1U6bGMODqJkc4V8A+C X-Google-Smtp-Source: AGHT+IEZjCcT/XBEBch4XsYLHBpKS/4hCcpk1wRrYF8eghM0G/l3+/3GoVXptS2WMwnP0/dA/pEhHw== X-Received: by 2002:a17:90a:142:b0:263:730b:f568 with SMTP id z2-20020a17090a014200b00263730bf568mr5390721pje.3.1693502029565; Thu, 31 Aug 2023 10:13:49 -0700 (PDT) Received: from localhost (zz20184013906F627101.userreverse.dion.ne.jp. [111.98.113.1]) by smtp.gmail.com with ESMTPSA id gv9-20020a17090b11c900b0026f39c90111sm1586586pjb.20.2023.08.31.10.13.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 31 Aug 2023 10:13:48 -0700 (PDT) From: Tatsuyuki Ishi To: binutils@sourceware.org Cc: rui314@gmail.com, ruiu@bluewhale.systems, i@maskray.me, nelson@rivosinc.com, Tatsuyuki Ishi Subject: [PATCH v2 0/5] RISC-V: Implement TLS Descriptors. Date: Fri, 1 Sep 2023 02:13:30 +0900 Message-ID: <20230831171345.49052-1-ishitatsuyuki@gmail.com> X-Mailer: git-send-email 2.42.0 In-Reply-To: <20230817180852.121628-2-ishitatsuyuki@gmail.com> References: <20230817180852.121628-2-ishitatsuyuki@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This patchset implements TLS Descriptors (TLSDESC) for RISC-V targets, per the specification draft at [1]. No regression (& passing new tests) in binutils, tested for rv64gc. This contribution is made on behalf of Blue Whale Systems, which has copyright assignment on file with the FSF. [1]: https://github.com/riscv-non-isa/riscv-elf-psabi-doc/pull/373 v2: Add changelogs and tests. Minor fixes described in patch messages. Tatsuyuki Ishi (5): RISC-V: Fix local GOT and reloc size calculation for TLS. RISC-V: Add TLSDESC reloc definitions. RISC-V: Add assembly support for TLSDESC. RISC-V: Define and use GOT entry size constants for TLS. RISC-V: Initial ld.bfd support for TLSDESC. bfd/bfd-in2.h | 4 + bfd/elfnn-riscv.c | 124 ++++++++++++++++++--- bfd/elfxx-riscv.c | 75 ++++++++++++- bfd/libbfd.h | 4 + bfd/reloc.c | 8 ++ gas/config/tc-riscv.c | 18 ++- gas/testsuite/gas/riscv/tlsdesc.d | 22 ++++ gas/testsuite/gas/riscv/tlsdesc.s | 24 ++++ include/elf/riscv.h | 5 + ld/testsuite/ld-riscv-elf/ld-riscv-elf.exp | 8 ++ ld/testsuite/ld-riscv-elf/tls.d | 17 +++ ld/testsuite/ld-riscv-elf/tls.s | 42 +++++++ ld/testsuite/ld-riscv-elf/tlsbin.d | 12 ++ ld/testsuite/ld-riscv-elf/tlslib.s | 6 + opcodes/riscv-opc.c | 1 + 15 files changed, 347 insertions(+), 23 deletions(-) create mode 100644 gas/testsuite/gas/riscv/tlsdesc.d create mode 100644 gas/testsuite/gas/riscv/tlsdesc.s create mode 100644 ld/testsuite/ld-riscv-elf/tls.d create mode 100644 ld/testsuite/ld-riscv-elf/tls.s create mode 100644 ld/testsuite/ld-riscv-elf/tlsbin.d create mode 100644 ld/testsuite/ld-riscv-elf/tlslib.s -- 2.42.0