152
|
1 /* PR target/94913 */
|
|
2 /* { dg-do compile } */
|
|
3 /* { dg-options "-O2" } */
|
|
4
|
|
5 void f1 (void);
|
|
6 void f2 (void);
|
|
7
|
|
8 void fooc (unsigned char x, unsigned char y)
|
|
9 {
|
|
10 if ((unsigned char) ~x < y) f1 (); else f2 ();
|
|
11 }
|
|
12
|
|
13 void foos (unsigned short x, unsigned short y)
|
|
14 {
|
|
15 if ((unsigned short) ~x < y) f1 (); else f2 ();
|
|
16 }
|
|
17
|
|
18 void fooi (unsigned long x, unsigned long y)
|
|
19 {
|
|
20 if ((unsigned long) ~x < y) f1 (); else f2 ();
|
|
21 }
|
|
22
|
|
23 /* { dg-final { scan-assembler-not "cmp" } } */
|
|
24 /* { dg-final { scan-assembler-times "add" 3 } } */
|