diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-01-05 13:53:54 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-01-05 13:53:54 +0000 |
commit | db22d3cc2fb885dec7aea38a58ee7775d93d7dd1 (patch) | |
tree | 6cf1f63c9110bc738fd2520546f623d74c55ebb4 /gcc/testsuite/gcc.dg | |
parent | 30afe54504cdc744a64e0473bdb27995c07d76d4 (diff) | |
download | gcc-db22d3cc2fb885dec7aea38a58ee7775d93d7dd1.tar.gz |
2006-01-05 Richard Guenther <rguenther@suse.de>
Diego Novillo <dnovillo@redhat.com>
* tree-pass.h (TODO_remove_unused_locals): Define.
* gimple-low.c (expand_var_p, remove_useless_vars,
pass_remove_useless_vars): Remove. Update all users.
* tree-ssa-live.c (mark_all_vars_used_1): Handle SSA names.
(remove_unused_locals): New function.
* tree-flow.h (remove_unused_locals): Declare.
* passes.c (execute_todo): Call remove_unused_locals if
TODO_remove_unused_locals is set.
* tree-into-ssa.c (pass_build_ssa): Add TODO_remove_unused_locals.
* tree-ssa-dce.c (pass_dce): Likewise.
* tree-outof-ssa.c (pass_del_ssa): Likewise.
* gcc.dg/tree-ssa/loop-11.c: Deal with removed vars pass.
* gcc.dg/tree-ssa/loop-8.c: Likewise.
* gcc.dg/tree-ssa/loop-1.c: Likewise.
* gcc.dg/tree-ssa/pr23294.c: Likewise.
* gcc.dg/tree-ssa/pr21985.c: Likewise.
* gcc.dg/tree-ssa/loop-14.c: Likewise.
* gcc.dg/tree-ssa/loop-2.c: Likewise.
* gcc.dg/tree-ssa/loop-3.c: Likewise.
* gcc.dg/tree-ssa/loop-4.c: Likewise.
* gcc.dg/tree-ssa/pr21171.c: Likewise.
* gcc.dg/tree-ssa/loop-5.c: Likewise.
* gcc.dg/tree-ssa/loop-10.c: Likewise.
* gcc.dg/tree-ssa/loop-6.c: Likewise.
* treelang/compile/extravar.tree: Likewise.
* g++.dg/tree-ssa/ssa-cast-1.C: Likewise.
* g++.dg/tree-ssa/pointer-reference-alias.C: Likewise.
* g++.dg/tree-ssa/ssa-sra-1.C: Likewise.
* g++.dg/tree-ssa/ssa-sra-2.C: Likewise.
* gcc.dg/tree-ssa/20031106-6.c: Disable SRA.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109379 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.dg')
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/20031106-6.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-1.c | 10 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-10.c | 8 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-11.c | 8 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-14.c | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-2.c | 20 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-3.c | 10 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-4.c | 12 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-5.c | 10 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-6.c | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/loop-8.c | 8 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/pr21171.c | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/pr21985.c | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/pr23294.c | 12 |
14 files changed, 62 insertions, 62 deletions
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/20031106-6.c b/gcc/testsuite/gcc.dg/tree-ssa/20031106-6.c index 6d15c7b5053..51fcd9788f2 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/20031106-6.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/20031106-6.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-optimized" } */ +/* { dg-options "-O1 -fno-tree-sra -fdump-tree-optimized" } */ extern void link_error (void); diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-1.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-1.c index 011e55bbfbc..3ae4819256a 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-1.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-1.c @@ -1,15 +1,15 @@ /* { dg-do compile } */ -/* { dg-options "-O1 -ftree-loop-ivcanon -funroll-loops -fdump-tree-ivcanon-details -fdump-tree-cunroll-details -fdump-tree-vars" } */ +/* { dg-options "-O1 -ftree-loop-ivcanon -funroll-loops -fdump-tree-ivcanon-details -fdump-tree-cunroll-details -fdump-tree-optimized" } */ /* On 31-bit S/390 the function address will be stored (once) in the literal pool, so scan-assembler-times "foo" will return 1 even if the loop is fully unrolled. -msmall-exec avoids this by enabling a call instruction with immediate operand. */ -/* { dg-options "-O1 -ftree-loop-ivcanon -funroll-loops -fdump-tree-ivcanon-details -fdump-tree-cunroll-details -fdump-tree-vars -msmall-exec" { target s390-*-* } } */ +/* { dg-options "-O1 -ftree-loop-ivcanon -funroll-loops -fdump-tree-ivcanon-details -fdump-tree-cunroll-details -fdump-tree-optimized -msmall-exec" { target s390-*-* } } */ /* On Darwin, we call extern functions via a stub in PIC mode which is default and the stub is named after the function. To avoid this we use -static to go out of PIC mode. */ -/* { dg-options "-O1 -ftree-loop-ivcanon -funroll-loops -fdump-tree-ivcanon-details -fdump-tree-cunroll-details -fdump-tree-vars -static" { target *-*-darwin* } } */ +/* { dg-options "-O1 -ftree-loop-ivcanon -funroll-loops -fdump-tree-ivcanon-details -fdump-tree-cunroll-details -fdump-tree-optimized -static" { target *-*-darwin* } } */ void xxx(void) { @@ -25,8 +25,8 @@ void xxx(void) /* { dg-final { cleanup-tree-dump "ivcanon" } } */ /* { dg-final { scan-tree-dump-times "Unrolled loop 1 completely" 1 "cunroll"} } */ /* { dg-final { cleanup-tree-dump "cunroll" } } */ -/* { dg-final { scan-tree-dump-times "foo" 5 "vars"} } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { scan-tree-dump-times "foo" 5 "optimized"} } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ /* Because hppa and ia64 targets include an external declaration for foo as well as the calls we need to look for something more specific then just diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-10.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-10.c index 6a0f94d880f..4b67c82312a 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-10.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-10.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-vars" } */ +/* { dg-options "-O1 -fdump-tree-optimized" } */ int bar (void); @@ -26,7 +26,7 @@ void foo (void) ; } -/* { dg-final { scan-tree-dump-times "if " 3 "vars" } } */ -/* { dg-final { scan-tree-dump-times "bar " 2 "vars" } } */ +/* { dg-final { scan-tree-dump-times "if " 3 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "bar " 2 "optimized" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-11.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-11.c index 58a1349f22c..d6c656f31f0 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-11.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-11.c @@ -2,7 +2,7 @@ see PR 22442. */ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-vars" } */ +/* { dg-options "-O1 -fdump-tree-optimized" } */ void bar (unsigned); @@ -18,11 +18,11 @@ void foo (void) /* Final value of a gets replaced. */ -/* { dg-final { scan-tree-dump-times "\\(16\\)" 1 "vars" } } */ +/* { dg-final { scan-tree-dump-times "\\(16\\)" 1 "optimized" } } */ /* And the empty loop is removed. */ -/* { dg-final { scan-tree-dump-times "if " 0 "vars" } } */ +/* { dg-final { scan-tree-dump-times "if " 0 "optimized" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-14.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-14.c index ff96e128beb..987c7dea805 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-14.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-14.c @@ -1,6 +1,6 @@ /* A test for final value replacement. */ -/* { dg-options "-O2 -fdump-tree-vars" } */ +/* { dg-options "-O2 -fdump-tree-optimized" } */ int foo(void); @@ -15,5 +15,5 @@ int bla(void) return j; } -/* { dg-final { scan-tree-dump-times "\\+ 100" 1 "vars" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { scan-tree-dump-times "\\+ 100" 1 "optimized" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-2.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-2.c index 589de363002..afb0d16c32c 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-2.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-2.c @@ -1,7 +1,7 @@ /* A test for strength reduction and induction variable elimination. */ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-vars" } */ +/* { dg-options "-O1 -fdump-tree-optimized" } */ /* Size of this structure should be sufficiently weird so that no memory addressing mode applies. */ @@ -24,20 +24,20 @@ void xxx(void) /* Access to arr_base[iter].y should be strength reduced, i.e., there should be no multiplication. */ -/* { dg-final { scan-tree-dump-times " \\* \[^\\n\\r\]*=" 0 "vars" } } */ -/* { dg-final { scan-tree-dump-times "\[^\\n\\r\]*= \\* " 0 "vars" } } */ -/* { dg-final { scan-tree-dump-times "MEM" 1 "vars" } } */ +/* { dg-final { scan-tree-dump-times " \\* \[^\\n\\r\]*=" 0 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "\[^\\n\\r\]*= \\* " 0 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "MEM" 1 "optimized" } } */ /* 17 * iter should be strength reduced. */ -/* { dg-final { scan-tree-dump-times " \\* 17" 0 "vars" } } */ -/* { dg-final { scan-tree-dump-times " \\+ 17" 1 "vars" } } */ +/* { dg-final { scan-tree-dump-times " \\* 17" 0 "optimized" } } */ +/* { dg-final { scan-tree-dump-times " \\+ 17" 1 "optimized" } } */ /* The induction variable comparison with 99 should be eliminated and replaced by comparison of one of the newly created ivs. */ -/* { dg-final { scan-tree-dump-times "iter" 0 "vars" } } */ -/* { dg-final { scan-tree-dump-times "99" 0 "vars" } } */ -/* { dg-final { scan-tree-dump-times "100" 0 "vars" } } */ +/* { dg-final { scan-tree-dump-times "iter" 0 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "99" 0 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "100" 0 "optimized" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-3.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-3.c index 82d1d2d73c5..5e374a4b472 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-3.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-3.c @@ -3,7 +3,7 @@ assume something about memory addressing modes. */ /* { dg-do compile { target i?86-*-* x86_64-*-* } } */ -/* { dg-options "-O1 -fdump-tree-vars" } */ +/* { dg-options "-O1 -fdump-tree-optimized" } */ int arr_base[100]; @@ -20,11 +20,11 @@ void xxx(void) /* Access to arr_base[iter].y should not be strength reduced, since we have a memory mode including multiplication by 4. */ -/* { dg-final { scan-tree-dump-times "MEM" 1 "vars" } } */ -/* { dg-final { scan-tree-dump-times "step:" 1 "vars" } } */ +/* { dg-final { scan-tree-dump-times "MEM" 1 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "step:" 1 "optimized" } } */ /* And original induction variable should be preserved. */ -/* { dg-final { scan-tree-dump-times "int iter" 1 "vars" } } */ +/* { dg-final { scan-tree-dump-times "int iter" 1 "optimized" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-4.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-4.c index 49e5a41e0d5..89d956136bb 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-4.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-4.c @@ -1,7 +1,7 @@ /* A test for strength reduction and induction variable elimination. */ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-vars" } */ +/* { dg-options "-O1 -fdump-tree-optimized" } */ /* Size of this structure should be sufficiently weird so that no memory addressing mode applies. */ @@ -34,12 +34,12 @@ void xxx(void) In any case, we should not have any multiplication. */ -/* { dg-final { scan-tree-dump-times " \\* \[^\\n\\r\]*=" 0 "vars" } } */ -/* { dg-final { scan-tree-dump-times "\[^\\n\\r\]*= \\* " 0 "vars" } } */ -/* { dg-final { scan-tree-dump-times "MEM" 1 "vars" } } */ +/* { dg-final { scan-tree-dump-times " \\* \[^\\n\\r\]*=" 0 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "\[^\\n\\r\]*= \\* " 0 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "MEM" 1 "optimized" } } */ /* And the original induction variable should be eliminated. */ -/* { dg-final { scan-tree-dump-times "iter" 0 "vars" } } */ +/* { dg-final { scan-tree-dump-times "iter" 0 "optimized" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-5.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-5.c index c797cd176fb..f0ba475c798 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-5.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-5.c @@ -1,7 +1,7 @@ /* A test for induction variable merging. */ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-vars" } */ +/* { dg-options "-O1 -fdump-tree-optimized" } */ void foo(long); @@ -18,11 +18,11 @@ void xxx(void) /* Only iter variable should remain. */ -/* { dg-final { scan-tree-dump-times "int iter" 1 "vars" } } */ -/* { dg-final { scan-tree-dump-times "jter" 0 "vars" } } */ +/* { dg-final { scan-tree-dump-times "int iter" 1 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "jter" 0 "optimized" } } */ /* And the use of jter should be replaced by iter + 2 */ -/* { dg-final { scan-tree-dump-times " \\+ 2" 1 "vars" } } */ +/* { dg-final { scan-tree-dump-times " \\+ 2" 1 "optimized" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-6.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-6.c index f46b8462076..992f671e4e0 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-6.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-6.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O1 -funswitch-loops -fdump-tree-unswitch-details -fdump-tree-vars" } */ +/* { dg-options "-O1 -funswitch-loops -fdump-tree-unswitch-details -fdump-tree-optimized" } */ int ch; int a[100]; @@ -24,5 +24,5 @@ void xxx(void) /* In effect there should be exactly three conditional jumps in the final program. */ -/* { dg-final { scan-tree-dump-times "else" 3 "vars" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { scan-tree-dump-times "else" 3 "optimized" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-8.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-8.c index 9718aad33cf..de439c7199f 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/loop-8.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-8.c @@ -1,7 +1,7 @@ /* A test for strength reduction of ivs with nonconstant step. */ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-vars" } */ +/* { dg-options "-O1 -fdump-tree-optimized" } */ int bar (void); @@ -19,7 +19,7 @@ void xxx (void) the step, we need to calculate step * sizeof (int), thus we need to be a bit careful about which multiplications we disallow. */ -/* { dg-final { scan-tree-dump-times "step \\* \[^0-9\]" 0 "vars" } } */ -/* { dg-final { scan-tree-dump-times "\[^0-9\] \\* step" 0 "vars" } } */ +/* { dg-final { scan-tree-dump-times "step \\* \[^0-9\]" 0 "optimized" } } */ +/* { dg-final { scan-tree-dump-times "\[^0-9\] \\* step" 0 "optimized" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr21171.c b/gcc/testsuite/gcc.dg/tree-ssa/pr21171.c index a655ed63281..9f7278378b6 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/pr21171.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr21171.c @@ -1,6 +1,6 @@ /* PR 21171. Ivopts should not rewrite references to volatile memory. */ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-vars" } */ +/* { dg-options "-O1 -fdump-tree-optimized" } */ typedef unsigned int u_int32_t; typedef unsigned char u_int8_t; @@ -25,5 +25,5 @@ int main() return 0; } -/* { dg-final { scan-tree-dump-times "SVR" 1 "vars"} } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { scan-tree-dump-times "SVR" 1 "optimized"} } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr21985.c b/gcc/testsuite/gcc.dg/tree-ssa/pr21985.c index a64cd599fd8..19ad0f1132b 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/pr21985.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr21985.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-vars" } */ +/* { dg-options "-O1 -fdump-tree-optimized" } */ struct { @@ -30,5 +30,5 @@ main (void) /* Two of the calls to foo should be folded to just foo(constant). */ -/* { dg-final { scan-tree-dump-times "foo \\(\[0-9\]*\\)" 2 "vars" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { scan-tree-dump-times "foo \\(\[0-9\]*\\)" 2 "optimized" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr23294.c b/gcc/testsuite/gcc.dg/tree-ssa/pr23294.c index 0ab4ed2f85d..35ab5786a90 100644 --- a/gcc/testsuite/gcc.dg/tree-ssa/pr23294.c +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr23294.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O -fdump-tree-vars" } */ +/* { dg-options "-O -fdump-tree-optimized" } */ int f1(int a) { @@ -31,8 +31,8 @@ int f6(int a, int b) return 6*a - 2*b; } -/* { dg-final { scan-tree-dump-times "a \\\* 5" 3 "vars" } } */ -/* { dg-final { scan-tree-dump "\\\(b \\\* 3 \\\+ a\\\) \\\* 2" "vars" } } */ -/* { dg-final { scan-tree-dump "\\\(a - b \\\* 3\\\) \\\* 2" "vars" } } */ -/* { dg-final { scan-tree-dump "\\\(a \\\* 3 - b\\\) \\\* 2" "vars" } } */ -/* { dg-final { cleanup-tree-dump "vars" } } */ +/* { dg-final { scan-tree-dump-times "a \\\* 5" 3 "optimized" } } */ +/* { dg-final { scan-tree-dump "\\\(b \\\* 3 \\\+ a\\\) \\\* 2" "optimized" } } */ +/* { dg-final { scan-tree-dump "\\\(a - b \\\* 3\\\) \\\* 2" "optimized" } } */ +/* { dg-final { scan-tree-dump "\\\(a \\\* 3 - b\\\) \\\* 2" "optimized" } } */ +/* { dg-final { cleanup-tree-dump "optimized" } } */ |