1 /* PR target/41762 */ 2 /* { dg-do compile } */ 3 /* { dg-options "-O2 -ftracer -fsched2-use-superblocks" } */ 4 /* { dg-options "-O2 -ftracer -fsched2-use-superblocks -fpic" { target fpic } } */ 5 6 extern __SIZE_TYPE__ strlen (const char *); 7 extern int f1 (void *); 8 extern char *f2 (void); 9 extern void f3 (int, int); 10 static char *a; 11 char *b, *c, *d, *e; 12 13 void foo(void)14foo (void) 15 { 16 int f, g, h; 17 f = (a ? strlen (a) : strlen ("abcde")); 18 f += (b ? strlen (b) : 0); 19 f += (c ? strlen (c) : 0); 20 f += (d ? strlen (d) : 0); 21 f += (e ? strlen (e) : 0); 22 h = f1 (strlen); 23 g = strlen (a); 24 f3 (g, f); 25 } 26 27 void bar(void)28bar (void) 29 { 30 a = f2 (); 31 } 32