On Fri, Jan 29, 2021 at 05:27:13PM +0100, Richard Biener wrote: > > > + df_process_deferred_rescans (); > > > > rather than here? > > The pass these days does two separate optimizations, and only one of those > > creates the use uninitialized pseudo and at the end initialize it. > > The other optimization is replace_constant_pool_with_broadcast, which > > doesn't do this but still calls validate_change -> df_insn_rescan. > > But both are very cheap and IMHO the flow is less obfuscated this way.
The df_set_flags call sure, but it means that all the df_insn_rescan calls the pass will do will allocate memory to queue the rescans, even when it doesn't need it. Anyway, your call on this. Jakub