PR middle-end/27945
[official-gcc.git] / gcc / testsuite / gcc.dg / pr23584.c
blob691a11956badc82909a3653bd391e8489a628d6b
1 /* Regression test for PR middle-end/23584 */
2 /* Verify that dereferencing an absolute address inside of a function
3 makes that function impure. */
5 /* { dg-do compile } */
6 /* { dg-options "-O1 -fdump-ipa-pure-const" } */
8 int test1 (void)
10 return * (volatile int *) 0x1234;
13 int test2 (void)
15 int local = * (volatile int *) 0x1234;
16 return local;
19 /* { dg-final { scan-ipa-dump-not "found to be pure: test1" "pure-const" } } */
20 /* { dg-final { scan-ipa-dump-not "found to be pure: test2" "pure-const" } } */
21 /* { dg-final { cleanup-ipa-dump "pure-const" } } */