2018-05-15 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / ipa / ipa-sra-10.c
blob24b64d1234aa1c7fea65446ec1c96c328ab0b394
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fipa-sra -fdump-tree-eipa_sra-details" } */
4 extern void consume (int);
5 extern int glob, glob1, glob2;
6 extern int get (void);
9 static void __attribute__ ((noinline))
10 foo (int a)
12 a = glob;
13 consume (a);
14 a = get ();
15 consume (a);
16 __asm__ volatile("" : : ""(a));
17 consume (a);
19 if (glob1)
20 a = glob1;
21 else
22 a = glob2;
23 consume (a);
26 int
27 bar (int a)
29 foo (a);
30 glob = a;
31 return 0;
34 /* { dg-final { scan-tree-dump-times "replacing an SSA name of a removed param" 4 "eipa_sra" } } */