modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/compile/20020323-1.c (about)

     1  /* This testcase caused ICE on powerpc at -O3, because regrename did
     2     not handle match_dup of match_operator if the RTLs were not shared.  */
     3  
     4  struct A
     5  {
     6    unsigned char *a0, *a1;
     7    int a2;
     8  };
     9  
    10  void bar (struct A *);
    11  
    12  unsigned int
    13  foo (int x)
    14  {
    15    struct A a;
    16    unsigned int b;
    17  
    18    if (x < -128 || x > 255 || x == -1)
    19      return 26;
    20  
    21    a.a0 = (unsigned char *) &b;
    22    a.a1 = a.a0 + sizeof (unsigned int);
    23    a.a2 = 0;
    24    bar (&a);
    25    return b;
    26  }