(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
ipa/
ipa-pta-3.c
       1  /* { dg-do run } */
       2  /* { dg-options "-O2 -fipa-pta -fdump-ipa-pta2-details -fdump-tree-fre3-details" } */
       3  
       4  static int __attribute__((noinline,noclone))
       5  foo (int *p, int *q)
       6  {
       7    *p = 1;
       8    *q = 0;
       9    return *p;
      10  }
      11  
      12  extern void abort (void);
      13  
      14  int main()
      15  {
      16    int a, b;
      17    if (foo (&a, &b) != 1)
      18      abort ();
      19    return 0;
      20  }
      21  
      22  /* Verify we can disambiguate *p and *q in foo.  */
      23  
      24  /* { dg-final { scan-ipa-dump "foo.arg0 = &a" "pta2" } } */
      25  /* { dg-final { scan-ipa-dump "foo.arg1 = &b" "pta2" } } */
      26  /* { dg-final { scan-tree-dump "Replaced \\\*p_2\\\(D\\\) with 1" "fre3" } } */