From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x531.google.com (mail-ed1-x531.google.com [IPv6:2a00:1450:4864:20::531]) by sourceware.org (Postfix) with ESMTPS id D49AE385DC23 for ; Fri, 2 Jul 2021 07:39:10 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org D49AE385DC23 Received: by mail-ed1-x531.google.com with SMTP id t3so11932844edt.12 for ; Fri, 02 Jul 2021 00:39:10 -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:cc; bh=DOwFwvUThBI/rq61tHLcuvUTvwR9FxnuL4v4y2hSy2k=; b=f8ydWT2hoCGNCAPCzVN3FotsBjzps0TeSE9yqqJbibaHCMVzGSyscOEhXi51B7gVY1 SEz3kvXjkwrNvuHAhVvHjet+V/D+OC1fUUMQeTtDWeOOdnG09NC4jwwuPsuKx4/xUEyp 7D4RorwHr3QXltcSMupaosBqOwYxCJeRlAmsaLMRfuSXfim86IfYQfUMekw0EfVO3PSu OuVLS6SIb5RSlpqAFdj01d516IiNa0jjhuq113vek6Knr1kc10T1Z3acimAKX3pGBT+O M7kwUhpaXVoNrCjtkvu2eW+XtS6KmkZlTWkkoC/VRYO57dNMIEmpkdm+t/0lpSrdXzhW WpwQ== X-Gm-Message-State: AOAM531iBfYsLvPHo/DQHYT59mvIGM060Z3nq+nyzvu5ILYPQXNjh3d1 isIRCKAyj8i7WU0x+iUah3yjiuSJGQBnuRQce/g= X-Google-Smtp-Source: ABdhPJzmSFuh5VKBrl3Zp9G+Nm6iXIIGzGZmwdKQUH9Kn5j2uGBLLQ77WsvshagyQwcyxF/JHF4tZlRuUG6l7XFy+H4= X-Received: by 2002:a05:6402:326:: with SMTP id q6mr3359217edw.248.1625211549973; Fri, 02 Jul 2021 00:39:09 -0700 (PDT) MIME-Version: 1.0 References: <20210701061648.9447-1-hongtao.liu@intel.com> <20210701061648.9447-57-hongtao.liu@intel.com> In-Reply-To: From: Richard Biener Date: Fri, 2 Jul 2021 09:38:59 +0200 Message-ID: Subject: Re: [PATCH 56/62] AVX512FP16: Optimize (_Float16) sqrtf ((float) f16) to sqrtf16 (f16). To: Joseph Myers Cc: Hongtao Liu , Jakub Jelinek , liuhongt , GCC Patches Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) 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, 02 Jul 2021 07:39:12 -0000 On Thu, Jul 1, 2021 at 11:49 PM Joseph Myers wrote: > > On Thu, 1 Jul 2021, Richard Biener via Gcc-patches wrote: > > > > C++ FE doesn't support _FLoat16, and the place float/double are > > > handled is in convert.c(which is GENERIC?), that's why I decided to do > > > it in the backend. > > I think there ought to be a preliminary patch series adding whatever > _FloatN support is relevant to the C++ front end - covering at least those > types that have modes different from float / double / long double, even if > you don't cover all the _FloatN / _FloatNx types (e.g. _Float32 as > distinct from float), and ensuring the corresponding constant suffixes are > also accepted in C++ in whatever way makes sense for that language. (As I > noted in bug 85518, there are ICEs in name mangling when such types escape > into C++ code at present.) > > When this was discussed on the gcc list in March, Jonathan Wakely at least > supported making _Float16 available in C++ > > , even if no C++ > front-end maintainers contributed to that discussion. Agreed. > > Yes, but we can easily add a pattern to match.pd, sth like > > > > (for sq (SQRT) > > (simplify > > (convert (sq@1 (convert @0))) > > (if (types_match (type, TREE_TYPE (@0)) > > && TYPE_PRECISION (TREE_TYPE (@1)) > TYPE_PRECISION (TREE_TYPE (@0)) > > (With a more complicated precision condition, see convert.c for details.) > > -- > Joseph S. Myers > joseph@codesourcery.com