From 3fdaa45aebffd0393bbd6087666a9dace89142a6 Mon Sep 17 00:00:00 2001 From: Aldy Hernandez <aldyh@redhat.com> Date: Tue, 8 Apr 2003 14:01:58 +0000 Subject: [PATCH] rs6000.c (rs6000_init_builtins): Set opaque types regardless of architecture. 2003-04-08 Aldy Hernandez <aldyh@redhat.com> * config/rs6000/rs6000.c (rs6000_init_builtins): Set opaque types regardless of architecture. (spe_init_builtins): Change V2SI and V2SF types to opaque types. From-SVN: r65374 --- gcc/ChangeLog | 6 ++++++ gcc/config/rs6000/rs6000.c | 53 ++++++++++++++++++++++++++--------------------------- 2 files changed, 32 insertions(+), 27 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 812b703..c2b24c3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-04-08 Aldy Hernandez <aldyh@redhat.com> + + * config/rs6000/rs6000.c (rs6000_init_builtins): Set opaque types + regardless of architecture. + (spe_init_builtins): Change V2SI and V2SF types to opaque types. + 2003-04-08 J"orn Rennecke <joern.rennecke@superh.com> * sh.c (push_regs, calc_live_regs): Return int. Take single diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 0209240..c4e7971 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -5436,12 +5436,11 @@ rs6000_expand_builtin (exp, target, subtarget, mode, ignore) static void rs6000_init_builtins () { + opaque_V2SI_type_node = copy_node (V2SI_type_node); + opaque_V2SF_type_node = copy_node (V2SF_type_node); + if (TARGET_SPE) - { - opaque_V2SI_type_node = copy_node (V2SI_type_node); - opaque_V2SF_type_node = copy_node (V2SF_type_node); - spe_init_builtins (); - } + spe_init_builtins (); if (TARGET_ALTIVEC) altivec_init_builtins (); if (TARGET_ALTIVEC || TARGET_SPE) @@ -5483,47 +5482,47 @@ spe_init_builtins () tree endlink = void_list_node; tree puint_type_node = build_pointer_type (unsigned_type_node); tree pushort_type_node = build_pointer_type (short_unsigned_type_node); - tree pv2si_type_node = build_pointer_type (V2SI_type_node); + tree pv2si_type_node = build_pointer_type (opaque_V2SI_type_node); struct builtin_description *d; size_t i; tree v2si_ftype_4_v2si = build_function_type - (V2SI_type_node, - tree_cons (NULL_TREE, V2SI_type_node, - tree_cons (NULL_TREE, V2SI_type_node, - tree_cons (NULL_TREE, V2SI_type_node, - tree_cons (NULL_TREE, V2SI_type_node, + (opaque_V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, endlink))))); tree v2sf_ftype_4_v2sf = build_function_type - (V2SF_type_node, - tree_cons (NULL_TREE, V2SF_type_node, - tree_cons (NULL_TREE, V2SF_type_node, - tree_cons (NULL_TREE, V2SF_type_node, - tree_cons (NULL_TREE, V2SF_type_node, + (opaque_V2SF_type_node, + tree_cons (NULL_TREE, opaque_V2SF_type_node, + tree_cons (NULL_TREE, opaque_V2SF_type_node, + tree_cons (NULL_TREE, opaque_V2SF_type_node, + tree_cons (NULL_TREE, opaque_V2SF_type_node, endlink))))); tree int_ftype_int_v2si_v2si = build_function_type (integer_type_node, tree_cons (NULL_TREE, integer_type_node, - tree_cons (NULL_TREE, V2SI_type_node, - tree_cons (NULL_TREE, V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, endlink)))); tree int_ftype_int_v2sf_v2sf = build_function_type (integer_type_node, tree_cons (NULL_TREE, integer_type_node, - tree_cons (NULL_TREE, V2SF_type_node, - tree_cons (NULL_TREE, V2SF_type_node, + tree_cons (NULL_TREE, opaque_V2SF_type_node, + tree_cons (NULL_TREE, opaque_V2SF_type_node, endlink)))); tree void_ftype_v2si_puint_int = build_function_type (void_type_node, - tree_cons (NULL_TREE, V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, tree_cons (NULL_TREE, puint_type_node, tree_cons (NULL_TREE, integer_type_node, @@ -5531,7 +5530,7 @@ spe_init_builtins () tree void_ftype_v2si_puint_char = build_function_type (void_type_node, - tree_cons (NULL_TREE, V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, tree_cons (NULL_TREE, puint_type_node, tree_cons (NULL_TREE, char_type_node, @@ -5539,7 +5538,7 @@ spe_init_builtins () tree void_ftype_v2si_pv2si_int = build_function_type (void_type_node, - tree_cons (NULL_TREE, V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, tree_cons (NULL_TREE, pv2si_type_node, tree_cons (NULL_TREE, integer_type_node, @@ -5547,7 +5546,7 @@ spe_init_builtins () tree void_ftype_v2si_pv2si_char = build_function_type (void_type_node, - tree_cons (NULL_TREE, V2SI_type_node, + tree_cons (NULL_TREE, opaque_V2SI_type_node, tree_cons (NULL_TREE, pv2si_type_node, tree_cons (NULL_TREE, char_type_node, @@ -5562,19 +5561,19 @@ spe_init_builtins () tree_cons (NULL_TREE, void_type_node, endlink)); tree v2si_ftype_pv2si_int - = build_function_type (V2SI_type_node, + = build_function_type (opaque_V2SI_type_node, tree_cons (NULL_TREE, pv2si_type_node, tree_cons (NULL_TREE, integer_type_node, endlink))); tree v2si_ftype_puint_int - = build_function_type (V2SI_type_node, + = build_function_type (opaque_V2SI_type_node, tree_cons (NULL_TREE, puint_type_node, tree_cons (NULL_TREE, integer_type_node, endlink))); tree v2si_ftype_pushort_int - = build_function_type (V2SI_type_node, + = build_function_type (opaque_V2SI_type_node, tree_cons (NULL_TREE, pushort_type_node, tree_cons (NULL_TREE, integer_type_node, endlink))); -- libgit2 0.26.0