From patchwork Thu Jun 22 09:19:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Efraim Flashner X-Patchwork-Id: 51166 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id A841227BBE2; Thu, 22 Jun 2023 10:24:28 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id E0F4327BBEC for ; Thu, 22 Jun 2023 10:24:23 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qCGXu-0006fw-7f; Thu, 22 Jun 2023 05:24:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qCGXq-0006ed-GG for guix-patches@gnu.org; Thu, 22 Jun 2023 05:24:05 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qCGXq-0004dV-8K for guix-patches@gnu.org; Thu, 22 Jun 2023 05:24:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qCGXq-0001bG-4P for guix-patches@gnu.org; Thu, 22 Jun 2023 05:24:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#64218] [PATCH 4/7] gnu: lld-15: Adjust max text section size on riscv64-linux. Resent-From: Efraim Flashner Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 22 Jun 2023 09:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 64218 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 64218@debbugs.gnu.org Cc: Efraim Flashner Received: via spool by 64218-submit@debbugs.gnu.org id=B64218.16874257866048 (code B ref 64218); Thu, 22 Jun 2023 09:24:02 +0000 Received: (at 64218) by debbugs.gnu.org; 22 Jun 2023 09:23:06 +0000 Received: from localhost ([127.0.0.1]:34823 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qCGWv-0001ZN-GP for submit@debbugs.gnu.org; Thu, 22 Jun 2023 05:23:06 -0400 Received: from mail-lf1-f45.google.com ([209.85.167.45]:55360) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qCGWr-0001XV-Kg for 64218@debbugs.gnu.org; Thu, 22 Jun 2023 05:23:02 -0400 Received: by mail-lf1-f45.google.com with SMTP id 2adb3069b0e04-4f8735ac3e3so6179277e87.2 for <64218@debbugs.gnu.org>; Thu, 22 Jun 2023 02:23:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687425776; x=1690017776; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:sender:from:to:cc:subject:date :message-id:reply-to; bh=zIXCbuY526kVBl2LvfwraMn+Oe5qQ4db9fM1g0Rpmks=; b=YLXQOxlIZyRxwKPFGgHRRJSjpvw21j3GOaFjayTkeCi//zH/kJ/1n4WdFNS4W1IX8r xLoaHW1k8GVQ7q9SFINd8GeBO3P2zlMKoslwDMPNz6c+rj4YKwXIquSbY/JMsVVHVfxT Wglcg4v8foxFa7ibyEDmPcrQ/QSAtQVn9wSPpeIVQ14CRRuUntU2+DTzrnajQ7tC0FIw UfNolGMtPYRnTB59YcoY2ug2Mo5h/ep4Jh7mW7TfK52qSPDc3w2t3wJWan1MTadgSuRC zYF5VYuD8iTtEVpqwMK6G5jK/5+zqfTPGdQ/YFmu9J3tiL6OWUIHly7pRgUy40OUdJFF DzTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687425776; x=1690017776; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:sender:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=zIXCbuY526kVBl2LvfwraMn+Oe5qQ4db9fM1g0Rpmks=; b=HNuf2re2NLhbsh8G7lLmyXGtiCuaXtPDQy+Kq9Fx9a7xyhp+LXWU2e4Ce9SPRgXGlJ lOmRBuXlSNE8BZ92ZUJgLMch2MlWwm4Ybh/dg5XHQEZdboW86fsEfPFWgJmHXdikAJGQ yNOW6BaI7SValMU0mb0JHioIlVFD4EVGnK2haAgzDnRCBXDSImQX8j9ypeMbxj8e4PKy HShWkrhZvPCfzFszVitMMOjNSejW0laNi2ksULrjJJtkidHxSLJ6PWwuehbLSipaioeM EpUWUQXkLBqdyocCDx4BGF7hU0rAHX55F/uPkzBnDi4KDPAQ0AQrnlpz9vBLemPSYQA7 OFaA== X-Gm-Message-State: AC+VfDxIFl0SNB3g5UzPe5pxPKWaJDie58UFvWd7bEfIgvq6r3uWYU8y 4HBGTCLwHWSfIv475UnblKNHF4/m0lKIGQ== X-Google-Smtp-Source: ACHHUZ6GWzqZXppFXq7zD2BNL8JKRHWzRA+WyO+YimVGZ+xS1a54ije4M4ZuEcupMup1BbHyzAf11A== X-Received: by 2002:a19:ca58:0:b0:4f8:b349:6938 with SMTP id h24-20020a19ca58000000b004f8b3496938mr4733351lfj.65.1687425775768; Thu, 22 Jun 2023 02:22:55 -0700 (PDT) Received: from localhost ([188.120.129.124]) by smtp.gmail.com with ESMTPSA id t13-20020adff60d000000b003119633ecb5sm6504700wrp.88.2023.06.22.02.22.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jun 2023 02:22:55 -0700 (PDT) From: Efraim Flashner Date: Thu, 22 Jun 2023 12:19:11 +0300 Message-Id: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/llvm.scm (ldd-15)[arguments]: When building for riscv64-linux add a phase to mirror an upstream patch to allow for larger text section sizes in linked libraries. --- gnu/packages/llvm.scm | 32 +++++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index d36a95879a..a15dffed93 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -1525,14 +1525,29 @@ (define-public lld-15 (inputs (list llvm-15)) (arguments - '(#:build-type "Release" + `(#:build-type "Release" ;; TODO: Tests require the lit tool, which isn't installed by the LLVM ;; package. #:tests? #f - #:phases (modify-phases %standard-phases - (add-after 'unpack 'change-directory - (lambda _ - (chdir "lld")))))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'change-directory + (lambda _ + (chdir "lld"))) + ,@(if (target-riscv64?) + '((add-after 'change-directory 'patch-riscv-text-section-size + (lambda _ + ;; https://github.com/llvm/llvm-project/issues/63374 + ;; https://github.com/llvm/llvm-project/commit/9d37ea95df1b84cca9b5e954d8964c976a5e303e + (substitute* "ELF/Arch/RISCV.cpp" + (("uint32_t delta = 0") "uint64_t delta = 0") + (("isUInt<16>\\(delta\\)") "isUInt<32>(delta)") + (("is too large\"") "is too large \" + Twine(delta)")) + (substitute* "ELF/InputSection.h" + (("uint16_t bytesDropped = 0") + "uint32_t bytesDropped = 0") + (("160") "168"))))) + '())))) (home-page "https://lld.llvm.org/") (synopsis "Linker from the LLVM project") (description "LLD is a high-performance linker, built as a set of reusable @@ -1544,6 +1559,13 @@ (define-public lld-14 (inherit lld-15) (version "14.0.6") (source (llvm-monorepo version)) + (arguments + (substitute-keyword-arguments (package-arguments lld-15) + ((#:phases phases) + (if (target-riscv64?) + `(modify-phases ,phases + (delete 'patch-riscv-text-section-size)) + phases)))) (inputs (list llvm-14))))