aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-complex.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/tree-complex.c')
-rw-r--r--gcc/tree-complex.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/tree-complex.c b/gcc/tree-complex.c
index ec2b438..3429851 100644
--- a/gcc/tree-complex.c
+++ b/gcc/tree-complex.c
@@ -1569,6 +1569,11 @@ tree_lower_complex (void)
gimple_stmt_iterator gsi;
basic_block bb;
+ /* With errors, normal optimization passes are not run. If we don't
+ lower complex operations at all, rtl expansion will abort. */
+ if (cfun->curr_properties & PROP_gimple_lcx)
+ return 0;
+
if (!init_dont_simulate_again ())
return 0;
@@ -1634,9 +1639,7 @@ struct gimple_opt_pass pass_lower_complex =
static bool
gate_no_optimization (void)
{
- /* With errors, normal optimization passes are not run. If we don't
- lower complex operations at all, rtl expansion will abort. */
- return !(cfun->curr_properties & PROP_gimple_lcx);
+ return true;
}
struct gimple_opt_pass pass_lower_complex_O0 =