From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-vs1-xe2a.google.com (mail-vs1-xe2a.google.com [IPv6:2607:f8b0:4864:20::e2a]) by sourceware.org (Postfix) with ESMTPS id C8114386180D for ; Thu, 15 Feb 2024 05:08:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C8114386180D Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=cs.washington.edu Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=cs.washington.edu ARC-Filter: OpenARC Filter v1.0.0 sourceware.org C8114386180D Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::e2a ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1707973689; cv=none; b=VP/Q3dsEhKXKlYOcYQOpxgKzEYj7/Me+tx5A8rJquEGkFUOMwXmMiu5mxPCDHNbpQEb0TQnJKr0UWNvx+KW4oDZv8VU34X3pBdZXf8yAfILanOFoCy5x9JrLfrTYtyz4k+AO79TJS50fq5v7GeUPlYgkQVHsco6N//S4ANynBm4= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1707973689; c=relaxed/simple; bh=x4vmdTmz6BpQav6IDdPKj0jnXm0r8uILq6yqEi3WPnI=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=V0PwO024BFYTiQkjslXVdMqT0vH6g0evnszE7Mb0g68ObicX492IZVj0sRAWe+ckV6yuqKohJvPyIW9Z0PBiBpbnduM19+5ARgKNimuOExhRueJr+VxajSoBNthHdPdRFQd07VZT6x+z0BmdMsiMEjx9DCOAFWec1Hz9jcd1Q6s= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-vs1-xe2a.google.com with SMTP id ada2fe7eead31-4676a37e2c4so171028137.1 for ; Wed, 14 Feb 2024 21:08:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.washington.edu; s=goo201206; t=1707973685; x=1708578485; 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=Ns/vdeisLchddi28HCpMhNqa96EjOuq88ofVpbr4l18=; b=hpwIyfkpbGv//GuGP709l0I89GTHleLcklvjrpMPwofIu6QwUeJ13grPnGtftNlhBe X2HgUHeSTRCfhWzbvhBWvCKRC0mPBDFIPKMd69tMR7pHH/8Es1MiM44e/K0pPp5tKCp3 Xa6Z7UvQ0qQv7XjNIw1SoOf+9cz7YG8ipCMTo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707973685; x=1708578485; 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=Ns/vdeisLchddi28HCpMhNqa96EjOuq88ofVpbr4l18=; b=ZeiCKHpwUO5xVfOW7xEnV5JJorth/bcFW8Z0FMCOCFM5Sg3ZI8vwxoTEWZbzlN4Qbl WaHu8dlfEA+Bul+OEQEYD+g9aDSSG7Dr7mTM5QP1nuwuR6BBTG0g7N84qkHxraUEf9M3 hzlvad7JUsi3F+JzegTjL5u2UcGl/SkMGAdrVzmjM5pARYuuX5IN7JyQmDfJ4yYyYDfa /P+//nIyZ5GKiqz/kXluqnQtD8cVgfyJVCj7oRaRx9IaELf6yOW0pffZY03imXiAMrh0 o2iB0/XOt3PXkbu7xgwsCOKX+qHLPGq7GOabM86L+I25fc1he76gSqH55C6Fy9ZBVs/l gjow== X-Forwarded-Encrypted: i=1; AJvYcCWAlwUq9Rtk3DlzzS796iZFAdHssMxHpQeEEj19Y+IwuE2IRKdgXbG0nqhg8KIIcktk8aWDB9tqoaGEr6+RMhVnGW4fVGY= X-Gm-Message-State: AOJu0YzP+7JOhq6gvrJowuAfCa0QrPSub5MyhPpAneYRJXsmYC4k9nT8 vmlHuMf8LnEZPZsRQqMRbK6pY8j0mO5L2ZReOAgNFsqgJgOyT/QXnavgJaYM8MpTf2Exi9QVJuj zrGK0k7i1rhvzn/Xn18uC0Y9Fhx25HYGRcNzPdiwnh82B3Cs= X-Google-Smtp-Source: AGHT+IEiCzjZ2Lv9NxkdXk4C/zYurzqV/tHl75T0RLqSN2QLTEVlz2ZshxlUvzMHpa0GtBfSwgcNCUS8MGWf8/RY3p0= X-Received: by 2002:a05:6102:162c:b0:46d:16fd:e8ef with SMTP id cu44-20020a056102162c00b0046d16fde8efmr1026605vsb.10.1707973685085; Wed, 14 Feb 2024 21:08:05 -0800 (PST) MIME-Version: 1.0 References: <20231223220432.712093-1-kmatsui@gcc.gnu.org> <20240106050754.3054782-1-kmatsui@gcc.gnu.org> In-Reply-To: <20240106050754.3054782-1-kmatsui@gcc.gnu.org> From: Ken Matsui Date: Wed, 14 Feb 2024 21:07:29 -0800 Message-ID: Subject: PING: [PATCH v3 0/8] Optimize more type traits To: Ken Matsui Cc: gcc-patches , "libstdc++" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-5.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE 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: IIRC, all libstdc++ patches were already reviewed. It would be great if gcc patches were reviewed as well. Thank you for your time. Sincerely, Ken Matsui On Fri, Jan 5, 2024 at 9:08=E2=80=AFPM Ken Matsui wro= te: > > Changes in v3: > > - Rebased on top of master. > - Fixed __is_pointer in cpp_type_traits.h. > > Changes in v2: > > - Removed testsuite_tr1.h includes from the testcases. > > --- > > This patch series implements __is_const, __is_volatile, __is_pointer, > and __is_unbounded_array built-in traits, which were isolated from my > previous patch series "Optimize type traits compilation performance" > because they contained performance regression. I confirmed that this > patch series does not cause any performance regression. The main reason > of the performance regression were the exhaustiveness of the benchmarks > and the instability of the benchmark results. Here are new benchmark > results: > > is_const: https://github.com/ken-matsui/gcc-bench/blob/main/is_const.md#s= at-dec-23-090605-am-pst-2023 > > time: -4.36603%, peak memory: -0.300891%, total memory: -0.247934% > > is_volatile_v: https://github.com/ken-matsui/gcc-bench/blob/main/is_volat= ile_v.md#sat-dec-23-091518-am-pst-2023 > > time: -4.06816%, peak memory: -0.609298%, total memory: -0.659134% > > is_pointer: https://github.com/ken-matsui/gcc-bench/blob/main/is_pointer.= md#sat-dec-23-124903-pm-pst-2023 > > time: -2.47124%, peak memory: -2.98207%, total memory: -4.0811% > > is_unbounded_array_v: https://github.com/ken-matsui/gcc-bench/blob/main/i= s_unbounded_array_v.md#sat-dec-23-010046-pm-pst-2023 > > time: -1.50025%, peak memory: -1.07386%, total memory: -2.32394% > > Ken Matsui (8): > c++: Implement __is_const built-in trait > libstdc++: Optimize std::is_const compilation performance > c++: Implement __is_volatile built-in trait > libstdc++: Optimize std::is_volatile compilation performance > c++: Implement __is_pointer built-in trait > libstdc++: Optimize std::is_pointer compilation performance > c++: Implement __is_unbounded_array built-in trait > libstdc++: Optimize std::is_unbounded_array compilation performance > > gcc/cp/constraint.cc | 12 +++ > gcc/cp/cp-trait.def | 4 + > gcc/cp/semantics.cc | 16 ++++ > gcc/testsuite/g++.dg/ext/has-builtin-1.C | 12 +++ > gcc/testsuite/g++.dg/ext/is_const.C | 20 +++++ > gcc/testsuite/g++.dg/ext/is_pointer.C | 51 +++++++++++++ > gcc/testsuite/g++.dg/ext/is_unbounded_array.C | 37 ++++++++++ > gcc/testsuite/g++.dg/ext/is_volatile.C | 20 +++++ > libstdc++-v3/include/bits/cpp_type_traits.h | 31 +++++++- > libstdc++-v3/include/std/type_traits | 73 +++++++++++++++++-- > 10 files changed, 267 insertions(+), 9 deletions(-) > create mode 100644 gcc/testsuite/g++.dg/ext/is_const.C > create mode 100644 gcc/testsuite/g++.dg/ext/is_pointer.C > create mode 100644 gcc/testsuite/g++.dg/ext/is_unbounded_array.C > create mode 100644 gcc/testsuite/g++.dg/ext/is_volatile.C > > -- > 2.43.0 >