(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
20070112-1.c
       1  /* We used to ICE on this testcase: the address of bad_spill_regs is
       2     only taken in a phi node, which we missed and cleared its TREE_ADDRESSABLE
       3     flag.  This gets revealed when the loop is completely unrolled, thus
       4     exposing the addresses as ordinary statements.  */
       5  
       6  /* { dg-do compile } */
       7  /* { dg-options "-O1" } */
       8  
       9  
      10  typedef unsigned HARD_REG_SET[2];
      11  static HARD_REG_SET bad_spill_regs;
      12  
      13  void
      14  order_regs_for_reload ()
      15  {
      16    register int i;
      17  
      18    register unsigned *scan_tp_ = bad_spill_regs;
      19  
      20    for (i = 0; i < 2; i++)
      21      *scan_tp_++ = 0;
      22  
      23    bad_spill_regs[0] |= 1;
      24  }