modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/20101013-1.c (about) 1 /* PR rtl-optimization/45912 */ 2 3 extern void abort (void); 4 5 static void* __attribute__((noinline,noclone)) 6 get_addr_base_and_unit_offset (void *base, long long *i) 7 { 8 *i = 0; 9 return base; 10 } 11 12 static void* __attribute__((noinline,noclone)) 13 build_int_cst (void *base, long long offset) 14 { 15 if (offset != 4) 16 abort (); 17 18 return base; 19 } 20 21 static void* __attribute__((noinline,noclone)) 22 build_ref_for_offset (void *base, long long offset) 23 { 24 long long base_offset; 25 base = get_addr_base_and_unit_offset (base, &base_offset); 26 return build_int_cst (base, base_offset + offset / 8); 27 } 28 29 int 30 main (void) 31 { 32 void *ret = build_ref_for_offset ((void *)0, 32); 33 if (ret != (void *)0) 34 abort (); 35 return 0; 36 }