/* { dg-do compile } */ /* { dg-options "-O3" } */ /* Test provided by Volker Reichelt in PR 14553. The redundant PHI node elimination pass was not using the right API functions to propagate pointers, which resulted in dereferenced pointers that did not have memory tags associated with them. */ void foo(int* p) { int i; for (i=1; i>0; --i, ++p) *p=0; } void bar(int* p) { foo(p); }