aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2007-04-07 15:58:00 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2007-04-07 08:58:00 -0700
commit594dc04813751aa479a77f866f2bd179fba03730 (patch)
treeedc3ad4a646f9fd2770c4f6d63ab4aaf480e6904
parentdd56fe7c2375c250997a416ea3b598e7c934d9ef (diff)
downloadgcc-594dc04813751aa479a77f866f2bd179fba03730.zip
gcc-594dc04813751aa479a77f866f2bd179fba03730.tar.gz
gcc-594dc04813751aa479a77f866f2bd179fba03730.tar.bz2
i386.c (ix86_handle_option): Handle SSSE3.
2007-04-07 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.c (ix86_handle_option): Handle SSSE3. From-SVN: r123639
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/i386/i386.c18
2 files changed, 18 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e6e5b7a..886b460 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2007-04-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.c (ix86_handle_option): Handle SSSE3.
+
2007-04-06 Daniel Berlin <dberlin@dberlin.org>
* tree.c (staticp): No longer use staticp langhook.
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 0429232..aaa8ea8 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -1571,22 +1571,32 @@ ix86_handle_option (size_t code, const char *arg ATTRIBUTE_UNUSED, int value)
case OPT_msse:
if (!value)
{
- target_flags &= ~(MASK_SSE2 | MASK_SSE3 | MASK_SSE4A);
- target_flags_explicit |= MASK_SSE2 | MASK_SSE3 | MASK_SSE4A;
+ target_flags &= ~(MASK_SSE2 | MASK_SSE3 | MASK_SSSE3
+ | MASK_SSE4A);
+ target_flags_explicit |= (MASK_SSE2 | MASK_SSE3 | MASK_SSSE3
+ | MASK_SSE4A);
}
return true;
case OPT_msse2:
if (!value)
{
- target_flags &= ~(MASK_SSE3 | MASK_SSE4A);
- target_flags_explicit |= MASK_SSE3 | MASK_SSE4A;
+ target_flags &= ~(MASK_SSE3 | MASK_SSSE3 | MASK_SSE4A);
+ target_flags_explicit |= MASK_SSE3 | MASK_SSSE3 | MASK_SSE4A;
}
return true;
case OPT_msse3:
if (!value)
{
+ target_flags &= ~(MASK_SSSE3 | MASK_SSE4A);
+ target_flags_explicit |= MASK_SSSE3 | MASK_SSE4A;
+ }
+ return true;
+
+ case OPT_mssse3:
+ if (!value)
+ {
target_flags &= ~MASK_SSE4A;
target_flags_explicit |= MASK_SSE4A;
}