1 /* { dg-do compile } */
2 /* { dg-options "-O -fdump-tree-fre1-details" } */
3 
4 int b;
5 unsigned a;
6 
g(void)7 static inline int *g(void)
8 {
9   a = 1;
10   return (int*)&a;
11 }
test2(void)12 void test2(void)
13 {
14   b = *g();
15 }
16 
17 /* The indirect load should be replaced by a load from a and a
18    conversion to int.  FRE should then be able to replace
19    the rhs of the store to b by 1.  */
20 
21 /* { dg-final { scan-tree-dump "Replaced\[^\\n\]*with 1" "fre1" } } */
22