rs6000.c (is_ev64_opaque_type): Only check pointer equality.

2003-07-25  Aldy Hernandez  <aldyh@redhat.com>

	* config/rs6000/rs6000.c (is_ev64_opaque_type): Only check pointer
	equality.
	(spe_init_builtins): Declare __ev64_opaque__ as a builtin type.

	* config/rs6000/spe.h: Remove __ev64_opaque__ definition.

From-SVN: r69802
This commit is contained in:
Aldy Hernandez 2003-07-25 23:49:30 +00:00 committed by Aldy Hernandez
parent ca3c62ecf1
commit 36252949ae
3 changed files with 13 additions and 8 deletions

View File

@ -1,3 +1,11 @@
2003-07-25 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.c (is_ev64_opaque_type): Only check pointer
equality.
(spe_init_builtins): Declare __ev64_opaque__ as a builtin type.
* config/rs6000/spe.h: Remove __ev64_opaque__ definition.
2003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
* doc/passes.texi (Passes): Mention pretty-printing and

View File

@ -6231,6 +6231,10 @@ spe_init_builtins ()
SPE_BUILTIN_EVSEL_CMPGTS,
SPE_BUILTIN_EVSEL_FSTSTEQ);
(*lang_hooks.decls.pushdecl)
(build_decl (TYPE_DECL, get_identifier ("__ev64_opaque__"),
opaque_V2SI_type_node));
/* Initialize irregular SPE builtins. */
def_builtin (target_flags, "__builtin_spe_mtspefscr", void_ftype_int, SPE_BUILTIN_MTSPEFSCR);
@ -14770,13 +14774,7 @@ is_ev64_opaque_type (type)
return (TARGET_SPE
&& (type == opaque_V2SI_type_node
|| type == opaque_V2SF_type_node
|| type == opaque_p_V2SI_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)));
|| type == opaque_p_V2SI_type_node));
}
static rtx

View File

@ -45,7 +45,6 @@ typedef unsigned __vector __ev64_u32__;
typedef long long __vector __ev64_s64__;
typedef unsigned long long __vector __ev64_u64__;
typedef float __vector __ev64_fs__;
typedef int __vector __ev64_opaque__;
#define __v2si __ev64_opaque__
#define __v2sf __ev64_fs__