From c5bd3e01df02b0101f69749208c17d87e9a2e610 Mon Sep 17 00:00:00 2001 From: "Duncan P. N. Exon Smith" Date: Fri, 3 Apr 2015 16:23:04 +0000 Subject: CodeGen: Fix MachineInstr::print() for DBG_VALUE Grab the `MDLocalVariable` from the second-to-last argument; the last argument is an `MDExpression`, and mixing them up will crash. llvm-svn: 234019 --- llvm/lib/CodeGen/MachineInstr.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'llvm/lib/CodeGen') diff --git a/llvm/lib/CodeGen/MachineInstr.cpp b/llvm/lib/CodeGen/MachineInstr.cpp index c2accbd1a2a..f1c0d8ef2ad 100644 --- a/llvm/lib/CodeGen/MachineInstr.cpp +++ b/llvm/lib/CodeGen/MachineInstr.cpp @@ -1711,9 +1711,9 @@ void MachineInstr::print(raw_ostream &OS, bool SkipOpers) const { } // Print debug location information. - if (isDebugValue() && getOperand(e - 1).isMetadata()) { + if (isDebugValue() && getOperand(e - 2).isMetadata()) { if (!HaveSemi) OS << ";"; - DIVariable DV(getOperand(e - 1).getMetadata()); + DIVariable DV(getOperand(e - 2).getMetadata()); OS << " line no:" << DV.getLineNumber(); if (auto *InlinedAt = DV.getInlinedAt()) { DebugLoc InlinedAtDL(InlinedAt); -- cgit v1.2.3