From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-x633.google.com (mail-pl1-x633.google.com [IPv6:2607:f8b0:4864:20::633]) by sourceware.org (Postfix) with ESMTPS id 098E33858D20 for ; Sat, 18 May 2024 19:41:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 098E33858D20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 098E33858D20 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::633 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716061314; cv=none; b=vX85yTvJj0pKkuLScGb+aFlGuBNZ63XZqMNpStvOQdFmoBpWNo4ueJ8Kvl5JGjFWvF8ht601boJVTyKbzzDpoJn6dXNzRci/xq9qE2DJrTF3obAn3mdKxj7WNUL3TbJqhqxYGzBokVdie2j4iFJ+tOItCpjYguYLvges9dxkMX8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716061314; c=relaxed/simple; bh=LnlXtB+5gu067rLyf5vd/Voe4ovqnbKtvyb+8hQ/ZV0=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=nt4lmFboASW+asvkExrWj2mzM5xecfIDrE4ml7CeRXn+lYD4xGcb/JGt59bzOtO9c6Vi8zoZieh2VowhrBvwm/BKD8Sm0Z7Q0gfT2nUq8vDIhJDnD5ZruD5qyEg89Ls4V8P8qEa+XtJ4j/NjFmi44x4KCTItUXy7m/VjhTUO3wE= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-1ed835f3c3cso44934565ad.3 for ; Sat, 18 May 2024 12:41:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1716061311; x=1716666111; darn=gcc.gnu.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ShIxeD7OiIfcLuvJCqMdfcbJ3UVELmpM9zsVEqmzdp4=; b=HE3D+KEk3B8nOOr8o0NJT5NmuO8eFHrzwpbHLe79+T3QJ5FJaWQBE1ZY7o7afGrPxC Y63LVIQhiXMe/Nmw20uV693jkMGxJT+rNtRsnRMDsC7mUXlW66BbU2g2Z0GXSAiqRmyd G9zpOvmvoo3zRbi9B2bUzhM21B5oTLIde5R5nOA27nKG+Fr9Jk3eO1zyYTQtI2w8cufo cTmaluRFyG9Hk1cg8brkBtz2wYsNcm6iGGv2KD3YmokRT7WfPu8aJvCGfFtCazFWMemC c9JJZHu4kAVGRdZszm/isSIY5DNHcVa0zQYloSsCO1imiJZysKrJTpOlQJXsnIuHWmeF ZjTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716061311; x=1716666111; h=content-transfer-encoding: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=ShIxeD7OiIfcLuvJCqMdfcbJ3UVELmpM9zsVEqmzdp4=; b=KjQwNe/pxheAK4MhH6S8X1XcbrT+POPj+HB41wRHzTALtQRpsJ0Af3SqgYNaVxbGfg nrB6Ls9kMZjKrS5szhFqrxJhlcvluJGbfEW/vt6VwlYL+ZEbcFmFs1LZ+4l29IDhBojo KSQmAkYH/JxE2cE4/lLMhkbFSV6qOqWb6EBTgaa+FmX/IZOVHqf3xTvrqSoRfjljHKSr DvZ+GtarO4Mi/0unKo6ibDD06rjosKSwu4iWMxU/p4R4OfxN1lcx4CiLvgcfHVQFsAa7 ugUNovBJzVK/6/T00poM+QI740yoDnFLpbx5Hk292giNxo3vtPTmG6l2UOfYoMpypTCF Sn2A== X-Gm-Message-State: AOJu0YzDHXLutCsSUQMC+hXmhxOZIGpiqYwf5eGYI1+5kVJZpK7Ylj3H IaK+W2ZHqtcdPXzn1SgDsAjX7KsjYz8doFiLVlrKI8DIOkJ0/bq6VVkC+b6I7iOvzx6m0gwo2Aj 4teyRqw6Gu8Azr1tCNlcOAD9s9FdbZWPe X-Google-Smtp-Source: AGHT+IGDlEuPLboOzG0Frw7iszuCbqN1rXHrkJvbVqIIbAleMyfVtd3Fd5O2Xqstl7+rY8El64HVn9vzIU1freO2dIM= X-Received: by 2002:a05:6a21:9207:b0:1af:fbab:cfba with SMTP id adf61e73a8af0-1affbabd1e5mr19253451637.27.1716061310970; Sat, 18 May 2024 12:41:50 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Andrew Pinski Date: Sat, 18 May 2024 12:41:39 -0700 Message-ID: Subject: Re: [PATCH] Optab: add isnormal_optab for __builtin_isnormal To: HAO CHEN GUI Cc: gcc-patches , Segher Boessenkool , David , "Kewen.Lin" , Peter Bergner Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-7.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,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: On Fri, Apr 12, 2024 at 1:10=E2=80=AFAM HAO CHEN GUI wrote: > > Hi, > This patch adds an optab for __builtin_isnormal. The normal check can b= e > implemented on rs6000 by a single instruction. It needs an optab to be > expanded to the certain sequence of instructions. > > The subsequent patches will implement the expand on rs6000. > > Bootstrapped and tested on x86 and powerpc64-linux BE and LE with no > regressions. Is this OK for next stage-1? This is missing adding documentation for the new optab. It should be documented in md.texi under `Standard Pattern Names For Generation` section. Thanks, Andrew > > Thanks > Gui Haochen > ChangeLog > optab: Add isnormal_optab for isnormal builtin > > gcc/ > * builtins.cc (interclass_mathfn_icode): Set optab to isnormal_op= tab > for isnormal builtin. > * optabs.def (isnormal_optab): New. > > patch.diff > diff --git a/gcc/builtins.cc b/gcc/builtins.cc > index 3174f52ebe8..defb39de95f 100644 > --- a/gcc/builtins.cc > +++ b/gcc/builtins.cc > @@ -2462,6 +2462,7 @@ interclass_mathfn_icode (tree arg, tree fndecl) > case BUILT_IN_ISFINITE: > builtin_optab =3D isfinite_optab; break; > case BUILT_IN_ISNORMAL: > + builtin_optab =3D isnormal_optab; break; > CASE_FLT_FN (BUILT_IN_FINITE): > case BUILT_IN_FINITED32: > case BUILT_IN_FINITED64: > diff --git a/gcc/optabs.def b/gcc/optabs.def > index dcd77315c2a..3c401fc0b4c 100644 > --- a/gcc/optabs.def > +++ b/gcc/optabs.def > @@ -353,6 +353,7 @@ OPTAB_D (hypot_optab, "hypot$a3") > OPTAB_D (ilogb_optab, "ilogb$a2") > OPTAB_D (isinf_optab, "isinf$a2") > OPTAB_D (isfinite_optab, "isfinite$a2") > +OPTAB_D (isnormal_optab, "isnormal$a2") > OPTAB_D (issignaling_optab, "issignaling$a2") > OPTAB_D (ldexp_optab, "ldexp$a3") > OPTAB_D (log10_optab, "log10$a2")