From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS3215 2.6.0.0/16 X-Spam-Status: No, score=-3.3 required=3.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,SPF_HELO_PASS,SPF_PASS,URIBL_BLACK shortcircuit=no autolearn=no autolearn_force=no version=3.4.2 Received: from sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 7D85B1F8C6 for ; Mon, 23 Aug 2021 03:19:33 +0000 (UTC) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 90017385782D for ; Mon, 23 Aug 2021 03:19:32 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 90017385782D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1629688772; bh=V5HYFjqt2KxTypVCz2LbB5C4O4Ykam3VH490wQBElnM=; h=References:In-Reply-To:Date:Subject:To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=gnFmw/J3a7bXEulOAi6IKBBfd8m3bMZPRJP7SVtBMBi1uF/tpcShjRfaHbrDkhioJ cuOgOIT7/g4pkkEhvhHILL9onITXcd3iB73Tgbrntt52+5SjNxYtBCfiJIklTzEGIy 1IH/cgR5Gj3EAqpjPFJBMPnlJYvHm5sLKVKK+qUQ= Received: from mail-yb1-xb36.google.com (mail-yb1-xb36.google.com [IPv6:2607:f8b0:4864:20::b36]) by sourceware.org (Postfix) with ESMTPS id 6558B3857C74 for ; Mon, 23 Aug 2021 03:19:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 6558B3857C74 Received: by mail-yb1-xb36.google.com with SMTP id l144so31299633ybl.12 for ; Sun, 22 Aug 2021 20:19:02 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=V5HYFjqt2KxTypVCz2LbB5C4O4Ykam3VH490wQBElnM=; b=qxdrcn16cJNpcV6vuteSRvkqKE6MHApt9rzzIJSjlxC3XuAGoEmIybuAIAyccUnhyS Tsik9Nb32SiZLjmGL9SFqELcqbMgmVowA9y4PhQtN5V80xkQnw7T68I85WvapyBlU1Sv YeHmqj5VBLlbMutgHBZ6nlRfO0hgSb4AWPffwhyKf2WnnZEbx5Cuq9RvLqf2Rts0cMS5 OwfYAbvig2P5EcbXeveZmiEKzmuKoiFECRYBXIERyC7dTUS9cO171+/FF+44Lz794u1z 8NBwgTFp7V2WIM4o4EqOT9OCAGAQ50wwzvfo+X42MekgVfa9TuWogda0qr8TQgOnJrJU nZbQ== X-Gm-Message-State: AOAM532stXl3wFdeH5PrgW2+q7XtBjF+ZW6NHH2vxXL7bCIqp3I3Jo2z 5gogB6GYyrPwL2zimaKrQNLX4UICz4P0GfkrX3cMT52/KpGb0w== X-Google-Smtp-Source: ABdhPJw+9/NHTv8tAe3v+fSQq/w4JE/JG3c56iwGh0LA2vyplgfDcXEl1nFcIKiehMh7bgK2FQ1TAQNeP1oWdCbh/BM= X-Received: by 2002:a25:8145:: with SMTP id j5mr28915207ybm.322.1629688741674; Sun, 22 Aug 2021 20:19:01 -0700 (PDT) MIME-Version: 1.0 References: <20210805162601.1200851-1-maskray@google.com> <20210805162601.1200851-4-maskray@google.com> <20210810221915.g6ipyceykaio3324@google.com> In-Reply-To: <20210810221915.g6ipyceykaio3324@google.com> Date: Sun, 22 Aug 2021 20:18:50 -0700 Message-ID: Subject: Re: [PATCH v2 3/3] configure: Allow LD to be LLD 13.0.0 or above [BZ #26558] To: libc-alpha@sourceware.org Content-Type: text/plain; charset="UTF-8" X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: =?utf-8?q?F=C4=81ng-ru=C3=AC_S=C3=B2ng_via_Libc-alpha?= Reply-To: =?UTF-8?B?RsSBbmctcnXDrCBTw7JuZw==?= Errors-To: libc-alpha-bounces+e=80x24.org@sourceware.org Sender: "Libc-alpha" On Tue, Aug 10, 2021 at 3:19 PM Fangrui Song wrote: > > On 2021-08-05, Fangrui Song wrote: > >When using LLD (LLVM linker) as the linker, configure prints a confusing > >message. > > > > *** These critical programs are missing or too old: GNU ld > > > >LLD>=13.0.0 can build glibc --enable-static-pie. (8.0.0 needs one > >workaround for -Wl,-defsym=_begin=0. 9.0.0 works with > >--disable-static-pie). > > > >With BZ #28153 (glibc bug exposed by testing with LLD) fixed, > >`make check` only has 2 more failures with LLD than with GNU ld: > >BZ #28154 (LLD follows the PowerPC port of GNU ld for ifunc by > >placing IRELATIVE relocations in .rela.dyn). > >The set of dynamic symbols is the same with GNU ld and LLD, > >modulo unused SHN_ABS version node symbols. > > > >For comparison, gold does not support --enable-static-pie > >yet (--no-dynamic-linker is unsupported BZ #22221), yet > >has 6 failures more than LLD. gold linked libc.so has > >larger .dynsym differences with GNU ld and LLD > >(ISTM non-default version symbols are changed to default versions > >by a version script). > > > >--- > > > >I identified the lack of support of > > > >* version script on non-default version symbols > >* copy relocations on non-default version symbols > > > >in an earlier snapshot of LLD 13.0.0 and fixed them. > >The functionality of the LLD linked libc.so and ld.so looks pretty good. > >--- > > configure | 77 +++++++++++++++++++++++++++++++++++++++++++++++++--- > > configure.ac | 20 ++++++++++---- > > 2 files changed, 88 insertions(+), 9 deletions(-) > > Ping:) > > (The code/test hasn't been changed since v1. > v2 just added BZ numbers.) > > x86-64 only 2 more ifunc FAIL which tickle some weak point of ifunc implementation. > > aarch64 `make-check` is fully on par with GNU ld. > (https://sourceware.org/pipermail/libc-alpha/2021-August/130040.html) Ping^2 ("elf: Replace .tls_common with .tbss definition [BZ #28152]" has been subsumed into a tls-macros.h removal patch.)