/* PR rtl-optimization/64957 */ | |
__attribute__((noinline, noclone)) int | |
foo (int b) | |
{ | |
return (((b ^ 5) | 1) ^ 5) | 1; | |
} | |
__attribute__((noinline, noclone)) int | |
bar (int b) | |
{ | |
return (((b ^ ~5) & ~1) ^ ~5) & ~1; | |
} | |
int | |
main () | |
{ | |
int i; | |
for (i = 0; i < 16; i++) | |
if (foo (i) != (i | 1) || bar (i) != (i & ~1)) | |
__builtin_abort (); | |
return 0; | |
} |