svn merge -r102224:107263 svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-3_4-branch
[official-gcc.git] / gcc / testsuite / gcc.dg / 20040302-1.c
blobf6ada1f22c2a75e5b0192cf982b2df44455bfd11
1 /* PR optimization/12419 */
2 /* Ensure external_const_array[0] is read just once. */
3 /* { dg-do compile { target i?86-*-linux* x86_64-*-linux* } } */
4 /* { dg-options "-O2" } */
5 /* { dg-final { scan-assembler "external_const_array" } } */
6 /* { dg-final { scan-assembler-not "external_const_array.*add\[^\\n\]*external_const_array" } } */
8 extern const int external_const_array [];
9 extern void foo (void);
11 int
12 bar (void)
14 int n = external_const_array[0];
15 foo ();
16 n += external_const_array[0];
17 return n;