Skip to content

Commit ff3c7ba

Browse files
meg-guptagottesmm
authored andcommitted
[sil] Add another run of ARCSequenceOpts before inlining in function passes.
This eliminates some regressions by eliminating phase ordering in between ARCSequenceOpts/inlining with read only functions whose read onlyness is lost after inlining.
1 parent 47be53d commit ff3c7ba

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

lib/SILOptimizer/PassManager/PassPipeline.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -344,6 +344,7 @@ void addFunctionPasses(SILPassPipelinePlan &P,
344344
// Run devirtualizer after the specializer, because many
345345
// class_method/witness_method instructions may use concrete types now.
346346
P.addDevirtualizer();
347+
P.addARCSequenceOpts();
347348

348349
// We earlier eliminated ownership if we are not compiling the stdlib. Now
349350
// handle the stdlib functions, re-simplifying, eliminating ARC as we do.

0 commit comments

Comments
 (0)