From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-vk1-f169.google.com (mail-vk1-f169.google.com [209.85.221.169]) by sourceware.org (Postfix) with ESMTPS id 971D2385737E for ; Fri, 13 May 2022 12:26:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 971D2385737E Received: by mail-vk1-f169.google.com with SMTP id n135so4122980vkn.7 for ; Fri, 13 May 2022 05:26:57 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=q9R7yzvj56o2pEDo+SogGdW+B6FZ3eq/0ubTMRu0xEE=; b=u57ogVsSv6PuKUny+uG38tzEvlZggyBtgjlx/xGkc/O1anRyM1Pk1DPyadU1p7fHjP XMAwjC8BCLdmiR3Ij0M4ORg+2TsJKVnzjH5LfZeExLd6Z3cLPpt5k4GiB+U6djwa6QG6 P2SU1V6wItyy0dLYzDzwxvVdNeDiLLVdyBNjSXVpd6aLKVgJglehWHI2kj974Ldbjm5H ANvDzpY99h37iAbTwXAu2JACNbvwyENSyTKOQ32LqUnSVglx+8gPEGG8Ylkcg/VIgkES nBcySyrDbexTIjPoe3fDc44f9Bq9pmlfAv+Yq2JMFlh3fU234YVNK/T29WVwAegtjQOK RwVg== X-Gm-Message-State: AOAM532EUb2HgNJqWJPYjSC9Mp/LCcYKbM2sM12WjxPCjdhe5KXwHEuG QLi6hOrIxDaaoQBCKRcREkeoUZ2a924Tw84N X-Google-Smtp-Source: ABdhPJxOwTM+fZUKM9CKrBjSvHcHum0iaOg4oKvxjSKKrDZIkASIzPHN/WFCP6NdQXNDaBimWHel4A== X-Received: by 2002:a1f:5481:0:b0:344:b5b5:6892 with SMTP id i123-20020a1f5481000000b00344b5b56892mr2152572vkb.17.1652444816914; Fri, 13 May 2022 05:26:56 -0700 (PDT) Received: from mail-vs1-f46.google.com (mail-vs1-f46.google.com. [209.85.217.46]) by smtp.gmail.com with ESMTPSA id b20-20020a056102233400b0032d275e6922sm228814vsa.34.2022.05.13.05.26.56 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 13 May 2022 05:26:56 -0700 (PDT) Received: by mail-vs1-f46.google.com with SMTP id x8so8195358vsg.11 for ; Fri, 13 May 2022 05:26:56 -0700 (PDT) X-Received: by 2002:a67:fe87:0:b0:333:c053:decf with SMTP id b7-20020a67fe87000000b00333c053decfmr2029202vsr.4.1652444816070; Fri, 13 May 2022 05:26:56 -0700 (PDT) MIME-Version: 1.0 References: <87y1z5d7i9.fsf@oldenburg.str.redhat.com> In-Reply-To: <87y1z5d7i9.fsf@oldenburg.str.redhat.com> From: =?UTF-8?Q?Christoph_M=C3=BCllner?= Date: Fri, 13 May 2022 14:26:44 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: Supporting RISC-V Vendor Extensions in the GNU Toolchain To: Florian Weimer Cc: =?UTF-8?Q?Christoph_M=C3=BCllner_via_Binutils?= , Palmer Dabbelt , Philipp Tomsich , GNU C Library , GCC Patches , gdb-patches@sourceware.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 May 2022 12:26:58 -0000 On Fri, May 13, 2022 at 12:58 PM Florian Weimer wrote: > > * Christoph M=C3=BCllner via Binutils: > > > I'd like to add two points to this topic and raise two questions. > > > > 1) Accepting vendor extensions =3D avoidance of fragmentation > > > > RISC-V implementors are actively encouraged to implement their > > own ISA extensions. To avoid fragmentation in the SW ecosystem > > (every vendor maintains a fork of tools, distros and binaries) there > > needs to be a principle acceptance to get vendor extension support > > upstream. > > If you eventually want portable binaries, it's necessary to converge on > a small set of widely implemented extensions. x86 didn't have this, and > adoption was poor outside specialized libraries (and JIT, of course). > Yet everything was as upstream as possible (ISA manuals, assemblers, > compiler intrinsics, even automated adoption by optimizers). So > upstreaming is only the first step. > > Not every useful CPU feature can be adopted through run-time dispatching > (IFUNCs, function multi-versionining). I fully agree. Therefore I can just recommend ISA extension designers to discuss the SW enablement requirements and goals before CPUs are shipped. In the end it is the responsibility of the CPU vendors to get their extensi= ons supported upstream and to provide appropriate patches to integrate well and keep the upstream sources in a maintainable state. However, I have full trust in the maintainers to make the right judgements (like they have done in the past). Thanks, Christoph