aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2019-02-15 00:54:25 +0100
committerUros Bizjak <uros@gcc.gnu.org>2019-02-15 00:54:25 +0100
commit8b131a8a7a1b69530130316543162225003c4b2f (patch)
tree50db024716988b7e6bd4306ce0ca49d4d0dcb6c4
parentdddd0c7a5b751f398cba325dc7310bb185fed201 (diff)
downloadgcc-8b131a8a7a1b69530130316543162225003c4b2f.zip
gcc-8b131a8a7a1b69530130316543162225003c4b2f.tar.gz
gcc-8b131a8a7a1b69530130316543162225003c4b2f.tar.bz2
i386.h (TARGET_SUBTARGET64_ISA_DEFAULT): Enable MMX, SSE and SSE2 by default.
* config/i386/i386.h (TARGET_SUBTARGET64_ISA_DEFAULT): Enable MMX, SSE and SSE2 by default. * config/i386/i386.c (ix86_option_override_internal): Do not explicitly set MMX, SSE and SSE2 flags for TARGET_64BIT here. From-SVN: r268917
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/i386/i386.c9
-rw-r--r--gcc/config/i386/i386.h4
3 files changed, 12 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d3f9706..a41a0a9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2019-02-15 Uroš Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.h (TARGET_SUBTARGET64_ISA_DEFAULT):
+ Enable MMX, SSE and SSE2 by default.
+ * config/i386/i386.c (ix86_option_override_internal): Do not
+ explicitly set MMX, SSE and SSE2 flags for TARGET_64BIT here.
+
2019-02-14 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/89354
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index fd05873..609273e 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -4165,14 +4165,9 @@ ix86_option_override_internal (bool main_args_p,
opts->x_target_flags
|= TARGET_SUBTARGET64_DEFAULT & ~opts_set->x_target_flags;
- /* Enable by default the SSE and MMX builtins. Do allow the user to
- explicitly disable any of these. In particular, disabling SSE and
- MMX for kernel code is extremely useful. */
if (!ix86_arch_specified)
- opts->x_ix86_isa_flags
- |= ((OPTION_MASK_ISA_SSE2 | OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_MMX
- | TARGET_SUBTARGET64_ISA_DEFAULT)
- & ~opts->x_ix86_isa_flags_explicit);
+ opts->x_ix86_isa_flags
+ |= TARGET_SUBTARGET64_ISA_DEFAULT & ~opts->x_ix86_isa_flags_explicit;
if (TARGET_RTD_P (opts->x_target_flags))
warning (0,
diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h
index 83b025e..d903906 100644
--- a/gcc/config/i386/i386.h
+++ b/gcc/config/i386/i386.h
@@ -633,7 +633,9 @@ extern tree x86_mfence;
/* Extra bits to force on w/ 64-bit mode. */
#define TARGET_SUBTARGET64_DEFAULT 0
-#define TARGET_SUBTARGET64_ISA_DEFAULT 0
+/* Enable MMX, SSE and SSE2 by default. */
+#define TARGET_SUBTARGET64_ISA_DEFAULT \
+ (OPTION_MASK_ISA_MMX | OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_SSE2)
/* Replace MACH-O, ifdefs by in-line tests, where possible.
(a) Macros defined in config/i386/darwin.h */