Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.c-torture/compile/sra-1.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* Let gimple verifier check what SRA does to unions and single-field strucutres . */ struct sim_struct { int x; }; extern struct sim_struct get_x(void); struct sim_struct foo (void) { struct sim_struct simple; simple = get_x (); if (simple.x % 2) simple.x = 39; else simple.x -=8; return simple; } struct sim_cmplx { _Complex double c; }; extern struct sim_cmplx get_sc (void); _Complex double foo_c (void) { struct sim_cmplx simple; simple = get_sc (); if (__real__ simple.c > 200.3) __imag__ simple.c -= 2.4; return simple.c; } union sim_union { int i; float d; }; extern union sim_union get_y (void); union sim_union bar (void) { union sim_union simple; simple = get_y (); if (simple.d > 8.2) simple.i = 300; return simple; } extern int get_int (void); int bar_i (void) { union sim_union simple; simple = get_y (); if (simple.d > 8.2) simple.i = get_int (); return simple.i; }