Re: [PATCH] use build_function_type_list in the arm backend
On Wed, 2011-04-20 at 15:59 -0400, Nathan Froyd wrote: > As $SUBJECT suggests. There's one remaining use of build_function_type, > but replace that will have to wait until we have a better > FUNCTION_TYPE-building interface. > > Tested with cross to arm-eabi. OK to commit? > OK. R. > -Nathan > > * config/arm/arm.c (arm_init_iwmmxt_builtins): Call > build_function_type_list instead of build_function_type. > Delete variable `endlink'. > > diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c > index 5f964d6..9f10ac4 100644 > --- a/gcc/config/arm/arm.c > +++ b/gcc/config/arm/arm.c > @@ -18915,196 +18915,137 @@ arm_init_iwmmxt_builtins (void) > { >const struct builtin_description * d; >size_t i; > - tree endlink = void_list_node; > >tree V2SI_type_node = build_vector_type_for_mode (intSI_type_node, > V2SImode); >tree V4HI_type_node = build_vector_type_for_mode (intHI_type_node, > V4HImode); >tree V8QI_type_node = build_vector_type_for_mode (intQI_type_node, > V8QImode); > >tree int_ftype_int > -= build_function_type (integer_type_node, > -tree_cons (NULL_TREE, integer_type_node, endlink)); > += build_function_type_list (integer_type_node, > + integer_type_node, NULL_TREE); >tree v8qi_ftype_v8qi_v8qi_int > -= build_function_type (V8QI_type_node, > -tree_cons (NULL_TREE, V8QI_type_node, > - tree_cons (NULL_TREE, V8QI_type_node, > - tree_cons (NULL_TREE, > - integer_type_node, > - endlink; > += build_function_type_list (V8QI_type_node, > + V8QI_type_node, V8QI_type_node, > + integer_type_node, NULL_TREE); >tree v4hi_ftype_v4hi_int > -= build_function_type (V4HI_type_node, > -tree_cons (NULL_TREE, V4HI_type_node, > - tree_cons (NULL_TREE, integer_type_node, > - endlink))); > += build_function_type_list (V4HI_type_node, > + V4HI_type_node, integer_type_node, NULL_TREE); >tree v2si_ftype_v2si_int > -= build_function_type (V2SI_type_node, > -tree_cons (NULL_TREE, V2SI_type_node, > - tree_cons (NULL_TREE, integer_type_node, > - endlink))); > += build_function_type_list (V2SI_type_node, > + V2SI_type_node, integer_type_node, NULL_TREE); >tree v2si_ftype_di_di > -= build_function_type (V2SI_type_node, > -tree_cons (NULL_TREE, long_long_integer_type_node, > - tree_cons (NULL_TREE, > - long_long_integer_type_node, > - endlink))); > += build_function_type_list (V2SI_type_node, > + long_long_integer_type_node, > + long_long_integer_type_node, > + NULL_TREE); >tree di_ftype_di_int > -= build_function_type (long_long_integer_type_node, > -tree_cons (NULL_TREE, long_long_integer_type_node, > - tree_cons (NULL_TREE, integer_type_node, > - endlink))); > += build_function_type_list (long_long_integer_type_node, > + long_long_integer_type_node, > + integer_type_node, NULL_TREE); >tree di_ftype_di_int_int > -= build_function_type (long_long_integer_type_node, > -tree_cons (NULL_TREE, long_long_integer_type_node, > - tree_cons (NULL_TREE, integer_type_node, > - tree_cons (NULL_TREE, > - integer_type_node, > - endlink; > += build_function_type_list (long_long_integer_type_node, > + long_long_integer_type_node, > + integer_type_node, > + integer_type_node, NULL_TREE); >tree int_ftype_v8qi > -= build_function_type (integer_type_node, > -tree_cons (NULL_TREE, V8QI_type_node, > - endlink)); > += build_function_type_list (integer_type_node, > + V8QI_type_node, NULL_TREE); >tree int_ftype_v4hi > -= build_function_type (integer_type_node, > -tree_cons (NULL_TREE, V4HI_type_node, > -
[PATCH] use build_function_type_list in the arm backend
As $SUBJECT suggests. There's one remaining use of build_function_type, but replace that will have to wait until we have a better FUNCTION_TYPE-building interface. Tested with cross to arm-eabi. OK to commit? -Nathan * config/arm/arm.c (arm_init_iwmmxt_builtins): Call build_function_type_list instead of build_function_type. Delete variable `endlink'. diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 5f964d6..9f10ac4 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -18915,196 +18915,137 @@ arm_init_iwmmxt_builtins (void) { const struct builtin_description * d; size_t i; - tree endlink = void_list_node; tree V2SI_type_node = build_vector_type_for_mode (intSI_type_node, V2SImode); tree V4HI_type_node = build_vector_type_for_mode (intHI_type_node, V4HImode); tree V8QI_type_node = build_vector_type_for_mode (intQI_type_node, V8QImode); tree int_ftype_int -= build_function_type (integer_type_node, - tree_cons (NULL_TREE, integer_type_node, endlink)); += build_function_type_list (integer_type_node, + integer_type_node, NULL_TREE); tree v8qi_ftype_v8qi_v8qi_int -= build_function_type (V8QI_type_node, - tree_cons (NULL_TREE, V8QI_type_node, - tree_cons (NULL_TREE, V8QI_type_node, -tree_cons (NULL_TREE, - integer_type_node, - endlink; += build_function_type_list (V8QI_type_node, + V8QI_type_node, V8QI_type_node, + integer_type_node, NULL_TREE); tree v4hi_ftype_v4hi_int -= build_function_type (V4HI_type_node, - tree_cons (NULL_TREE, V4HI_type_node, - tree_cons (NULL_TREE, integer_type_node, -endlink))); += build_function_type_list (V4HI_type_node, + V4HI_type_node, integer_type_node, NULL_TREE); tree v2si_ftype_v2si_int -= build_function_type (V2SI_type_node, - tree_cons (NULL_TREE, V2SI_type_node, - tree_cons (NULL_TREE, integer_type_node, -endlink))); += build_function_type_list (V2SI_type_node, + V2SI_type_node, integer_type_node, NULL_TREE); tree v2si_ftype_di_di -= build_function_type (V2SI_type_node, - tree_cons (NULL_TREE, long_long_integer_type_node, - tree_cons (NULL_TREE, -long_long_integer_type_node, -endlink))); += build_function_type_list (V2SI_type_node, + long_long_integer_type_node, + long_long_integer_type_node, + NULL_TREE); tree di_ftype_di_int -= build_function_type (long_long_integer_type_node, - tree_cons (NULL_TREE, long_long_integer_type_node, - tree_cons (NULL_TREE, integer_type_node, -endlink))); += build_function_type_list (long_long_integer_type_node, + long_long_integer_type_node, + integer_type_node, NULL_TREE); tree di_ftype_di_int_int -= build_function_type (long_long_integer_type_node, - tree_cons (NULL_TREE, long_long_integer_type_node, - tree_cons (NULL_TREE, integer_type_node, -tree_cons (NULL_TREE, - integer_type_node, - endlink; += build_function_type_list (long_long_integer_type_node, + long_long_integer_type_node, + integer_type_node, + integer_type_node, NULL_TREE); tree int_ftype_v8qi -= build_function_type (integer_type_node, - tree_cons (NULL_TREE, V8QI_type_node, - endlink)); += build_function_type_list (integer_type_node, + V8QI_type_node, NULL_TREE); tree int_ftype_v4hi -= build_function_type (integer_type_node, - tree_cons (NULL_TREE, V4HI_type_node, - endlink)); += build_function_type_list (integer_type_node, + V4HI_type_node, NULL_TREE); tree int_ftype_v2si -= build_function_ty