diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-21.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-21.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-21.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-21.c new file mode 100644 index 000000000..aadf32e21 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-21.c @@ -0,0 +1,26 @@ +/* { dg-do compile } */ +/* { dg-options "-O -fdump-tree-fre" } */ + +struct f { + float a; + float b; + float c; + float d; +}; + +struct f a; + +void h(float, float, float, float); + +void g(void) +{ + float a1 = a.a, b = a.b, c = a.c, d = a.d; + a.a = a1; + a.b = b; + a.c = c; + a.d = d; + h(a1, b, c, d); +} + +/* { dg-final { scan-tree-dump-not "a\\\.? = " "fre" } } */ +/* { dg-final { cleanup-tree-dump "fre" } } */ |