| /* { dg-options "-mthumb -Os" } */ |
| /* { dg-require-effective-target arm_thumb1_ok } */ |
| /* { dg-final { scan-assembler-not "cmp" } } */ |
| |
| int bar(); |
| void goo(int, int); |
| |
| void eq() |
| { |
| int v = bar(); |
| if (v == 0) |
| return; |
| goo(1, v); |
| } |
| |
| void ge() |
| { |
| int v = bar(); |
| if (v >= 0) |
| return; |
| goo(1, v); |
| } |
| |
| void gt() |
| { |
| int v = bar(); |
| if (v > 0) |
| return; |
| goo(1, v); |
| } |
| |
| void lt() |
| { |
| int v = bar(); |
| if (v < 0) |
| return; |
| goo(1, v); |
| } |
| |
| void le() |
| { |
| int v = bar(); |
| if (v <= 0) |
| return; |
| goo(1, v); |
| } |
| |
| unsigned int foo(); |
| |
| void leu() |
| { |
| unsigned int v = foo(); |
| if (v <= 0) |
| return; |
| goo(1, v); |
| } |