Hello,
If we want to use profiling to expand switches in GIMPLE, we'll have
to run switch-conversion after profiling.
Bootstrapped and tested on x86_64-unknown-linux-gnu. OK?
Ciao!
Steven
* passes.c (pass_convert_switch): Move after profiling and pure_const.
Index: passes.c
===================================================================
--- passes.c (revision 186586)
+++ passes.c (working copy)
@@ -1326,10 +1326,10 @@ init_optimization_passes (void)
NEXT_PASS (pass_cd_dce);
NEXT_PASS (pass_early_ipa_sra);
NEXT_PASS (pass_tail_recursion);
- NEXT_PASS (pass_convert_switch);
NEXT_PASS (pass_cleanup_eh);
NEXT_PASS (pass_profile);
NEXT_PASS (pass_local_pure_const);
+ NEXT_PASS (pass_convert_switch);
/* Split functions creates parts that are not run through
early optimizations again. It is thus good idea to do this
late. */