i386.h (TARGET_SUBTARGET64_ISA_DEFAULT): Enable MMX, SSE and SSE2 by default.
authorUros Bizjak <ubizjak@gmail.com>
Thu, 14 Feb 2019 23:54:25 +0000 (00:54 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Thu, 14 Feb 2019 23:54:25 +0000 (00:54 +0100)
* 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

gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.h

index d3f9706..a41a0a9 100644 (file)
@@ -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
index fd05873..609273e 100644 (file)
@@ -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,
index 83b025e..d903906 100644 (file)
@@ -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  */