diff options
author | Keith Walker <kwalker@arm.com> | 2016-09-16 14:07:29 +0000 |
---|---|---|
committer | Keith Walker <kwalker@arm.com> | 2016-09-16 14:07:29 +0000 |
commit | 830a8c1fbd4618175e4e42323203d3e2919f95d6 (patch) | |
tree | 1c0b38d147e23fae3944b9d3444af5e72a4419d4 /llvm/lib/CodeGen/LiveDebugVariables.cpp | |
parent | e53cfa73e49557692f3233d49cb7bbd47bf610ce (diff) | |
download | llvm-830a8c1fbd4618175e4e42323203d3e2919f95d6.zip llvm-830a8c1fbd4618175e4e42323203d3e2919f95d6.tar.gz llvm-830a8c1fbd4618175e4e42323203d3e2919f95d6.tar.bz2 |
Place the lowered phi instruction(s) before the DEBUG_VALUE entry
When a phi node is finally lowered to a machine instruction it is
important that the lowered "load" instruction is placed before the
associated DEBUG_VALUE entry describing the value loaded.
Renamed the existing SkipPHIsAndLabels to SkipPHIsLabelsAndDebug to
more fully describe that it also skips debug entries. Then used the
"new" function SkipPHIsAndLabels when the debug information should not
be skipped when placing the lowered "load" instructions so that it is
placed before the debug entries.
Differential Revision: https://reviews.llvm.org/D23760
llvm-svn: 281727
Diffstat (limited to 'llvm/lib/CodeGen/LiveDebugVariables.cpp')
-rw-r--r-- | llvm/lib/CodeGen/LiveDebugVariables.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/LiveDebugVariables.cpp b/llvm/lib/CodeGen/LiveDebugVariables.cpp index 966b4f1..9753197 100644 --- a/llvm/lib/CodeGen/LiveDebugVariables.cpp +++ b/llvm/lib/CodeGen/LiveDebugVariables.cpp @@ -951,7 +951,7 @@ findInsertLocation(MachineBasicBlock *MBB, SlotIndex Idx, while (!(MI = LIS.getInstructionFromIndex(Idx))) { // We've reached the beginning of MBB. if (Idx == Start) { - MachineBasicBlock::iterator I = MBB->SkipPHIsAndLabels(MBB->begin()); + MachineBasicBlock::iterator I = MBB->SkipPHIsLabelsAndDebug(MBB->begin()); return I; } Idx = Idx.getPrevIndex(); |