| /* PR tree-optimization/111469 */ | |
| long f; | |
| char *g; | |
| __attribute__((noinline)) | |
| char o() { | |
| char l; | |
| while (f) | |
| ; | |
| l = *g; | |
| return l; | |
| } | |
| /* factor_out_conditional_conversion is able to remove the casts | |
| from the 2 bbs (correctly) | |
| but then minmax_replacement should not optimize this to a MIN_EXPR | |
| as o has side effects. */ | |
| __attribute__((noinline)) | |
| unsigned short gg(unsigned short a, unsigned short b) | |
| { | |
| short d; | |
| if (a > b) | |
| { | |
| d= b; | |
| } | |
| else | |
| { | |
| o(); | |
| d = a; | |
| } | |
| return d; | |
| } | |
| int main(void) | |
| { | |
| gg(3, 2); | |
| } |