1 /* Testcase derived from 20111227-1.c to ensure that REE is combining
2 redundant zero extends with zero extend to wider mode. */
3 /* { dg-options "-fdump-rtl-ree -O" } */
4 extern void abort (void);
11 void __attribute__((noinline,noclone))
14 if (t == 2 && s != 0xff)
16 if (t == 1 && i != 0xff)
18 if (t == 0 && l != 0xff)
22 void __attribute__((noinline,noclone))
23 foo (unsigned char *a, int t)
28 s = (unsigned short) r;
32 l = (unsigned long) r;
43 /* { dg-final { scan-rtl-dump "Elimination opportunities = 3 realized = 3" "ree" } } */
44 /* { dg-final { cleanup-rtl-dump "ree" } } */