diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2011-06-07 14:53:58 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2011-06-07 07:53:58 -0700 |
commit | c074d7402137a7aecd560091686f56add84c1353 (patch) | |
tree | 6bde4ee4e55084c88cb130e66a735f76ce76c903 | |
parent | 8973b11245fab9bce34ce548c6a3dacf436a690b (diff) | |
download | gcc-c074d7402137a7aecd560091686f56add84c1353.zip gcc-c074d7402137a7aecd560091686f56add84c1353.tar.gz gcc-c074d7402137a7aecd560091686f56add84c1353.tar.bz2 |
Optimize AVX check in *movsf_internal.
2011-06-07 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.md (*movsf_internal): Optimize AVX check.
From-SVN: r174750
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1e19906..f823caf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2011-06-07 H.J. Lu <hongjiu.lu@intel.com> + + * config/i386/i386.md (*movsf_internal): Optimize AVX check. + 2011-06-07 Sergey Grechanik <mouseentity@ispras.ru> * config/arm/arm.c (coproc_secondary_reload_class): Return NO_REGS for diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 58de87b..3e18e7a 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -3207,11 +3207,11 @@ case 6: if (get_attr_mode (insn) == MODE_V4SF) return "%vmovaps\t{%1, %0|%0, %1}"; + if (TARGET_AVX) + return "vmovss\t{%1, %0, %0|%0, %0, %1}"; case 7: case 8: - if (TARGET_AVX && REG_P (operands[0]) && REG_P (operands[1])) - return "vmovss\t{%1, %0, %0|%0, %0, %1}"; return "%vmovss\t{%1, %0|%0, %1}"; case 9: |