diff options
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/cse.c | 2 | ||||
-rw-r--r-- | gcc/toplev.c | 3 |
3 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b4fe9b4..8f0f8bd 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2002-01-25 Roger Sayle <roger@eyesopen.com> + + * cse.c (fold_rtx): Instantiate CONSTANT_P_RTX to 0 when not + optimizing, even if flag_gcse is true. + * toplev.c (rest_of_compilation): purge_builtin_constant_p + only needs to be called when "optimize > 0 && flag_gcse". + 2003-01-25 Roger Sayle <roger@eyesopen.com> * stmt.c (emit_case_bit_tests): New routine to implement suitable @@ -4338,7 +4338,7 @@ fold_rtx (x, insn) { if (const_arg0) return const1_rtx; - if (!flag_gcse) + if (optimize == 0 || !flag_gcse) return const0_rtx; } break; diff --git a/gcc/toplev.c b/gcc/toplev.c index 1ab3f820..60370c2 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -2925,7 +2925,8 @@ rest_of_compilation (decl) } /* Instantiate any remaining CONSTANT_P_RTX nodes. */ - purge_builtin_constant_p (); + if (optimize > 0 && flag_gcse) + purge_builtin_constant_p (); /* Move constant computations out of loops. */ |