[Bug c/36370] Is the sse2 psrlq insn accessible ?

2008-05-29 Thread Emmanuel dot Thome at inria dot fr
--- Comment #1 from Emmanuel dot Thome at inria dot fr 2008-05-29 13:20 --- Created an attachment (id=15700) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15700action=view) source file causing ICE on 4.3.0 tiramisu ~ $ gcc -v Using built-in specs. Target: x86_64-redhat-linux

[Bug c/36370] Is the sse2 psrlq insn accessible ?

2008-05-29 Thread Emmanuel dot Thome at inria dot fr
--- Comment #3 from Emmanuel dot Thome at inria dot fr 2008-05-29 14:02 --- Yes there is, the __builtin_ia32_psrlqi128 takes __m128 and not a vector type. ok. I guess you mean __m128i, for that particular case. It very much seems that the texinfo documentation for this part of

[Bug c/36370] Is the sse2 psrlq insn accessible ?

2008-05-29 Thread Emmanuel dot Thome at inria dot fr
--- Comment #4 from Emmanuel dot Thome at inria dot fr 2008-05-29 14:09 --- This leaves the ICE problem in attachment 15700. Is my assembly constraint bogus (in which case I'd prefer a nice diagnostic, as was the case in gcc 4.2.4, to an ICE) ? I tried three choices for the inline asm:

[Bug c/36370] Is the sse2 psrlq insn accessible ?

2008-05-29 Thread ubizjak at gmail dot com
--- Comment #5 from ubizjak at gmail dot com 2008-05-29 14:30 --- Please note that psrlq doesn't implement x[N] y[N] shift, but x[N] y shift. That is, all elements are shifted by the same value. Please see Intel instruction reference. Also, psrlq doesn't support memory operands. --

[Bug c/36370] Is the sse2 psrlq insn accessible ?

2008-05-29 Thread Emmanuel dot Thome at inria dot fr
--- Comment #6 from Emmanuel dot Thome at inria dot fr 2008-05-29 14:49 --- (In reply to comment #5) Please note that psrlq doesn't implement x[N] y[N] shift, but x[N] y shift. That is, all elements are shifted by the same value. Please see Intel instruction reference. yeah, I

[Bug c/36370] Is the sse2 psrlq insn accessible ?

2008-05-29 Thread ubizjak at gmail dot com
--- Comment #7 from ubizjak at gmail dot com 2008-05-29 15:03 --- (In reply to comment #6) Also, psrlq doesn't support memory operands. It does (for the shift count). Or my AMD doc is bogus. Uh, indeed. I was looking into sse.md patterns. Unfortunatelly, it takes 128bit operand