summaryrefslogtreecommitdiff
path: root/gcc/config/i386
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/i386')
-rw-r--r--gcc/config/i386/i386-protos.h1
-rw-r--r--gcc/config/i386/i386.c18
-rw-r--r--gcc/config/i386/i386.h15
3 files changed, 17 insertions, 17 deletions
diff --git a/gcc/config/i386/i386-protos.h b/gcc/config/i386/i386-protos.h
index 78fcf3b3a70..f98b95ba2fd 100644
--- a/gcc/config/i386/i386-protos.h
+++ b/gcc/config/i386/i386-protos.h
@@ -163,6 +163,7 @@ extern rtx function_arg PARAMS ((CUMULATIVE_ARGS *, enum machine_mode, tree, int
extern void function_arg_advance PARAMS ((CUMULATIVE_ARGS *, enum machine_mode,
tree, int));
extern void ix86_init_builtins PARAMS ((void));
+extern void ix86_init_mmx_sse_builtins PARAMS ((void));
extern rtx ix86_expand_builtin PARAMS ((tree, rtx, rtx, enum machine_mode, int));
#endif
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 45728491c2b..9b32180f223 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -624,6 +624,12 @@ static int ix86_comp_type_attributes PARAMS ((tree, tree));
#undef TARGET_COMP_TYPE_ATTRIBUTES
#define TARGET_COMP_TYPE_ATTRIBUTES ix86_comp_type_attributes
+#undef TARGET_INIT_BUILTINS
+#define TARGET_INIT_BUILTINS ix86_init_builtins
+
+#undef TARGET_EXPAND_BUILTIN
+#define TARGET_EXPAND_BUILTIN ix86_expand_builtin
+
#if defined (OSF_OS) || defined (TARGET_OSF1ELF)
static void ix86_osf_output_function_prologue PARAMS ((FILE *,
HOST_WIDE_INT));
@@ -9340,11 +9346,19 @@ static struct builtin_description bdesc_1arg[] =
};
-/* Expand all the target specific builtins. This is not called if TARGET_MMX
+/* Set up all the target-specific builtins. */
+void
+ix86_init_builtins ()
+{
+ if (TARGET_MMX)
+ ix86_init_mmx_sse_builtins ();
+}
+
+/* Set up all the MMX/SSE builtins. This is not called if TARGET_MMX
is zero. Otherwise, if TARGET_SSE is not set, only expand the MMX
builtins. */
void
-ix86_init_builtins ()
+ix86_init_mmx_sse_builtins ()
{
struct builtin_description * d;
size_t i;
diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h
index ee5b615e59e..5869602ef51 100644
--- a/gcc/config/i386/i386.h
+++ b/gcc/config/i386/i386.h
@@ -2176,21 +2176,6 @@ enum ix86_builtins
IX86_BUILTIN_MAX
};
-
-/* Initialize the target-specific builtin functions. Only do something
- if TARGET_MMX is nonzero; we take care in ix86_init_builtins not to
- enable any SSE builtins if TARGET_SSE is zero. */
-#define MD_INIT_BUILTINS \
- do \
- { \
- if (TARGET_MMX) \
- ix86_init_builtins (); \
- } \
- while (0)
-
-/* Expand a target-specific builtin function. */
-#define MD_EXPAND_BUILTIN(EXP, TARGET, SUBTARGET, MODE, IGNORE) \
- ix86_expand_builtin (EXP, TARGET, SUBTARGET, MODE, IGNORE)
/* Define this macro if references to a symbol must be treated
differently depending on something about the variable or