1  /* { dg-do compile } */
       2  /* { dg-options "-O -fstrict-aliasing -fdump-tree-lim2-details" } */
       3  
       4  unsigned p;
       5  
       6  void foo (float *q)
       7  {
       8    for (int i = 0; i < 256; ++i)
       9      {
      10        if (p)
      11          {
      12            unsigned a = p;
      13            *(q++) = 1.;
      14            p = a + 1;
      15          }
      16      }
      17  }
      18  
      19  /* { dg-final { scan-tree-dump-times "Executing store motion" 1 "lim2" } } */