@Matthew Jasper Could I get a more in-depth description as to why the
make_target_blocks closure is needed https://github.com/rust-lang/rust/blob/master/src/librustc_mir/build/matches/mod.rs#L1218
I was doing some work on or-patterns and I'm currently lowering the pattern all the way down to
rustc_mir::build. My plan was to call
perform_test on each of the "sub-tests"
Its from this commit
to resolve the regression recorded here
(in compiling the encoding benchmark, at the top of the list; -10.5%)t
namely, LLVM has an easier time dong its optimization if the control-flow-target block is created after the test itself, if I understand correctly.
@pnkfelix Ah! that make sense... thanks for the explination
I'll either have to adjust my current plan for building the test for or-patterns or move
perform_test from accepting a closure to something else.