[Bug target/36503] x86 can use x >> -y for x >> 32-y

2018-03-02 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36503 Eric Gallager changed: What|Removed |Added CC||egallager at gcc dot gnu.org --- Comment

[Bug target/36503] x86 can use x >> -y for x >> 32-y

2010-10-22 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36503 --- Comment #9 from Uros Bizjak 2010-10-22 07:37:22 UTC --- (In reply to comment #8) > I built ffmpeg for x86-64 with --disable-asm with the attached patch and the > regression tests failed. Reverting the patch fixes them. I saved the binaries >

[Bug target/36503] x86 can use x >> -y for x >> 32-y

2010-10-20 Thread astrange at ithinksw dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36503 --- Comment #8 from Alexander Strange 2010-10-21 04:39:36 UTC --- I built ffmpeg for x86-64 with --disable-asm with the attached patch and the regression tests failed. Reverting the patch fixes them. I saved the binaries but haven't investigated

[Bug target/36503] x86 can use x >> -y for x >> 32-y

2009-11-08 Thread ubizjak at gmail dot com
--- Comment #6 from ubizjak at gmail dot com 2009-11-09 07:38 --- (In reply to comment #5) > bt with a memory object and a register index will _not_ truncate the argument: Actually, we avoid bt with memory objects just because of this (handling of memory op is not consistent with regist

[Bug target/36503] x86 can use x >> -y for x >> 32-y

2009-11-07 Thread bonzini at gnu dot org
--- Comment #5 from bonzini at gnu dot org 2009-11-07 09:21 --- bt with a memory object and a register index will _not_ truncate the argument: static int btm(int *a, int b) { asm ("btl %2, %1; movl $0, %0; setc %b0" : "=r" (b) : "m" (*a), "0" (b)); return b; } static int btr(int a,

[Bug target/36503] x86 can use x >> -y for x >> 32-y

2008-06-12 Thread astrange at ithinksw dot com
--- Comment #4 from astrange at ithinksw dot com 2008-06-12 16:48 --- Maybe it seemed likely to cause a warning - I haven't checked that yet, though. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36503

[Bug target/36503] x86 can use x >> -y for x >> 32-y

2008-06-12 Thread ubizjak at gmail dot com
--- Comment #3 from ubizjak at gmail dot com 2008-06-12 10:43 --- (In reply to comment #2) > We have the SHIFT_COUNT_TRUNCATED macro for this (though I'm not sure if > that says negative values are ok). They are, but there is a comment in the documentation: -- Macro: SHIFT_COUNT_TRUNCA

[Bug target/36503] x86 can use x >> -y for x >> 32-y

2008-06-12 Thread rguenth at gcc dot gnu dot org
--- Comment #2 from rguenth at gcc dot gnu dot org 2008-06-12 09:25 --- We have the SHIFT_COUNT_TRUNCATED macro for this (though I'm not sure if that says negative values are ok). -- rguenth at gcc dot gnu dot org changed: What|Removed |Added -

[Bug target/36503] x86 can use x >> -y for x >> 32-y

2008-06-11 Thread pinskia at gcc dot gnu dot org
--- Comment #1 from pinskia at gcc dot gnu dot org 2008-06-12 00:05 --- >I'd guess this applies to some other architectures; Not really. It depends on the definition of the shift. Most targets have undefined values are produced from negative shifts values. -- http://gcc.gnu.org/

[Bug target/36503] x86 can use x >> -y for x >> 32-y

2008-06-11 Thread astrange at ithinksw dot com
-- astrange at ithinksw dot com changed: What|Removed |Added Severity|normal |enhancement http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36503