rs6000.c (rs6000_common_init_builtins): Rename all V2SI_type_node to opaque_V2SI_type_node.
2003-04-07 Aldy Hernandez <aldyh@redhat.com> * config/rs6000/rs6000.c (rs6000_common_init_builtins): Rename all V2SI_type_node to opaque_V2SI_type_node. Rename all V2SF_type_node to opaque_V2SF_type_node. (rs6000_init_builtins): Define opaque_V2SI_type_node and opaque_V2SF_type_node. (is_ev64_opaque_type): The types opaque_V2SI_type_node and opaque_V2SF_type_node are opaque types. From-SVN: r65340
This commit is contained in:
parent
9a318d3046
commit
2abe3e28f3
|
@ -1,3 +1,13 @@
|
|||
2003-04-07 Aldy Hernandez <aldyh@redhat.com>
|
||||
|
||||
* config/rs6000/rs6000.c (rs6000_common_init_builtins): Rename all
|
||||
V2SI_type_node to opaque_V2SI_type_node. Rename all
|
||||
V2SF_type_node to opaque_V2SF_type_node.
|
||||
(rs6000_init_builtins): Define opaque_V2SI_type_node and
|
||||
opaque_V2SF_type_node.
|
||||
(is_ev64_opaque_type): The types opaque_V2SI_type_node and
|
||||
opaque_V2SF_type_node are opaque types.
|
||||
|
||||
2003-04-07 J"orn Rennecke <joern.rennecke@superh.com>
|
||||
|
||||
* gcse.c (replace_store_insn): Use single_set.
|
||||
|
|
|
@ -147,6 +147,12 @@ const char *rs6000_debug_name;
|
|||
int rs6000_debug_stack; /* debug stack applications */
|
||||
int rs6000_debug_arg; /* debug argument handling */
|
||||
|
||||
/* A copy of V2SI_type_node to be used as an opaque type. */
|
||||
static GTY(()) tree opaque_V2SI_type_node;
|
||||
|
||||
/* Same, but for V2SF. */
|
||||
static GTY(()) tree opaque_V2SF_type_node;
|
||||
|
||||
const char *rs6000_traceback_name;
|
||||
static enum {
|
||||
traceback_default = 0,
|
||||
|
@ -5431,7 +5437,11 @@ static void
|
|||
rs6000_init_builtins ()
|
||||
{
|
||||
if (TARGET_SPE)
|
||||
{
|
||||
opaque_V2SI_type_node = copy_node (V2SI_type_node);
|
||||
opaque_V2SF_type_node = copy_node (V2SF_type_node);
|
||||
spe_init_builtins ();
|
||||
}
|
||||
if (TARGET_ALTIVEC)
|
||||
altivec_init_builtins ();
|
||||
if (TARGET_ALTIVEC || TARGET_SPE)
|
||||
|
@ -5910,43 +5920,48 @@ rs6000_common_init_builtins ()
|
|||
= build_function_type_list (V4SF_type_node, V4SF_type_node, NULL_TREE);
|
||||
|
||||
tree v2si_ftype_v2si_v2si
|
||||
= build_function_type_list (V2SI_type_node,
|
||||
V2SI_type_node, V2SI_type_node, NULL_TREE);
|
||||
= build_function_type_list (opaque_V2SI_type_node,
|
||||
opaque_V2SI_type_node,
|
||||
opaque_V2SI_type_node, NULL_TREE);
|
||||
|
||||
tree v2sf_ftype_v2sf_v2sf
|
||||
= build_function_type_list (V2SF_type_node,
|
||||
V2SF_type_node, V2SF_type_node, NULL_TREE);
|
||||
= build_function_type_list (opaque_V2SF_type_node,
|
||||
opaque_V2SF_type_node,
|
||||
opaque_V2SF_type_node, NULL_TREE);
|
||||
|
||||
tree v2si_ftype_int_int
|
||||
= build_function_type_list (V2SI_type_node,
|
||||
= build_function_type_list (opaque_V2SI_type_node,
|
||||
integer_type_node, integer_type_node,
|
||||
NULL_TREE);
|
||||
|
||||
tree v2si_ftype_v2si
|
||||
= build_function_type_list (V2SI_type_node, V2SI_type_node, NULL_TREE);
|
||||
= build_function_type_list (opaque_V2SI_type_node,
|
||||
opaque_V2SI_type_node, NULL_TREE);
|
||||
|
||||
tree v2sf_ftype_v2sf
|
||||
= build_function_type_list (V2SF_type_node,
|
||||
V2SF_type_node, NULL_TREE);
|
||||
= build_function_type_list (opaque_V2SF_type_node,
|
||||
opaque_V2SF_type_node, NULL_TREE);
|
||||
|
||||
tree v2sf_ftype_v2si
|
||||
= build_function_type_list (V2SF_type_node,
|
||||
V2SI_type_node, NULL_TREE);
|
||||
= build_function_type_list (opaque_V2SF_type_node,
|
||||
opaque_V2SI_type_node, NULL_TREE);
|
||||
|
||||
tree v2si_ftype_v2sf
|
||||
= build_function_type_list (V2SI_type_node,
|
||||
V2SF_type_node, NULL_TREE);
|
||||
= build_function_type_list (opaque_V2SI_type_node,
|
||||
opaque_V2SF_type_node, NULL_TREE);
|
||||
|
||||
tree v2si_ftype_v2si_char
|
||||
= build_function_type_list (V2SI_type_node,
|
||||
V2SI_type_node, char_type_node, NULL_TREE);
|
||||
= build_function_type_list (opaque_V2SI_type_node,
|
||||
opaque_V2SI_type_node,
|
||||
char_type_node, NULL_TREE);
|
||||
|
||||
tree v2si_ftype_int_char
|
||||
= build_function_type_list (V2SI_type_node,
|
||||
= build_function_type_list (opaque_V2SI_type_node,
|
||||
integer_type_node, char_type_node, NULL_TREE);
|
||||
|
||||
tree v2si_ftype_char
|
||||
= build_function_type_list (V2SI_type_node, char_type_node, NULL_TREE);
|
||||
= build_function_type_list (opaque_V2SI_type_node,
|
||||
char_type_node, NULL_TREE);
|
||||
|
||||
tree int_ftype_int_int
|
||||
= build_function_type_list (integer_type_node,
|
||||
|
@ -13933,12 +13948,14 @@ is_ev64_opaque_type (type)
|
|||
tree type;
|
||||
{
|
||||
return (TARGET_SPE
|
||||
&& TREE_CODE (type) == VECTOR_TYPE
|
||||
&& (type == opaque_V2SI_type_node
|
||||
|| type == opaque_V2SF_type_node
|
||||
|| (TREE_CODE (type) == VECTOR_TYPE
|
||||
&& TYPE_NAME (type)
|
||||
&& TREE_CODE (TYPE_NAME (type)) == TYPE_DECL
|
||||
&& DECL_NAME (TYPE_NAME (type))
|
||||
&& strcmp (IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (type))),
|
||||
"__ev64_opaque__") == 0);
|
||||
"__ev64_opaque__") == 0)));
|
||||
}
|
||||
|
||||
static rtx
|
||||
|
|
Loading…
Reference in New Issue