Skip to content

Commit 48b73fd

Browse files
authored
Merge pull request #34128 from gottesmm/pr-87b3cae407e80a1fb5e3ad4de714847cf43d0439
[ownership] Move ownership elimination on the stdlib passed lower aggregate instrs.
2 parents 75b18ad + c3bc8e8 commit 48b73fd

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

lib/SILOptimizer/PassManager/PassPipeline.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -286,13 +286,13 @@ void addFunctionPasses(SILPassPipelinePlan &P,
286286
// Optimize copies from a temporary (an "l-value") to a destination.
287287
P.addTempLValueOpt();
288288

289+
// Split up opaque operations (copy_addr, retain_value, etc.).
290+
P.addLowerAggregateInstrs();
291+
289292
// We earlier eliminated ownership if we are not compiling the stdlib. Now
290293
// handle the stdlib functions.
291294
P.addNonTransparentFunctionOwnershipModelEliminator();
292295

293-
// Split up opaque operations (copy_addr, retain_value, etc.).
294-
P.addLowerAggregateInstrs();
295-
296296
// Split up operations on stack-allocated aggregates (struct, tuple).
297297
if (OpLevel == OptimizationLevelKind::HighLevel) {
298298
P.addEarlySROA();

0 commit comments

Comments
 (0)