1 /* PR middle-end/18548 */
2 /* Test case reduced by Andrew Pinski <pinskia@physics.uc.edu> */
4 /* { dg-options "-O1 " } */
5 /* Option -fno-tree-lrs removed By Andrew MacLeod since it is no longer
6 supported in the compiler beginning with GCC 4.3. */
7 /* m32c has varying sized pointers */
8 /* { dg-skip-if "" { "m32c-*-*" } { "*" } { "-mcpu=m32c" "-mcpu=m32cm" } } */
10 __extension__
typedef __INTPTR_TYPE__
intptr_t;
12 extern void abort (void);
16 void f(intptr_t a
, intptr_t b
)
19 intptr_t d
= *((intptr_t*)(a
+1));
29 /* The variable a cannot be a local variable as we get better aliasing
30 now and decide that the store to a is dead. The better aliasing comes
31 from better representation of pointer arithmetic. */
36 f((intptr_t)(&a
)-1,0);