------- Comment #4 from pinskia at gcc dot gnu dot org 2007-06-07 21:00 ------- And here is a testcase which makes this reproduciable on the trunk (on powerpc-linux): extern void abort (void); extern void exit (int);
_Bool a; int foo () { int b; int c = a; c = __builtin_abs(c); c = c-1; c = (c) >>31; b = c | 60; return b; } int main(int argc, char **argv) { a = 1; if (foo() != 0x3c) abort(); exit(0); } -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 GCC target triplet| |powerpc-*-* Keywords| |wrong-code Last reconfirmed|0000-00-00 00:00:00 |2007-06-07 21:00:43 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29589