public inbox for libstdc++@gcc.gnu.org
 help / color / mirror / Atom feed
From: Patrick Palka <ppalka@redhat.com>
To: Ken Matsui <kmatsui@gcc.gnu.org>
Cc: gcc-patches@gcc.gnu.org, libstdc++@gcc.gnu.org,
	 Patrick Palka <ppalka@redhat.com>
Subject: Re: [PATCH v22 02/31] c-family, c++: Look up built-in traits via identifier node
Date: Tue, 17 Oct 2023 13:04:39 -0400 (EDT)	[thread overview]
Message-ID: <7649bb7d-7573-717c-abd9-1d8a16c3305c@idea> (raw)
In-Reply-To: <20231017113822.677344-3-kmatsui@gcc.gnu.org>

On Tue, 17 Oct 2023, Ken Matsui wrote:

> Since RID_MAX soon reaches 255 and all built-in traits are used approximately
> once in a C++ translation unit, this patch removes all RID values for built-in
> traits and uses the identifier node to look up the specific trait.  Rather
> than holding traits as keywords, we set all trait identifiers as cik_trait,
> which is a new cp_identifier_kind.  As cik_reserved_for_udlit was unused and
> cp_identifier_kind is 3 bits, we replaced the unused field with the new
> cik_trait.  Also, the later patch handles a subsequent token to the built-in
> identifier so that we accept the use of non-function-like built-in trait
> identifiers.
> 
> gcc/c-family/ChangeLog:
> 
> 	* c-common.cc (c_common_reswords): Remove all mappings of
> 	built-in traits.
> 	* c-common.h (enum rid): Remove all RID values for built-in traits.
> 
> gcc/cp/ChangeLog:
> 
> 	* cp-objcp-common.cc (names_builtin_p): Remove all RID value
> 	cases for built-in traits.  Check for built-in traits via
> 	the new cik_trait kind.
> 	* cp-tree.h (enum cp_trait_kind): Set its underlying type to
> 	addr_space_t.
> 	(struct cp_trait): New struct to hold trait information.
> 	(cp_traits): New array to hold a mapping to all traits.
> 	(num_cp_traits): New variable to hold the size of cp_traits.
> 	(cik_reserved_for_udlit): Rename to ...
> 	(cik_trait): ... this.
> 	(IDENTIFIER_ANY_OP_P): Exclude cik_trait.
> 	(IDENTIFIER_TRAIT_P): New macro to detect cik_trait.
> 	* lex.cc (init_cp_traits): New function to set cik_trait and
> 	IDENTIFIER_CP_INDEX for all built-in trait identifiers.
> 	(cxx_init): Call init_cp_traits function.
> 	* parser.cc (cp_traits): Define its values, declared in cp-tree.h.
> 	(num_cp_traits): Define its value, declared in cp-tree.h.
> 	(cp_lexer_lookup_trait): New function to look up a
> 	built-in trait by IDENTIFIER_CP_INDEX.
> 	(cp_lexer_lookup_trait_expr): Likewise, look up an
> 	expression-yielding built-in trait.
> 	(cp_lexer_lookup_trait_type): Likewise, look up a type-yielding
> 	built-in trait.
> 	(cp_keyword_starts_decl_specifier_p): Remove all RID value cases
> 	for built-in traits.
> 	(cp_lexer_next_token_is_decl_specifier_keyword): Handle
> 	type-yielding built-in traits.
> 	(cp_parser_primary_expression): Remove all RID value cases for
> 	built-in traits.  Handle expression-yielding built-in traits.
> 	(cp_parser_trait): Handle cp_trait instead of enum rid.
> 	(cp_parser_simple_type_specifier): Remove all RID value cases
> 	for built-in traits.  Handle type-yielding built-in traits.
> 
> Co-authored-by: Patrick Palka <ppalka@redhat.com>
> Signed-off-by: Ken Matsui <kmatsui@gcc.gnu.org>
> ---
>  gcc/c-family/c-common.cc  |   7 ---
>  gcc/c-family/c-common.h   |   5 --
>  gcc/cp/cp-objcp-common.cc |   8 +--
>  gcc/cp/cp-tree.h          |  33 ++++++++---
>  gcc/cp/lex.cc             |  21 +++++++
>  gcc/cp/parser.cc          | 120 +++++++++++++++++++++++++-------------
>  6 files changed, 129 insertions(+), 65 deletions(-)
> 
> diff --git a/gcc/c-family/c-common.cc b/gcc/c-family/c-common.cc
> index f044db5b797..21fd333ef57 100644
> --- a/gcc/c-family/c-common.cc
> +++ b/gcc/c-family/c-common.cc
> @@ -508,13 +508,6 @@ const struct c_common_resword c_common_reswords[] =
>    { "wchar_t",		RID_WCHAR,	D_CXXONLY },
>    { "while",		RID_WHILE,	0 },
>  
> -#define DEFTRAIT(TCC, CODE, NAME, ARITY) \
> -  { NAME,		RID_##CODE,	D_CXXONLY },
> -#include "cp/cp-trait.def"
> -#undef DEFTRAIT
> -  /* An alias for __is_same.  */
> -  { "__is_same_as",	RID_IS_SAME,	D_CXXONLY },
> -
>    /* C++ transactional memory.  */
>    { "synchronized",	RID_SYNCHRONIZED, D_CXX_OBJC | D_TRANSMEM },
>    { "atomic_noexcept",	RID_ATOMIC_NOEXCEPT, D_CXXONLY | D_TRANSMEM },
> diff --git a/gcc/c-family/c-common.h b/gcc/c-family/c-common.h
> index 1fdba7ef3ea..051a442e0f4 100644
> --- a/gcc/c-family/c-common.h
> +++ b/gcc/c-family/c-common.h
> @@ -168,11 +168,6 @@ enum rid
>    RID_BUILTIN_LAUNDER,
>    RID_BUILTIN_BIT_CAST,
>  
> -#define DEFTRAIT(TCC, CODE, NAME, ARITY) \
> -  RID_##CODE,
> -#include "cp/cp-trait.def"
> -#undef DEFTRAIT
> -
>    /* C++11 */
>    RID_CONSTEXPR, RID_DECLTYPE, RID_NOEXCEPT, RID_NULLPTR, RID_STATIC_ASSERT,
>  
> diff --git a/gcc/cp/cp-objcp-common.cc b/gcc/cp/cp-objcp-common.cc
> index 93b027b80ce..b1adacfec07 100644
> --- a/gcc/cp/cp-objcp-common.cc
> +++ b/gcc/cp/cp-objcp-common.cc
> @@ -421,6 +421,10 @@ names_builtin_p (const char *name)
>  	}
>      }
>  
> +  /* Check for built-in traits.  */
> +  if (IDENTIFIER_TRAIT_P (id))
> +    return true;
> +
>    /* Also detect common reserved C++ words that aren't strictly built-in
>       functions.  */
>    switch (C_RID_CODE (id))
> @@ -434,10 +438,6 @@ names_builtin_p (const char *name)
>      case RID_BUILTIN_ASSOC_BARRIER:
>      case RID_BUILTIN_BIT_CAST:
>      case RID_OFFSETOF:
> -#define DEFTRAIT(TCC, CODE, NAME, ARITY) \
> -    case RID_##CODE:
> -#include "cp-trait.def"
> -#undef DEFTRAIT
>        return true;
>      default:
>        break;
> diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
> index efcd2de54e5..81a5c06a574 100644
> --- a/gcc/cp/cp-tree.h
> +++ b/gcc/cp/cp-tree.h
> @@ -1226,7 +1226,7 @@ enum cp_identifier_kind {
>    cik_simple_op = 4,	/* Non-assignment operator name.  */
>    cik_assign_op = 5,	/* An assignment operator name.  */
>    cik_conv_op = 6,	/* Conversion operator name.  */
> -  cik_reserved_for_udlit = 7,	/* Not yet in use  */
> +  cik_trait = 7,	/* Built-in trait name.  */
>    cik_max
>  };
>  
> @@ -1271,9 +1271,9 @@ enum cp_identifier_kind {
>      & IDENTIFIER_KIND_BIT_0 (NODE))
>  
>  /* True if this identifier is for any operator name (including
> -   conversions).  Value 4, 5, 6 or 7.  */
> +   conversions).  Value 4, 5, or 6.  */
>  #define IDENTIFIER_ANY_OP_P(NODE)		\
> -  (IDENTIFIER_KIND_BIT_2 (NODE))
> +  (IDENTIFIER_KIND_BIT_2 (NODE) && !IDENTIFIER_TRAIT_P (NODE))
>  
>  /* True if this identifier is for an overloaded operator. Values 4, 5.  */
>  #define IDENTIFIER_OVL_OP_P(NODE)		\
> @@ -1286,12 +1286,18 @@ enum cp_identifier_kind {
>     & IDENTIFIER_KIND_BIT_0 (NODE))
>  
>  /* True if this identifier is the name of a type-conversion
> -   operator.  Value 7.  */
> +   operator.  Value 6.  */
>  #define IDENTIFIER_CONV_OP_P(NODE)		\
>    (IDENTIFIER_ANY_OP_P (NODE)			\
>     & IDENTIFIER_KIND_BIT_1 (NODE)		\
>     & (!IDENTIFIER_KIND_BIT_0 (NODE)))
>  
> +/* True if this identifier is the name of a built-in trait.  */
> +#define IDENTIFIER_TRAIT_P(NODE)		\
> +  (IDENTIFIER_KIND_BIT_0 (NODE)			\
> +   && IDENTIFIER_KIND_BIT_1 (NODE)		\
> +   && IDENTIFIER_KIND_BIT_2 (NODE))
> +
>  /* True if this identifier is a new or delete operator.  */
>  #define IDENTIFIER_NEWDEL_OP_P(NODE)		\
>    (IDENTIFIER_OVL_OP_P (NODE)			\
> @@ -1375,16 +1381,27 @@ struct GTY (()) tree_argument_pack_select {
>    int index;
>  };
>  
> -/* The different kinds of traits that we encounter.  */
> -
> -enum cp_trait_kind
> -{
> +/* The different kinds of traits that we encounter.  The size is limited to
> +   addr_space_t since a trait is looked up by IDENTIFIER_CP_INDEX.  */
> +enum cp_trait_kind : addr_space_t {
>  #define DEFTRAIT(TCC, CODE, NAME, ARITY) \
>    CPTK_##CODE,
>  #include "cp-trait.def"
>  #undef DEFTRAIT
>  };
>  
> +/* The trait type.  */
> +struct cp_trait {
> +  const char *name;
> +  cp_trait_kind kind;
> +  short arity;
> +  bool type;
> +};
> +
> +/* The trait table.  */

Let's mention that this table is indexed by cp_trait_kind.

> +extern const struct cp_trait cp_traits[];
> +extern const addr_space_t num_cp_traits;
> +
>  /* The types that we are processing.  */
>  #define TRAIT_EXPR_TYPE1(NODE) \
>    (((struct tree_trait_expr *)TRAIT_EXPR_CHECK (NODE))->type1)
> diff --git a/gcc/cp/lex.cc b/gcc/cp/lex.cc
> index 64bcfb18196..872ca970545 100644
> --- a/gcc/cp/lex.cc
> +++ b/gcc/cp/lex.cc
> @@ -35,6 +35,7 @@ along with GCC; see the file COPYING3.  If not see
>  #include "langhooks.h"
>  
>  static int interface_strcmp (const char *);
> +static void init_cp_traits (void);
>  static void init_cp_pragma (void);
>  
>  static tree parse_strconst_pragma (const char *, int);
> @@ -283,6 +284,25 @@ init_reswords (void)
>      }
>  }
>  
> +/* Initialize the C++ traits.  */
> +static void
> +init_cp_traits (void)
> +{
> +  tree id;
> +
> +  for (unsigned int i = 0; i < num_cp_traits; ++i)
> +    {
> +      id = get_identifier (cp_traits[i].name);
> +      IDENTIFIER_CP_INDEX (id) = cp_traits[i].kind;
> +      set_identifier_kind (id, cik_trait);
> +    }
> +
> +  /* An alias for __is_same.  */
> +  id = get_identifier ("__is_same_as");
> +  IDENTIFIER_CP_INDEX (id) = CPTK_IS_SAME;
> +  set_identifier_kind (id, cik_trait);
> +}
> +
>  static void
>  init_cp_pragma (void)
>  {
> @@ -324,6 +344,7 @@ cxx_init (void)
>    input_location = BUILTINS_LOCATION;
>  
>    init_reswords ();
> +  init_cp_traits ();
>    init_tree ();
>    init_cp_semantics ();
>    init_operators ();
> diff --git a/gcc/cp/parser.cc b/gcc/cp/parser.cc
> index 59b9852895e..ece238c2072 100644
> --- a/gcc/cp/parser.cc
> +++ b/gcc/cp/parser.cc
> @@ -246,6 +246,12 @@ static void cp_lexer_start_debugging
>    (cp_lexer *) ATTRIBUTE_UNUSED;
>  static void cp_lexer_stop_debugging
>    (cp_lexer *) ATTRIBUTE_UNUSED;
> +static const cp_trait *cp_lexer_lookup_trait
> +  (const cp_token *);
> +static const cp_trait *cp_lexer_lookup_trait_expr
> +  (const cp_token *);
> +static const cp_trait *cp_lexer_lookup_trait_type
> +  (const cp_token *);
>  
>  static cp_token_cache *cp_token_cache_new
>    (cp_token *, cp_token *);
> @@ -279,6 +285,21 @@ static FILE *cp_lexer_debug_stream;
>     sizeof, typeof, or alignof.  */
>  int cp_unevaluated_operand;
>  
> +/* The trait table, declared in cp-tree.h.  */
> +const cp_trait cp_traits[] =
> +{
> +#define DEFTRAIT(TCC, CODE, NAME, ARITY) \
> +  { NAME, CPTK_##CODE, ARITY, (TCC == tcc_type) },
> +#include "cp-trait.def"
> +#undef DEFTRAIT
> +};
> +const addr_space_t num_cp_traits = ARRAY_SIZE (cp_traits);

Let's move the definition of cp_traits to lex.cc near the definition of
the similar ovl_op_info table.  I think we can in turn get rid of
num_cp_traits since the size of the array will be statically known in
lex.cc where the loop over it resides.

Otherwise this patch series looks good to me.  (Since only this patch
needs changes, feel free to send the new version as a reply to this
thread via git send-email's --in-reply-to flag instead of resending the
entire series.)

> +
> +/* The trait table cannot have more than 255 (addr_space_t) entries since
> +   the index is retrieved through IDENTIFIER_CP_INDEX.  */
> +static_assert(num_cp_traits <= 255,
> +              "cp_traits array cannot have more than 255 entries");
> +
>  /* Dump up to NUM tokens in BUFFER to FILE starting with token
>     START_TOKEN.  If START_TOKEN is NULL, the dump starts with the
>     first token in BUFFER.  If NUM is 0, dump all the tokens.  If
> @@ -1167,12 +1188,6 @@ cp_keyword_starts_decl_specifier_p (enum rid keyword)
>      case RID_CONSTEVAL:
>        return true;
>  
> -#define DEFTRAIT_TYPE(CODE, NAME, ARITY) \
> -    case RID_##CODE:
> -#include "cp-trait.def"
> -#undef DEFTRAIT_TYPE
> -      return true;
> -
>      default:
>        if (keyword >= RID_FIRST_INT_N
>  	  && keyword < RID_FIRST_INT_N + NUM_INT_N_ENTS
> @@ -1182,6 +1197,44 @@ cp_keyword_starts_decl_specifier_p (enum rid keyword)
>      }
>  }
>  
> +/* Look ups the corresponding built-in trait if a given token is
> +   a built-in trait.  Otherwise, returns nullptr.  */
> +
> +static const cp_trait *
> +cp_lexer_lookup_trait (const cp_token *token)
> +{
> +  if (token->type == CPP_NAME && IDENTIFIER_TRAIT_P (token->u.value))
> +    return &cp_traits[IDENTIFIER_CP_INDEX (token->u.value)];
> +
> +  return nullptr;
> +}
> +
> +/* Similarly, but only if the token is an expression-yielding
> +   built-in trait.  */
> +
> +static const cp_trait *
> +cp_lexer_lookup_trait_expr (const cp_token *token)
> +{
> +  const cp_trait *trait = cp_lexer_lookup_trait (token);
> +  if (trait && !trait->type)
> +    return trait;
> +
> +  return nullptr;
> +}
> +
> +/* Similarly, but only if the token is a type-yielding
> +   built-in trait.  */
> +
> +static const cp_trait *
> +cp_lexer_lookup_trait_type (const cp_token *token)
> +{
> +  const cp_trait *trait = cp_lexer_lookup_trait (token);
> +  if (trait && trait->type)
> +    return trait;
> +
> +  return nullptr;
> +}
> +
>  /* Return true if the next token is a keyword for a decl-specifier.  */
>  
>  static bool
> @@ -1190,6 +1243,8 @@ cp_lexer_next_token_is_decl_specifier_keyword (cp_lexer *lexer)
>    cp_token *token;
>  
>    token = cp_lexer_peek_token (lexer);
> +  if (cp_lexer_lookup_trait_type (token))
> +    return true;
>    return cp_keyword_starts_decl_specifier_p (token->keyword);
>  }
>  
> @@ -2854,7 +2909,7 @@ static void cp_parser_late_parsing_default_args
>  static tree cp_parser_sizeof_operand
>    (cp_parser *, enum rid);
>  static cp_expr cp_parser_trait
> -  (cp_parser *, enum rid);
> +  (cp_parser *, const cp_trait *);
>  static bool cp_parser_declares_only_class_p
>    (cp_parser *);
>  static void cp_parser_set_storage_class
> @@ -6029,12 +6084,6 @@ cp_parser_primary_expression (cp_parser *parser,
>  	case RID_OFFSETOF:
>  	  return cp_parser_builtin_offsetof (parser);
>  
> -#define DEFTRAIT_EXPR(CODE, NAME, ARITY) \
> -	case RID_##CODE:
> -#include "cp-trait.def"
> -#undef DEFTRAIT_EXPR
> -	  return cp_parser_trait (parser, token->keyword);
> -
>  	// C++ concepts
>  	case RID_REQUIRES:
>  	  return cp_parser_requires_expression (parser);
> @@ -6073,6 +6122,9 @@ cp_parser_primary_expression (cp_parser *parser,
>  	 `::' as the beginning of a qualified-id, or the "operator"
>  	 keyword.  */
>      case CPP_NAME:
> +      if (const cp_trait* trait = cp_lexer_lookup_trait_expr (token))
> +	return cp_parser_trait (parser, trait);
> +      /* FALLTHRU */
>      case CPP_SCOPE:
>      case CPP_TEMPLATE_ID:
>      case CPP_NESTED_NAME_SPECIFIER:
> @@ -11041,28 +11093,13 @@ cp_parser_builtin_offsetof (cp_parser *parser)
>  /* Parse a builtin trait expression or type.  */
>  
>  static cp_expr
> -cp_parser_trait (cp_parser* parser, enum rid keyword)
> +cp_parser_trait (cp_parser* parser, const cp_trait* trait)
>  {
> -  cp_trait_kind kind;
> +  const cp_trait_kind kind = trait->kind;
>    tree type1, type2 = NULL_TREE;
> -  bool binary = false;
> -  bool variadic = false;
> -  bool type = false;
> -
> -  switch (keyword)
> -    {
> -#define DEFTRAIT(TCC, CODE, NAME, ARITY) \
> -    case RID_##CODE:			 \
> -      kind = CPTK_##CODE;		 \
> -      binary = (ARITY == 2);		 \
> -      variadic = (ARITY == -1);		 \
> -      type = (TCC == tcc_type);		 \
> -      break;
> -#include "cp-trait.def"
> -#undef DEFTRAIT
> -    default:
> -      gcc_unreachable ();
> -    }
> +  const bool binary = (trait->arity == 2);
> +  const bool variadic = (trait->arity == -1);
> +  const bool type = trait->type;
>  
>    /* Get location of initial token.  */
>    location_t start_loc = cp_lexer_peek_token (parser->lexer)->location;
> @@ -20089,20 +20126,21 @@ cp_parser_simple_type_specifier (cp_parser* parser,
>  
>        return type;
>  
> -#define DEFTRAIT_TYPE(CODE, NAME, ARITY) \
> -    case RID_##CODE:
> -#include "cp-trait.def"
> -#undef DEFTRAIT_TYPE
> -      type = cp_parser_trait (parser, token->keyword);
> +    default:
> +      break;
> +    }
> +
> +  /* If token is a type-yielding built-in traits, parse it.  */
> +  const cp_trait* trait = cp_lexer_lookup_trait_type (token);
> +  if (trait)
> +    {
> +      type = cp_parser_trait (parser, trait);
>        if (decl_specs)
>  	cp_parser_set_decl_spec_type (decl_specs, type,
>  				      token,
>  				      /*type_definition_p=*/false);
>  
>        return type;
> -
> -    default:
> -      break;
>      }
>  
>    /* If token is an already-parsed decltype not followed by ::,
> -- 
> 2.42.0
> 
> 


  reply	other threads:[~2023-10-17 17:04 UTC|newest]

Thread overview: 623+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-14  6:42 [PATCH v11 00/40] Optimize type traits performance Ken Matsui
2023-09-14  6:42 ` [PATCH v11 01/40] c++: Sort built-in identifiers alphabetically Ken Matsui
2023-09-14  6:42 ` [PATCH v11 02/40] c++: Implement __is_const built-in trait Ken Matsui
2023-09-14  6:42 ` [PATCH v11 03/40] libstdc++: Optimize is_const trait performance Ken Matsui
2023-09-14  6:42 ` [PATCH v11 04/40] c++: Implement __is_volatile built-in trait Ken Matsui
2023-09-14  6:42 ` [PATCH v11 05/40] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-09-14  6:42 ` [PATCH v11 06/40] c++: Implement __is_array built-in trait Ken Matsui
2023-09-14  6:42 ` [PATCH v11 07/40] libstdc++: Optimize is_array trait performance Ken Matsui
2023-09-14  6:42 ` [PATCH v11 08/40] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-09-14  6:42 ` [PATCH v11 09/40] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-09-14  6:42 ` [PATCH v11 10/40] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-09-14  6:42 ` [PATCH v11 11/40] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-09-14  6:42 ` [PATCH v11 12/40] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-09-14  6:42 ` [PATCH v11 13/40] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-09-14  6:42 ` [PATCH v11 14/40] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-09-14  6:42 ` [PATCH v11 15/40] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-09-14  6:42 ` [PATCH v11 16/40] c, c++: Use 16 bits for all use of enum rid for more keyword space Ken Matsui
2023-09-14 17:53   ` Joseph Myers
2023-09-14 21:44     ` Ken Matsui
2023-09-15 23:26     ` Ken Matsui
2023-09-14  6:42 ` [PATCH v11 17/40] c-family: Fix C_SET_RID_CODE to handle 16-bit rid code correctly Ken Matsui
2023-09-14  6:42 ` [PATCH v11 18/40] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-09-14  6:42 ` [PATCH v11 19/40] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-09-14  6:42 ` [PATCH v11 20/40] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-09-14  6:43 ` [PATCH v11 21/40] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-09-14  6:43 ` [PATCH v11 22/40] c++: Implement __is_reference built-in trait Ken Matsui
2023-09-14  6:43 ` [PATCH v11 23/40] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-09-14  6:43 ` [PATCH v11 24/40] c++: Implement __is_function built-in trait Ken Matsui
2023-09-14  6:43 ` [PATCH v11 25/40] libstdc++: Optimize is_function trait performance Ken Matsui
2023-09-14  6:43 ` [PATCH v11 26/40] libstdc++: Optimize is_object " Ken Matsui
2023-09-14  6:43 ` [PATCH v11 27/40] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-09-14  6:43 ` [PATCH v11 28/40] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-09-14  6:43 ` [PATCH v11 29/40] c++, libstdc++: Implement __is_pointer built-in trait Ken Matsui
2023-09-14  6:43 ` [PATCH v11 30/40] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-09-14  6:43 ` [PATCH v11 31/40] c++, libstdc++: Implement __is_arithmetic built-in trait Ken Matsui
2023-09-14  6:43 ` [PATCH v11 32/40] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-09-14  6:43 ` [PATCH v11 33/40] libstdc++: Optimize is_fundamental " Ken Matsui
2023-09-14  6:43 ` [PATCH v11 34/40] libstdc++: Optimize is_compound " Ken Matsui
2023-09-14  6:43 ` [PATCH v11 35/40] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-09-14  6:43 ` [PATCH v11 36/40] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-09-14  6:43 ` [PATCH v11 37/40] c++, libstdc++: Implement __is_signed built-in trait Ken Matsui
2023-09-14  6:43 ` [PATCH v11 38/40] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-09-14  6:43 ` [PATCH v11 39/40] c++, libstdc++: Implement __is_scalar built-in trait Ken Matsui
2023-09-14  6:43 ` [PATCH v11 40/40] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-09-15  2:21 ` [PATCH v12 00/40] Optimize type traits performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 01/40] c++: Sort built-in identifiers alphabetically Ken Matsui
2023-09-15  2:21   ` [PATCH v12 02/40] c++: Implement __is_const built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 03/40] libstdc++: Optimize is_const trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 04/40] c++: Implement __is_volatile built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 05/40] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 06/40] c++: Implement __is_array built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 07/40] libstdc++: Optimize is_array trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 08/40] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 09/40] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 10/40] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 11/40] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 12/40] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 13/40] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 14/40] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 15/40] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 16/40] c, c++: Use 16 bits for all use of enum rid for more keyword space Ken Matsui
2023-09-15  2:21   ` [PATCH v12 17/40] c-family: Fix C_SET_RID_CODE to handle 16-bit rid code correctly Ken Matsui
2023-09-15  2:21   ` [PATCH v12 18/40] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 19/40] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 20/40] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 21/40] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 22/40] c++: Implement __is_reference built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 23/40] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 24/40] c++: Implement __is_function built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 25/40] libstdc++: Optimize is_function trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 26/40] libstdc++: Optimize is_object " Ken Matsui
2023-09-15  2:21   ` [PATCH v12 27/40] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 28/40] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 29/40] c++, libstdc++: Implement __is_pointer built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 30/40] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 31/40] c++, libstdc++: Implement __is_arithmetic built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 32/40] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 33/40] libstdc++: Optimize is_fundamental " Ken Matsui
2023-09-15  2:21   ` [PATCH v12 34/40] libstdc++: Optimize is_compound " Ken Matsui
2023-09-15  2:21   ` [PATCH v12 35/40] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 36/40] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 37/40] c++, libstdc++: Implement __is_signed built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 38/40] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-09-15  2:21   ` [PATCH v12 39/40] c++, libstdc++: Implement __is_scalar built-in trait Ken Matsui
2023-09-15  2:21   ` [PATCH v12 40/40] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-09-15  2:34   ` [PATCH v13 00/40] Optimize type traits performance Ken Matsui
2023-09-15  2:34     ` [PATCH v13 01/40] c++: Sort built-in identifiers alphabetically Ken Matsui
2023-09-15  2:34     ` [PATCH v13 02/40] c++: Implement __is_const built-in trait Ken Matsui
2023-09-15  2:34     ` [PATCH v13 03/40] libstdc++: Optimize is_const trait performance Ken Matsui
2023-09-15  2:34     ` [PATCH v13 04/40] c++: Implement __is_volatile built-in trait Ken Matsui
2023-09-15  2:34     ` [PATCH v13 05/40] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-09-15  2:34     ` [PATCH v13 06/40] c++: Implement __is_array built-in trait Ken Matsui
2023-09-15  2:34     ` [PATCH v13 07/40] libstdc++: Optimize is_array trait performance Ken Matsui
2023-09-15  2:34     ` [PATCH v13 08/40] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-09-15  2:34     ` [PATCH v13 09/40] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-09-15  2:34     ` [PATCH v13 10/40] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-09-15  2:34     ` [PATCH v13 11/40] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-09-15  2:34     ` [PATCH v13 12/40] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-09-15  2:34     ` [PATCH v13 13/40] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-09-15  2:34     ` [PATCH v13 14/40] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-09-15  2:34     ` [PATCH v13 15/40] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-09-15  2:34     ` [PATCH v13 16/40] c, c++: Use 16 bits for all use of enum rid for more keyword space Ken Matsui
2023-09-15 23:50       ` [PATCH v14 00/40] Optimize type traits performance Ken Matsui
2023-09-15 23:50         ` [PATCH v14 01/40] c++: Sort built-in identifiers alphabetically Ken Matsui
2023-09-15 23:50         ` [PATCH v14 02/40] c++: Implement __is_const built-in trait Ken Matsui
2023-09-15 23:50         ` [PATCH v14 03/40] libstdc++: Optimize is_const trait performance Ken Matsui
2023-09-15 23:50         ` [PATCH v14 04/40] c++: Implement __is_volatile built-in trait Ken Matsui
2023-09-15 23:50         ` [PATCH v14 05/40] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-09-15 23:50         ` [PATCH v14 06/40] c++: Implement __is_array built-in trait Ken Matsui
2023-09-15 23:50         ` [PATCH v14 07/40] libstdc++: Optimize is_array trait performance Ken Matsui
2023-09-15 23:50         ` [PATCH v14 08/40] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-09-15 23:50         ` [PATCH v14 09/40] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-09-15 23:50         ` [PATCH v14 10/40] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-09-15 23:50         ` [PATCH v14 11/40] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-09-15 23:50         ` [PATCH v14 12/40] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-09-15 23:50         ` [PATCH v14 13/40] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 14/40] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 15/40] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 16/40] c, c++: Use 16 bits for all use of enum rid for more keyword space Ken Matsui
2023-09-19 16:58           ` Jason Merrill
2023-09-19 23:05             ` Ken Matsui
2023-09-27 13:57               ` Jason Merrill
2023-10-09  5:03                 ` Ken Matsui
2023-09-15 23:51         ` [PATCH v14 17/40] c-family: Fix C_SET_RID_CODE to handle 16-bit rid code correctly Ken Matsui
2023-09-15 23:51         ` [PATCH v14 18/40] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 19/40] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 20/40] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 21/40] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 22/40] c++: Implement __is_reference built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 23/40] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 24/40] c++: Implement __is_function built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 25/40] libstdc++: Optimize is_function trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 26/40] libstdc++: Optimize is_object " Ken Matsui
2023-09-15 23:51         ` [PATCH v14 27/40] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 28/40] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 29/40] c++, libstdc++: Implement __is_pointer built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 30/40] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 31/40] c++, libstdc++: Implement __is_arithmetic built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 32/40] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 33/40] libstdc++: Optimize is_fundamental " Ken Matsui
2023-09-15 23:51         ` [PATCH v14 34/40] libstdc++: Optimize is_compound " Ken Matsui
2023-09-15 23:51         ` [PATCH v14 35/40] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 36/40] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 37/40] c++, libstdc++: Implement __is_signed built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 38/40] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-09-15 23:51         ` [PATCH v14 39/40] c++, libstdc++: Implement __is_scalar built-in trait Ken Matsui
2023-09-15 23:51         ` [PATCH v14 40/40] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-09-15  2:34     ` [PATCH v13 17/40] c-family: Fix C_SET_RID_CODE to handle 16-bit rid code correctly Ken Matsui
2023-09-15  2:34     ` [PATCH v13 18/40] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-09-15  2:34     ` [PATCH v13 19/40] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-09-15  2:35     ` [PATCH v13 20/40] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-09-15  2:35     ` [PATCH v13 21/40] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-09-15  2:35     ` [PATCH v13 22/40] c++: Implement __is_reference built-in trait Ken Matsui
2023-09-15  2:35     ` [PATCH v13 23/40] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-09-15  2:35     ` [PATCH v13 24/40] c++: Implement __is_function built-in trait Ken Matsui
2023-09-15  2:35     ` [PATCH v13 25/40] libstdc++: Optimize is_function trait performance Ken Matsui
2023-09-15  2:35     ` [PATCH v13 26/40] libstdc++: Optimize is_object " Ken Matsui
2023-09-15  2:35     ` [PATCH v13 27/40] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-09-15  2:35     ` [PATCH v13 28/40] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-09-15  2:35     ` [PATCH v13 29/40] c++, libstdc++: Implement __is_pointer built-in trait Ken Matsui
2023-09-15  2:35     ` [PATCH v13 30/40] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-09-15  2:35     ` [PATCH v13 31/40] c++, libstdc++: Implement __is_arithmetic built-in trait Ken Matsui
2023-09-15  2:35     ` [PATCH v13 32/40] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-09-15  2:35     ` [PATCH v13 33/40] libstdc++: Optimize is_fundamental " Ken Matsui
2023-09-15  2:35     ` [PATCH v13 34/40] libstdc++: Optimize is_compound " Ken Matsui
2023-09-15  2:35     ` [PATCH v13 35/40] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-09-15  2:35     ` [PATCH v13 36/40] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-09-15  2:35     ` [PATCH v13 37/40] c++, libstdc++: Implement __is_signed built-in trait Ken Matsui
2023-09-15  2:35     ` [PATCH v13 38/40] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-09-15  2:35     ` [PATCH v13 39/40] c++, libstdc++: Implement __is_scalar built-in trait Ken Matsui
2023-09-15  2:35     ` [PATCH v13 40/40] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-10-10  9:46     ` [PATCH v15 00/39] Optimize type traits performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 01/39] c++: Sort built-in identifiers alphabetically Ken Matsui
2023-10-10  9:46       ` [PATCH v15 02/39] c-family, c++: Look up traits through gperf instead of enum rid Ken Matsui
2023-10-10  9:46       ` [PATCH v15 03/39] c++: Implement __is_const built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 04/39] libstdc++: Optimize is_const trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 05/39] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 06/39] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 07/39] c++: Implement __is_array built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 08/39] libstdc++: Optimize is_array trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 09/39] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 10/39] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 11/39] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 12/39] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 13/39] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 14/39] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 15/39] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 16/39] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 17/39] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 18/39] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 19/39] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 20/39] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 21/39] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 22/39] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 23/39] c++: Implement __is_function built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 24/39] libstdc++: Optimize is_function trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 25/39] libstdc++: Optimize is_object " Ken Matsui
2023-10-10  9:46       ` [PATCH v15 26/39] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 27/39] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 28/39] c++, libstdc++: Implement __is_pointer built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 29/39] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 30/39] c++, libstdc++: Implement __is_arithmetic built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 31/39] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 32/39] libstdc++: Optimize is_fundamental " Ken Matsui
2023-10-10  9:46       ` [PATCH v15 33/39] libstdc++: Optimize is_compound " Ken Matsui
2023-10-10  9:46       ` [PATCH v15 34/39] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 35/39] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 36/39] c++, libstdc++: Implement __is_signed built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 37/39] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-10-10  9:46       ` [PATCH v15 38/39] c++, libstdc++: Implement __is_scalar built-in trait Ken Matsui
2023-10-10  9:46       ` [PATCH v15 39/39] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-10-10 22:09       ` [PATCH v16 00/39] Optimize type traits performance Ken Matsui
2023-10-10 22:09         ` [PATCH v16 01/39] c++: Sort built-in identifiers alphabetically Ken Matsui
2023-10-10 22:09         ` [PATCH v16 02/39] c-family, c++: Look up built-in traits through gperf Ken Matsui
2023-10-11 20:09           ` Patrick Palka
2023-10-11 21:34             ` Ken Matsui
2023-10-10 22:09         ` [PATCH v16 03/39] c++: Implement __is_const built-in trait Ken Matsui
2023-10-10 22:09         ` [PATCH v16 04/39] libstdc++: Optimize is_const trait performance Ken Matsui
2023-10-10 22:09         ` [PATCH v16 05/39] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-10 22:09         ` [PATCH v16 06/39] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-10-10 22:09         ` [PATCH v16 07/39] c++: Implement __is_array built-in trait Ken Matsui
2023-10-10 22:09         ` [PATCH v16 08/39] libstdc++: Optimize is_array trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 09/39] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 10/39] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 11/39] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 12/39] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 13/39] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 14/39] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 15/39] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 16/39] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 17/39] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 18/39] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 19/39] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 20/39] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 21/39] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 22/39] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 23/39] c++: Implement __is_function built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 24/39] libstdc++: Optimize is_function trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 25/39] libstdc++: Optimize is_object " Ken Matsui
2023-10-10 22:10         ` [PATCH v16 26/39] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 27/39] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 28/39] c++, libstdc++: Implement __is_pointer built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 29/39] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 30/39] c++, libstdc++: Implement __is_arithmetic built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 31/39] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 32/39] libstdc++: Optimize is_fundamental " Ken Matsui
2023-10-10 22:10         ` [PATCH v16 33/39] libstdc++: Optimize is_compound " Ken Matsui
2023-10-10 22:10         ` [PATCH v16 34/39] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 35/39] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 36/39] c++, libstdc++: Implement __is_signed built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 37/39] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-10-10 22:10         ` [PATCH v16 38/39] c++, libstdc++: Implement __is_scalar built-in trait Ken Matsui
2023-10-10 22:10         ` [PATCH v16 39/39] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-10-11 21:45         ` [PATCH v17 00/39] Optimize type traits performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 01/39] c++: Sort built-in traits alphabetically Ken Matsui
2023-10-11 21:45           ` [PATCH v17 02/39] c-family, c++: Look up built-in traits through gperf Ken Matsui
2023-10-12 17:02             ` Patrick Palka
2023-10-11 21:45           ` [PATCH v17 03/39] c++: Implement __is_const built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 04/39] libstdc++: Optimize is_const trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 05/39] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 06/39] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 07/39] c++: Implement __is_array built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 08/39] libstdc++: Optimize is_array trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 09/39] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 10/39] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 11/39] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 12/39] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 13/39] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 14/39] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 15/39] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 16/39] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 17/39] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 18/39] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 19/39] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 20/39] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 21/39] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-11 21:45           ` [PATCH v17 22/39] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-10-11 21:45           ` [PATCH v17 23/39] c++: Implement __is_function built-in trait Ken Matsui
2023-10-11 21:46           ` [PATCH v17 24/39] libstdc++: Optimize is_function trait performance Ken Matsui
2023-10-11 21:46           ` [PATCH v17 25/39] libstdc++: Optimize is_object " Ken Matsui
2023-10-11 21:46           ` [PATCH v17 26/39] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-11 21:46           ` [PATCH v17 27/39] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-10-11 21:46           ` [PATCH v17 28/39] c++, libstdc++: Implement __is_pointer built-in trait Ken Matsui
2023-10-11 21:46           ` [PATCH v17 29/39] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-10-11 21:46           ` [PATCH v17 30/39] c++, libstdc++: Implement __is_arithmetic built-in trait Ken Matsui
2023-10-11 21:46           ` [PATCH v17 31/39] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-10-11 21:46           ` [PATCH v17 32/39] libstdc++: Optimize is_fundamental " Ken Matsui
2023-10-11 21:46           ` [PATCH v17 33/39] libstdc++: Optimize is_compound " Ken Matsui
2023-10-11 21:46           ` [PATCH v17 34/39] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-10-11 21:46           ` [PATCH v17 35/39] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-10-11 21:46           ` [PATCH v17 36/39] c++, libstdc++: Implement __is_signed built-in trait Ken Matsui
2023-10-11 21:46           ` [PATCH v17 37/39] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-10-11 21:46           ` [PATCH v17 38/39] c++, libstdc++: Implement __is_scalar built-in trait Ken Matsui
2023-10-11 21:46           ` [PATCH v17 39/39] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-10-13 21:03           ` [PATCH v18 00/40] Optimize type traits performance Ken Matsui
2023-10-13 21:03             ` [PATCH v18 01/40] c++: Sort built-in traits alphabetically Ken Matsui
2023-10-13 21:03             ` [PATCH v18 02/40] c-family, c++: Look up built-in traits through gperf Ken Matsui
2023-10-13 21:03             ` [PATCH v18 03/40] c++: Accept the use of non-function-like built-in trait identifiers Ken Matsui
2023-10-13 21:04             ` [PATCH v18 04/40] c++: Implement __is_const built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 05/40] libstdc++: Optimize is_const trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 06/40] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 07/40] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 08/40] c++: Implement __is_array built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 09/40] libstdc++: Optimize is_array trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 10/40] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 11/40] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 12/40] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 13/40] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 14/40] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 15/40] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 16/40] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 17/40] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 18/40] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 19/40] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 20/40] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 21/40] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 22/40] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 23/40] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 24/40] c++: Implement __is_function built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 25/40] libstdc++: Optimize is_function trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 26/40] libstdc++: Optimize is_object " Ken Matsui
2023-10-13 21:04             ` [PATCH v18 27/40] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 28/40] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 29/40] c++: Implement __is_pointer built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 30/40] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 31/40] c++: Implement __is_arithmetic built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 32/40] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 33/40] libstdc++: Optimize is_fundamental " Ken Matsui
2023-10-13 21:04             ` [PATCH v18 34/40] libstdc++: Optimize is_compound " Ken Matsui
2023-10-13 21:04             ` [PATCH v18 35/40] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 36/40] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 37/40] c++: Implement __is_signed built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 38/40] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-10-13 21:04             ` [PATCH v18 39/40] c++: Implement __is_scalar built-in trait Ken Matsui
2023-10-13 21:04             ` [PATCH v18 40/40] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-10-13 22:37             ` [PATCH v19 00/40] Optimize type traits performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 01/40] c++: Sort built-in traits alphabetically Ken Matsui
2023-10-13 22:37               ` [PATCH v19 02/40] c-family, c++: Look up built-in traits through gperf Ken Matsui
2023-10-15 20:43                 ` Patrick Palka
2023-10-15 21:04                   ` Ken Matsui
2023-10-15 21:50                     ` Patrick Palka
2023-10-15 21:52                       ` Ken Matsui
2023-10-13 22:37               ` [PATCH v19 03/40] c++: Accept the use of built-in trait identifiers Ken Matsui
2023-10-13 22:37               ` [PATCH v19 04/40] c++: Implement __is_const built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 05/40] libstdc++: Optimize is_const trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 06/40] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 07/40] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 08/40] c++: Implement __is_array built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 09/40] libstdc++: Optimize is_array trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 10/40] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 11/40] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 12/40] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 13/40] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 14/40] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 15/40] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 16/40] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 17/40] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 18/40] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 19/40] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 20/40] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 21/40] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 22/40] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 23/40] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 24/40] c++: Implement __is_function built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 25/40] libstdc++: Optimize is_function trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 26/40] libstdc++: Optimize is_object " Ken Matsui
2023-10-13 22:37               ` [PATCH v19 27/40] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 28/40] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 29/40] c++: Implement __is_pointer built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 30/40] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 31/40] c++: Implement __is_arithmetic built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 32/40] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 33/40] libstdc++: Optimize is_fundamental " Ken Matsui
2023-10-13 22:37               ` [PATCH v19 34/40] libstdc++: Optimize is_compound " Ken Matsui
2023-10-13 22:37               ` [PATCH v19 35/40] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 36/40] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 37/40] c++: Implement __is_signed built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 38/40] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-10-13 22:37               ` [PATCH v19 39/40] c++: Implement __is_scalar built-in trait Ken Matsui
2023-10-13 22:37               ` [PATCH v19 40/40] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-10-16  0:09               ` [PATCH v20 00/40] Optimize type traits performance Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 01/40] c++: Sort built-in traits alphabetically Ken Matsui
2023-10-16 15:16                   ` Patrick Palka
2023-10-16 20:11                     ` Ken Matsui
2023-10-16 21:12                       ` Patrick Palka
2023-10-16 21:30                         ` Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 02/40] c-family, c++: Look up built-in traits via identifier node Ken Matsui
2023-10-16 14:55                   ` Patrick Palka
2023-10-16 19:57                     ` Ken Matsui
2023-10-16 21:06                       ` Patrick Palka
2023-10-16 21:27                         ` Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 03/40] c++: Accept the use of built-in trait identifiers Ken Matsui
2023-10-16 15:00                   ` Patrick Palka
2023-10-16  0:09                 ` [PATCH v20 04/40] c++: Implement __is_const built-in trait Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 05/40] libstdc++: Optimize is_const trait performance Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 06/40] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 07/40] libstdc++: Optimize is_volatile trait performance Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 08/40] c++: Implement __is_array built-in trait Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 09/40] libstdc++: Optimize is_array trait performance Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 10/40] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 11/40] libstdc++: Optimize is_unbounded_array trait performance Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 12/40] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 13/40] libstdc++: Optimize is_bounded_array trait performance Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 14/40] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-16  0:09                 ` [PATCH v20 15/40] libstdc++: Optimize is_scoped_enum trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 16/40] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 17/40] libstdc++: Optimize is_member_pointer trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 18/40] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 19/40] libstdc++: Optimize is_member_function_pointer trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 20/40] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 21/40] libstdc++: Optimize is_member_object_pointer trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 22/40] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 23/40] libstdc++: Optimize is_reference trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 24/40] c++: Implement __is_function built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 25/40] libstdc++: Optimize is_function trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 26/40] libstdc++: Optimize is_object " Ken Matsui
2023-10-16 18:04                   ` Patrick Palka
2023-10-16 20:26                     ` Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 27/40] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 28/40] libstdc++: Optimize remove_pointer trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 29/40] c++: Implement __is_pointer built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 30/40] libstdc++: Optimize is_pointer trait performance Ken Matsui
2023-10-16 16:36                   ` Patrick Palka
2023-10-16 20:22                     ` Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 31/40] c++: Implement __is_arithmetic built-in trait Ken Matsui
2023-10-16 17:16                   ` Patrick Palka
2023-10-16 20:25                     ` Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 32/40] libstdc++: Optimize is_arithmetic trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 33/40] libstdc++: Optimize is_fundamental " Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 34/40] libstdc++: Optimize is_compound " Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 35/40] c++: Implement __is_unsigned built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 36/40] libstdc++: Optimize is_unsigned trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 37/40] c++: Implement __is_signed built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 38/40] libstdc++: Optimize is_signed trait performance Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 39/40] c++: Implement __is_scalar built-in trait Ken Matsui
2023-10-16  0:10                 ` [PATCH v20 40/40] libstdc++: Optimize is_scalar trait performance Ken Matsui
2023-10-17 11:27                 ` [PATCH v21 00/30] Optimize type traits performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 01/30] c-family, c++: Look up built-in traits via identifier node Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 02/30] c++: Accept the use of built-in trait identifiers Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 03/30] c++: Implement __is_const built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 04/30] libstdc++: Optimize std::is_const compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 05/30] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 06/30] libstdc++: Optimize std::is_volatile compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 07/30] c++: Implement __is_array built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 08/30] libstdc++: Optimize std::is_array compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 09/30] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 10/30] libstdc++: Optimize std::is_unbounded_array compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 11/30] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 12/30] libstdc++: Optimize std::is_bounded_array compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 13/30] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 14/30] libstdc++: Optimize std::is_scoped_enum compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 15/30] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 16/30] libstdc++: Optimize std::is_member_pointer compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 17/30] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 18/30] libstdc++: Optimize std::is_member_function_pointer compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 19/30] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 20/30] libstdc++: Optimize std::is_member_object_pointer compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 21/30] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 22/30] libstdc++: Optimize std::is_reference compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 23/30] c++: Implement __is_function built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 24/30] libstdc++: Optimize std::is_function compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 25/30] c++: Implement __is_object built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 26/30] libstdc++: Optimize std::is_object compilation performance Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 27/30] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-17 11:27                   ` [PATCH v21 28/30] libstdc++: Optimize std::remove_pointer compilation performance Ken Matsui
2023-10-17 11:28                   ` [PATCH v21 29/30] c++: Implement __is_pointer built-in trait Ken Matsui
2023-10-17 11:28                   ` [PATCH v21 30/30] libstdc++: Optimize std::is_pointer compilation performance Ken Matsui
2023-10-17 11:36                   ` [PATCH v22 00/31] Optimize type traits performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 01/31] c++: Sort built-in traits alphabetically Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 02/31] c-family, c++: Look up built-in traits via identifier node Ken Matsui
2023-10-17 17:04                       ` Patrick Palka [this message]
2023-10-17 11:36                     ` [PATCH v22 03/31] c++: Accept the use of built-in trait identifiers Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 04/31] c++: Implement __is_const built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 05/31] libstdc++: Optimize std::is_const compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 06/31] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 07/31] libstdc++: Optimize std::is_volatile compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 08/31] c++: Implement __is_array built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 09/31] libstdc++: Optimize std::is_array compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 10/31] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 11/31] libstdc++: Optimize std::is_unbounded_array compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 12/31] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 13/31] libstdc++: Optimize std::is_bounded_array compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 14/31] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 15/31] libstdc++: Optimize std::is_scoped_enum compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 16/31] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 17/31] libstdc++: Optimize std::is_member_pointer compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 18/31] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 19/31] libstdc++: Optimize std::is_member_function_pointer compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 20/31] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 21/31] libstdc++: Optimize std::is_member_object_pointer compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 22/31] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 23/31] libstdc++: Optimize std::is_reference compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 24/31] c++: Implement __is_function built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 25/31] libstdc++: Optimize std::is_function compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 26/31] c++: Implement __is_object built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 27/31] libstdc++: Optimize std::is_object compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 28/31] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 29/31] libstdc++: Optimize std::remove_pointer compilation performance Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 30/31] c++: Implement __is_pointer built-in trait Ken Matsui
2023-10-17 11:36                     ` [PATCH v22 31/31] libstdc++: Optimize std::is_pointer compilation performance Ken Matsui
2023-10-20 13:53                     ` [PATCH v23 00/33] Optimize type traits performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 01/33] c++: Sort built-in traits alphabetically Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 02/33] c-family, c++: Look up built-in traits via identifier node Ken Matsui
2023-10-20 19:11                         ` Patrick Palka
2023-10-20 20:00                           ` Ken Matsui
2023-10-23 20:27                         ` Jason Merrill
2023-10-23 21:08                           ` Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 03/33] c++: Accept the use of built-in trait identifiers Ken Matsui
2023-10-23 20:36                         ` Jason Merrill
2023-10-23 21:08                           ` Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 04/33] c++: Implement __is_const built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 05/33] libstdc++: Optimize std::is_const compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 06/33] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 07/33] libstdc++: Optimize std::is_volatile compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 08/33] c++: Implement __is_array built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 09/33] libstdc++: Optimize std::is_array compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 10/33] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 11/33] libstdc++: Optimize std::is_unbounded_array compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 12/33] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 13/33] libstdc++: Optimize std::is_bounded_array compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 14/33] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 15/33] libstdc++: Optimize std::is_scoped_enum compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 16/33] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 17/33] libstdc++: Optimize std::is_member_pointer compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 18/33] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 19/33] libstdc++: Optimize std::is_member_function_pointer compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 20/33] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 21/33] libstdc++: Optimize std::is_member_object_pointer compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 22/33] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 23/33] libstdc++: Optimize std::is_reference compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 24/33] c++: Implement __is_function built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 25/33] libstdc++: Optimize std::is_function compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 26/33] c++: Implement __is_object built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 27/33] libstdc++: Optimize std::is_object compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 28/33] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 29/33] libstdc++: Optimize std::remove_pointer compilation performance Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 30/33] c++: Implement __is_pointer built-in trait Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 31/33] libstdc++: Optimize std::is_pointer compilation performance Ken Matsui
2023-10-22 12:06                         ` Ken Matsui
2023-10-23 17:00                           ` Patrick Palka
2023-10-23 17:12                             ` Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 32/33] c++: Implement __is_invocable built-in trait Ken Matsui
2023-10-20 21:29                         ` Patrick Palka
2023-10-20 21:31                           ` Patrick Palka
2023-10-20 21:37                             ` Patrick Palka
2023-10-23 21:23                               ` Jason Merrill
2024-02-20  1:35                                 ` Ken Matsui
2023-10-20 13:53                       ` [PATCH v23 33/33] libstdc++: Optimize std::is_invocable compilation performance Ken Matsui
2023-10-20 16:16                       ` [PATCH v24 00/33] Optimize type traits performance Ken Matsui
2023-10-20 16:17                         ` [PATCH v24 33/33] libstdc++: Optimize std::is_invocable compilation performance Ken Matsui
2023-10-23 17:04                           ` Patrick Palka
2023-10-23 17:14                             ` Ken Matsui
2023-10-23 17:38                               ` Patrick Palka
2023-10-23 17:47                                 ` Ken Matsui
2023-10-24  2:00                         ` [PATCH v25 00/33] Optimize type traits " Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 01/33] c++: Sort built-in traits alphabetically Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 02/33] c-family, c++: Look up built-in traits via identifier node Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 03/33] c++: Accept the use of built-in trait identifiers Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 04/33] c++: Implement __is_const built-in trait Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 05/33] libstdc++: Optimize std::is_const compilation performance Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 06/33] c++: Implement __is_volatile built-in trait Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 07/33] libstdc++: Optimize std::is_volatile compilation performance Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 08/33] c++: Implement __is_array built-in trait Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 09/33] libstdc++: Optimize std::is_array compilation performance Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 10/33] c++: Implement __is_unbounded_array built-in trait Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 11/33] libstdc++: Optimize std::is_unbounded_array compilation performance Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 12/33] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 13/33] libstdc++: Optimize std::is_bounded_array compilation performance Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 14/33] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 15/33] libstdc++: Optimize std::is_scoped_enum compilation performance Ken Matsui
2023-10-24  2:00                           ` [PATCH v25 16/33] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 17/33] libstdc++: Optimize std::is_member_pointer compilation performance Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 18/33] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 19/33] libstdc++: Optimize std::is_member_function_pointer compilation performance Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 20/33] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 21/33] libstdc++: Optimize std::is_member_object_pointer compilation performance Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 22/33] c++: Implement __is_reference built-in trait Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 23/33] libstdc++: Optimize std::is_reference compilation performance Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 24/33] c++: Implement __is_function built-in trait Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 25/33] libstdc++: Optimize std::is_function compilation performance Ken Matsui
2023-10-24 11:01                             ` Jonathan Wakely
2023-12-07  3:20                               ` Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 26/33] c++: Implement __is_object built-in trait Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 27/33] libstdc++: Optimize std::is_object compilation performance Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 28/33] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 29/33] libstdc++: Optimize std::remove_pointer compilation performance Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 30/33] c++: Implement __is_pointer built-in trait Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 31/33] libstdc++: Optimize std::is_pointer compilation performance Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 32/33] c++: Implement __is_invocable built-in trait Ken Matsui
2023-10-24  2:01                           ` [PATCH v25 33/33] libstdc++: Optimize std::is_invocable compilation performance Ken Matsui
2023-10-24  2:07                           ` [PATCH v25 00/33] Optimize type traits " Ken Matsui
2023-12-07  5:11                           ` [PATCH v26 00/23] " Ken Matsui
2023-12-10 18:19                             ` Jason Merrill
2023-12-11  2:25                               ` Ken Matsui
2023-12-16 16:40                               ` Jonathan Wakely
2023-12-16 16:56                                 ` Ken Matsui
2023-12-20  3:22                             ` Sandra Loosemore
2023-12-20 15:55                               ` Patrick Palka
2023-12-20 17:13                                 ` Ken Matsui
2023-12-07  5:32                           ` Ken Matsui
2023-12-07  5:32                             ` [PATCH v26 01/23] c++: Sort built-in traits alphabetically Ken Matsui
2023-12-07  5:32                             ` [PATCH v26 02/23] c-family, c++: Look up built-in traits via identifier node Ken Matsui
2023-12-07  5:32                             ` [PATCH v26 03/23] c++: Accept the use of built-in trait identifiers Ken Matsui
2023-12-07  5:32                             ` [PATCH v26 04/23] c++: Implement __is_array built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 05/23] libstdc++: Optimize std::is_array compilation performance Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 06/23] c++: Implement __is_bounded_array built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 07/23] libstdc++: Optimize std::is_bounded_array compilation performance Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 08/23] c++: Implement __is_scoped_enum built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 09/23] libstdc++: Optimize std::is_scoped_enum compilation performance Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 10/23] c++: Implement __is_member_pointer built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 11/23] libstdc++: Optimize std::is_member_pointer compilation performance Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 12/23] c++: Implement __is_member_function_pointer built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 13/23] libstdc++: Optimize std::is_member_function_pointer compilation performance Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 14/23] c++: Implement __is_member_object_pointer built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 15/23] libstdc++: Optimize std::is_member_object_pointer compilation performance Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 16/23] c++: Implement __is_reference built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 17/23] libstdc++: Optimize std::is_reference compilation performance Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 18/23] c++: Implement __is_function built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 19/23] libstdc++: Optimize std::is_function compilation performance Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 20/23] c++: Implement __is_object built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 21/23] libstdc++: Optimize std::is_object compilation performance Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 22/23] c++: Implement __remove_pointer built-in trait Ken Matsui
2023-12-07  5:33                             ` [PATCH v26 23/23] libstdc++: Optimize std::remove_pointer compilation performance Ken Matsui

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7649bb7d-7573-717c-abd9-1d8a16c3305c@idea \
    --to=ppalka@redhat.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=kmatsui@gcc.gnu.org \
    --cc=libstdc++@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).