re PR target/48605 (gcc.target/i386/sse4_1-insertps-2.c FAILs with -mtune=geode ...
authorJakub Jelinek <jakub@redhat.com>
Thu, 14 Apr 2011 21:30:37 +0000 (23:30 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 14 Apr 2011 21:30:37 +0000 (23:30 +0200)
commit09db7afe4f724be4582250bd68a0110a60896e95
treed29b70a327471a0ddf109fe2ca38f6fa09cc3315
parentc59633d9da23d48847f3b1bc8f14772beffb1435
re PR target/48605 (gcc.target/i386/sse4_1-insertps-2.c FAILs with -mtune=geode - instruction insertps with memory operands behaves differently)

PR target/48605
* config/i386/sse.md (sse4_1_insertps): If operands[2] is a MEM,
offset it as needed based on top 2 bits in operands[3], change
MEM mode to SFmode and mask those 2 bits away from operands[3].

* gcc.target/i386/sse4_1-insertps-3.c: New test.
* gcc.target/i386/sse4_1-insertps-4.c: New test.
* gcc.target/i386/avx-insertps-3.c: New test.
* gcc.target/i386/avx-insertps-4.c: New test.

From-SVN: r172458
gcc/ChangeLog
gcc/config/i386/sse.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/avx-vinsertps-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/avx-vinsertps-4.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/sse4_1-insertps-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/sse4_1-insertps-4.c [new file with mode: 0644]