Skip to content

Commit 9de5d6e

Browse files
authored
Merge pull request swiftlang#39059 from eeckstein/fix-perf-regressions
COWOpts: handle debug_value instructions
2 parents 5357a1d + ec67d1b commit 9de5d6e

File tree

2 files changed

+2
-0
lines changed

2 files changed

+2
-0
lines changed

lib/SILOptimizer/Transforms/COWOpts.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,7 @@ void COWOptsPass::collectEscapePoints(SILValue v,
247247
case SILInstructionKind::BeginCOWMutationInst:
248248
case SILInstructionKind::RefElementAddrInst:
249249
case SILInstructionKind::RefTailAddrInst:
250+
case SILInstructionKind::DebugValueInst:
250251
break;
251252
case SILInstructionKind::BranchInst:
252253
collectEscapePoints(cast<BranchInst>(user)->getArgForOperand(use),

test/SILOptimizer/cow_opts.sil

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ sil @test_simple : $@convention(thin) (@owned Buffer) -> (Int, Builtin.Int1, @ow
3636
bb0(%0 : $Buffer):
3737
%e = end_cow_mutation %0 : $Buffer
3838
%addr = ref_element_addr [immutable] %e : $Buffer, #Buffer.i
39+
debug_value %e : $Buffer, var, name "x"
3940
%i = load %addr : $*Int
4041
(%u, %b) = begin_cow_mutation %e : $Buffer
4142
%t = tuple (%i : $Int, %u : $Builtin.Int1, %b : $Buffer)

0 commit comments

Comments
 (0)