[Bug target/57623] BEXTR intrinsic has memory operands switched around (fails to compile code)
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat Jun 15 16:33:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57623
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 30307
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30307&action=edit
gcc49-pr57623.patch
The fix for the compiler is easy, but at least the AVX2 spec documents that
_bextr_u{32,64} intrinsics actually take 3 arguments (source, start and
length),
with the latter two always unsigned int, while our intrinsic has only two
arguments (where the latter is expected to be (start & 255) | (length << 8)).
Not sure if we want to change this, and if so, just for 4.9+, or also for
4.8.2+ and 4.7.4+?
More information about the Gcc-bugs
mailing list