re PR target/33369 (suffix or operands invalid for `pslld')
authorUros Bizjak <ubizjak@gmail.com>
Mon, 10 Sep 2007 09:10:00 +0000 (11:10 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Mon, 10 Sep 2007 09:10:00 +0000 (11:10 +0200)
commitf8568ac02af9be51ab5cb267fcc7a5e839f23e62
treef3ec85518b147a9837dfc690b96b6df65b69d2d6
parentc03550f61c494dd20c46578aa4bc9a525323782c
re PR target/33369 (suffix or operands invalid for `pslld')

PR target/33369
* gcc/config/i386/sse.md (ashr<mode>3): Change op2 mode to SImode.
Use 'N' operand constraint for op2.
(lshr<mode>3): Ditto.
(ashl<mode>3): Ditto.
(vec_shl_<mode>): Use const_0_to_255_mul_8_operand predicate for op2.
(vec_shr_<mode>): Use const_0_to_255_mul_8_operand predicate for op2.

* gcc/config/i386/i386.c (ix86_expand_builtin) [IX86_BUILTIN_PSLL?128,
IX86_BUILTIN_PSRA*?128, IX86_BUILTIN_PSRL?128]: Convert op1 to SImode.

testsuite/ChangeLog:

PR target/33369
* gcc.dg/vect/pr33369.c: New test.

From-SVN: r128328
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.md
gcc/config/i386/sse.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/vect/pr33369.c [new file with mode: 0644]