diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2007-05-24 13:31:05 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2007-05-24 06:31:05 -0700 |
commit | 66da42bc85b1004d6ad17b514673a9eea6fa0eb2 (patch) | |
tree | 4006ffe2d179c3fbc8484fb0643ebb5db4fa30d3 /gcc | |
parent | 5691b85a26be65c19f064fa9b0d464df6de6a43e (diff) | |
download | gcc-66da42bc85b1004d6ad17b514673a9eea6fa0eb2.zip gcc-66da42bc85b1004d6ad17b514673a9eea6fa0eb2.tar.gz gcc-66da42bc85b1004d6ad17b514673a9eea6fa0eb2.tar.bz2 |
i386.c (ix86_handle_option): Handle SSE4.1 for -msse/-msse2/-msse3.
2007-05-24 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_handle_option): Handle SSE4.1 for
-msse/-msse2/-msse3.
From-SVN: r125023
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/i386/i386.c | 15 |
2 files changed, 14 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fa2797e..89258a3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2007-05-24 H.J. Lu <hongjiu.lu@intel.com> + * config/i386/i386.c (ix86_handle_option): Handle SSE4.1 for + -msse/-msse2/-msse3. + +2007-05-24 H.J. Lu <hongjiu.lu@intel.com> + * config/i386/i386.c (ix86_init_mmx_sse_builtins): Mark __builtin_ia32_vec_set_v2di with MASK_64BIT. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 3609dac..2b3024c 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -1571,25 +1571,28 @@ ix86_handle_option (size_t code, const char *arg ATTRIBUTE_UNUSED, int value) if (!value) { target_flags &= ~(MASK_SSE2 | MASK_SSE3 | MASK_SSSE3 - | MASK_SSE4A); + | MASK_SSE4_1 | MASK_SSE4A); target_flags_explicit |= (MASK_SSE2 | MASK_SSE3 | MASK_SSSE3 - | MASK_SSE4A); + | MASK_SSE4_1 | MASK_SSE4A); } return true; case OPT_msse2: if (!value) { - target_flags &= ~(MASK_SSE3 | MASK_SSSE3 | MASK_SSE4A); - target_flags_explicit |= MASK_SSE3 | MASK_SSSE3 | MASK_SSE4A; + target_flags &= ~(MASK_SSE3 | MASK_SSSE3 | MASK_SSE4_1 + | MASK_SSE4A); + target_flags_explicit |= (MASK_SSE3 | MASK_SSSE3 + | MASK_SSE4_1 | MASK_SSE4A); } return true; case OPT_msse3: if (!value) { - target_flags &= ~(MASK_SSSE3 | MASK_SSE4A); - target_flags_explicit |= MASK_SSSE3 | MASK_SSE4A; + target_flags &= ~(MASK_SSSE3 | MASK_SSE4_1 | MASK_SSE4A); + target_flags_explicit |= (MASK_SSSE3 | MASK_SSE4_1 + | MASK_SSE4A); } return true; |