From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-vk1-f182.google.com (mail-vk1-f182.google.com [209.85.221.182]) by sourceware.org (Postfix) with ESMTPS id 55DB63858CDA; Fri, 13 May 2022 12:26:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 55DB63858CDA Received: by mail-vk1-f182.google.com with SMTP id j14so4120658vkp.4; 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=p8ZmEYmcsLOuU+etTgJ4AMp9ghwgEtTd/VMdV3YFph4Kq7biyROSALFgbBuRIyQcWH qIKRAe5V9bUgiwu3G7ORGfzWfGA70ntsoI2bAp5ylIAcYZEpiJ6YZfRQ1OyYNfvb3USa UHsaeOXTyy5f9uyR+JR4KeOWeVMy7u7gp4sw1P5n6O/wWyFQ77KGZtFt1SmDsSQ7N3F/ gwzo90bva9D8IwihD1NEMtw+dRE1Be3i+KcbO5t8G7ihL+YtU2voldjzFmxdc/GyNIef KyjIz9qaB2Sy+CQE9ncDSz/ymec0pnf2+nOjWXOSjoYlsjxTuWzoeg96oW6tGm/1I8t0 hh5w== X-Gm-Message-State: AOAM530hkmw02SBt4eKhHWHovRsG/kBsJmUGbNit+R1xkjx5yeRZ9Idn PC01xc4aF3H79DtwIN83d3ZP2DxXpd6EEmcY X-Google-Smtp-Source: ABdhPJy+xSCck1P5MX8vQQUYyDntWccfImHoTLa3Q63aYt34XqE+Gh0b4KBNc6W8Pu2kElpzqNlwcQ== X-Received: by 2002:a1f:256:0:b0:34d:5edd:8ab8 with SMTP id 83-20020a1f0256000000b0034d5edd8ab8mr2144528vkc.2.1652444816612; Fri, 13 May 2022 05:26:56 -0700 (PDT) Received: from mail-vs1-f47.google.com (mail-vs1-f47.google.com. [209.85.217.47]) by smtp.gmail.com with ESMTPSA id 66-20020a1f1845000000b0034e6f1fd057sm258931vky.33.2022.05.13.05.26.56 (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-f47.google.com with SMTP id b7so3859633vsq.1; 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=-3.7 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: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils 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