Skip to content

Commit 8317df2

Browse files
authored
Merge pull request #35716 from gottesmm/pr-26d26d55d5c1b2e58bf09729fbdda3f9c5df44ee
[ownership] Move OME on the stdlib passed the existential specializer/performance constant prop.
2 parents 9959914 + 20b882a commit 8317df2

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

lib/SILOptimizer/PassManager/PassPipeline.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -308,18 +308,18 @@ void addFunctionPasses(SILPassPipelinePlan &P,
308308
// Promote stack allocations to values.
309309
P.addMem2Reg();
310310

311-
// We earlier eliminated ownership if we are not compiling the stdlib. Now
312-
// handle the stdlib functions, re-simplifying, eliminating ARC as we do.
313-
P.addCopyPropagation();
314-
P.addSemanticARCOpts();
315-
P.addNonTransparentFunctionOwnershipModelEliminator();
316-
317311
// Run the existential specializer Pass.
318312
P.addExistentialSpecializer();
319313

320314
// Cleanup, which is important if the inliner has restarted the pass pipeline.
321315
P.addPerformanceConstantPropagation();
322316

317+
// We earlier eliminated ownership if we are not compiling the stdlib. Now
318+
// handle the stdlib functions, re-simplifying, eliminating ARC as we do.
319+
P.addCopyPropagation();
320+
P.addSemanticARCOpts();
321+
P.addNonTransparentFunctionOwnershipModelEliminator();
322+
323323
addSimplifyCFGSILCombinePasses(P);
324324

325325
P.addArrayElementPropagation();

0 commit comments

Comments
 (0)