modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/pr67226.c (about)

     1  struct assembly_operand
     2  {
     3    int type, value, symtype, symflags, marker;
     4  };
     5  
     6  struct assembly_operand to_input, from_input;
     7  
     8  void __attribute__ ((__noinline__, __noclone__))
     9  assemblez_1 (int internal_number, struct assembly_operand o1)
    10  {
    11    if (o1.type != from_input.type)
    12      __builtin_abort ();
    13  }
    14  
    15  void __attribute__ ((__noinline__, __noclone__))
    16  t0 (struct assembly_operand to, struct assembly_operand from)
    17  {
    18    if (to.value == 0)
    19      assemblez_1 (32, from);
    20    else
    21      __builtin_abort ();
    22  }
    23  
    24  int
    25  main (void)
    26  {
    27    to_input.value = 0;
    28    to_input.type = 1;
    29    to_input.symtype = 2;
    30    to_input.symflags = 3;
    31    to_input.marker = 4;
    32  
    33    from_input.value = 5;
    34    from_input.type = 6;
    35    from_input.symtype = 7;
    36    from_input.symflags = 8;
    37    from_input.marker = 9;
    38  
    39    t0 (to_input, from_input);
    40  
    41    return 0;
    42  }