re PR target/46153 (ICE: in extract_insn, at recog.c:2110 (unrecognizable insn) with...
authorUros Bizjak <uros@gcc.gnu.org>
Thu, 28 Oct 2010 17:45:52 +0000 (19:45 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Thu, 28 Oct 2010 17:45:52 +0000 (19:45 +0200)
commitf17aa4adf8e01cca835b37d677aa1eaf6796816c
tree6f5ed26288ca36b712bb5c85ba5ed3e04d95a332
parentfb7342fd6f834c6786278eeb9d99d704c2f6a0a1
re PR target/46153 (ICE: in extract_insn, at recog.c:2110 (unrecognizable insn) with -ffloat-store and __builtin_ia32_movlhps)

PR target/46153
* config/i386/sse.md (sse_movhlps_exp): Use destination
returned from ix86_fixup_binary_operands to expand insn.
(sse_movlhps_exp): Ditto.
(sse_loadhps_exp): Ditto.
(sse_loadlps_exp): Ditto.
(sse2_loadhpd_exp): Ditto.
(sse2_loadlpd_exp): Ditto.
(*avx_movhlps): Use ix86_binary_operator_ok in insn predicate.
(sse_movhlps): Ditto.
(*avx_movlhps): Ditto.
(sse_movlhps): Ditto.
(*avx_loadhps): Ditto.
(sse_loadhps): Ditto.
(*avx_loadhpd): Ditto.
(sse_loadhpd): Ditto.
(*avx_storelps): Prevent both operands in memory.
(sse_storelps): Ditto.

testsuite/ChangeLog:

PR target/46153
* gcc.target/i386/pr46153.c: New test.

From-SVN: r166031
gcc/ChangeLog
gcc/config/i386/sse.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr46153.c [new file with mode: 0644]