> > This is the followup I promised to do on the expand and rtl_eh pass > merge. The following patch merges up to unshare_all_rtl, after which > we should be able to pass all RTL testing(?) > > Bootstrapped and tested on x86_64-unknown-linux-gnu. > > Honza, does this look like what you had in mind?
Yes, this looks just fine ;) > Index: gcc/passes.c > =================================================================== > *** gcc/passes.c (revision 185564) > --- gcc/passes.c (working copy) > *************** init_optimization_passes (void) > *** 1429,1438 **** > NEXT_PASS (pass_rest_of_compilation); > { > struct opt_pass **p = &pass_rest_of_compilation.pass.sub; > - NEXT_PASS (pass_init_function); > - NEXT_PASS (pass_jump); > - NEXT_PASS (pass_initial_value_sets); > - NEXT_PASS (pass_unshare_all_rtl); > NEXT_PASS (pass_instantiate_virtual_regs); > NEXT_PASS (pass_into_cfg_layout_mode); These two are sane and resonable passes (though we eventually may go into cfg layout directly, but that will still require a lot of massaging of ages old code) > NEXT_PASS (pass_jump2); This pass is good next candidate for removal. I have it in my TODO now ;) Thanks! Honza