From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id DEF68384DD8F for ; Mon, 12 Dec 2022 22:33:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org DEF68384DD8F Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1670884382; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=RkzmS4LEIj3ha3Qt58tlayc11fh61Ee8yGUXSlgaN90=; b=V3g24BvQHU0XyKPLWx0WeqyvzIhUwEqq1+WGTk39vwFQLPncR3djLzHkp2LEO7ldT5W0OC A8wrxTdintGwI/+ZPQNC+pkV1K0XA83vhW84+08Du4hCCbJEo3SAJ2TryFgE98/YqzTc+a zimuQrO2gXmAFZMD+f7lHSFzz/qgsdU= Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-600-zjfDiBiQMhqWgpkIwRV99w-1; Mon, 12 Dec 2022 17:33:00 -0500 X-MC-Unique: zjfDiBiQMhqWgpkIwRV99w-1 Received: by mail-qt1-f197.google.com with SMTP id a13-20020ac8610d000000b003a8151cadebso4164863qtm.10 for ; Mon, 12 Dec 2022 14:33:00 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=RkzmS4LEIj3ha3Qt58tlayc11fh61Ee8yGUXSlgaN90=; b=yNIGznQm+H9XKPvJkTHuUpNsc/u/lktn7ELfSycswhZX4nk7RzXj3Vn0nx2pmXC9TX ZRyfsRdur5GxAP5yIP09IBRqKcSEx9u4LtuC0pReMHDfo988dL0pWEuI/lmD0IZEY4GS pGETNEwTIWFSg2MczlnXa83QuDXxJhaWdlgWPESHiPPHS9eapxpFzWXaMEtNr631cZhc wqxH55ZRtFEKbTXfiKRzPMNQnrh3tT5IU6+kXhm+KWNHz8/fLyLCn4eYZZSA6FYM9GrR d/QKomkeTdBEe8Hd7+C0J9CxEGH9StfzkfycwlcFtaxwgG6e6iFeN+T0jP9hoziaRRSW EiSA== X-Gm-Message-State: ANoB5pngmNQ+bauaZZ5YQV4LjSXsZlpCZGxCPYcVKIyX4ZhmsBwVQEuE hZDTgTeP2vb87KHT0wpXOGGyDscKB+jqE0Y4ZFMMKvYJ6jGxDW7FoMB08PQ2iIcPj56IZVtDj2O T62Zns3sQ0QtdvSYZYVdH3ruuh9Vp/K0= X-Received: by 2002:a37:4655:0:b0:6ee:6fb0:c4ef with SMTP id t82-20020a374655000000b006ee6fb0c4efmr65946400qka.173.1670884380181; Mon, 12 Dec 2022 14:33:00 -0800 (PST) X-Google-Smtp-Source: AA0mqf5XXx7BeylklSNij443akHJs40XNkrSSjwxZ6VbS7ySqzepyPERCnyMj97HDiHobOLYhqJ4d3ucijkqaLN1JC4= X-Received: by 2002:a37:4655:0:b0:6ee:6fb0:c4ef with SMTP id t82-20020a374655000000b006ee6fb0c4efmr65946398qka.173.1670884379912; Mon, 12 Dec 2022 14:32:59 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Jeff Johnston Date: Mon, 12 Dec 2022 17:32:49 -0500 Message-ID: Subject: Re: [PATCH] amdgcn: Add vectorized math routines To: Kwok Cheung Yeung Cc: newlib@sourceware.org X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/alternative; boundary="000000000000ed089505efa915b8" X-Spam-Status: No, score=-4.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE,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: --000000000000ed089505efa915b8 Content-Type: text/plain; charset="UTF-8" Hi Kwok, You need to provide headers in all the source and include files. Some files mention they are based on an existing newlib file. Those files should copy the license header over and not just have a reference (imagine if someone were to delete the original file or rename it). You are not allowed to change the licensing of a file you have based off of but you can add additional copyright info for your additions if you wish. As mentioned you need to add a license header for the new amdgcnmatch.h header file that is used everywhere. -- Jeff J. On Fri, Dec 2, 2022 at 5:04 PM Kwok Cheung Yeung wrote: > Hello > > This patch implements a set of vectorized math routines for use by the > auto-vectorizer in GCC for the AMD GCN architecture. The implementation > is located in libm/machine/amdgcn, and is based on the current set of > scalar math routines in Newlib, from libm/common, libm/math and > libm/mathfp (where the level of accuracy was deemed sufficient for our > purposes). I have ensured that the copyright notices from the original > were retained. > > The vectorized routines make extensive use of the GCC vector extensions > for C, some GCN-specific builtins in GCC, and a SIMD abstraction library > located in libm/machine/amdgcn/amdgcnmach.h. As the builtins are a > recent addition to GCC, I have added #if statements to skip compilation > of the routines that use them to ensure that Newlib will still build for > older versions of GCC. > > Versions for 2-lane vectors up to 64-lane vectors (in powers of 2) are > provided for all public functions. Versions with <64 lanes (which is the > 'natural' vector width for AMD GCN) are shims that call the 64-lane > version with the unused lanes masked out. > > Okay for inclusion into Newlib? > > Thanks > > Kwok Yeung --000000000000ed089505efa915b8--