cpuid.h (bit_MOVBE): New.
authorH.J. Lu <hjl@gcc.gnu.org>
Thu, 21 May 2009 18:42:20 +0000 (11:42 -0700)
committerH.J. Lu <hjl@gcc.gnu.org>
Thu, 21 May 2009 18:42:20 +0000 (11:42 -0700)
commitcabf85c3a4b2ffd798f18e5e4f71988c6cccce20
treea93fbd470e8d9d31fa245f28efc6de13f4f22724
parent9fefa0aac20b7ca088b4d2fa3bf1abaa8df691f0
cpuid.h (bit_MOVBE): New.

gcc/

2009-05-21  H.J. Lu  <hongjiu.lu@intel.com>
    Uros Bizjak  <ubizjak@gmail.com>

* config/i386/cpuid.h (bit_MOVBE): New.

* config/i386/driver-i386.c (host_detect_local_cpu): Check movbe.

* config/i386/i386.c (OPTION_MASK_ISA_MOVBE_SET): New.
(OPTION_MASK_ISA_MOVBE_UNSET): Likewise.
(ix86_handle_option): Handle OPT_mmovbe.
(ix86_target_string): Add -mmovbe.
(pta_flags): Add PTA_MOVBE.
(processor_alias_table): Add PTA_MOVBE to "atom".
(override_options): Handle PTA_MOVBE.

* config/i386/i386.h (TARGET_MOVBE): New.

* config/i386/i386.md (bswapsi2): Check TARGET_MOVBE.
(*bswapsi_movbe): New.
(*bswapdi_movbe): Likewise.
(bswapdi2): Renamed to ...
(*bswapdi_1): This.
(bswapdi2): New expander.

* config/i386/i386.opt (mmovbe): New.

* doc/invoke.texi: Document -mmovbe.

gcc/testsuite/

2009-05-21  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.target/i386/movbe-1.c: New.
* gcc.target/i386/movbe-2.c: Likewise.

From-SVN: r147773
gcc/ChangeLog
gcc/config/i386/cpuid.h
gcc/config/i386/driver-i386.c
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/config/i386/i386.md
gcc/config/i386/i386.opt
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/movbe-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/movbe-2.c [new file with mode: 0644]