| /* PR rtl-optimization/51667 */ | |
| /* Testcase by Uros Bizjak <ubizjak@gmail.com> */ | |
| extern void abort (void); | |
| void __attribute__((noinline,noclone)) | |
| bar (int a) | |
| { | |
| if (a != -1) | |
| abort (); | |
| } | |
| void __attribute__((noinline,noclone)) | |
| foo (short *a, int t) | |
| { | |
| short r = *a; | |
| if (t) | |
| bar ((unsigned short) r); | |
| else | |
| bar ((signed short) r); | |
| } | |
| short v = -1; | |
| int main(void) | |
| { | |
| foo (&v, 0); | |
| return 0; | |
| } |