[CodeView] Mark our lines as statements, not expressions

The line tables for CodeView make a distinction between expressions and
statements.  As it turns out, MSVC always emits them as statements and
we always emit them as expressions.  Let's switch to statements to match
the CodeView that they emit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@257553 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
David Majnemer 2016-01-13 01:05:23 +00:00
parent 812af1efba
commit 222a88109a
6 changed files with 99 additions and 84 deletions

View File

@ -82,13 +82,24 @@ void WinCodeViewLineTables::maybeRecordLocation(DebugLoc DL,
const MDNode *Scope = DL.getScope();
if (!Scope)
return;
unsigned LineNumber = DL.getLine();
// Skip this line if it is longer than the maximum we can record.
if (LineNumber > COFF::CVL_MaxLineNumber)
return;
unsigned ColumnNumber = DL.getCol();
// Truncate the column number if it is longer than the maximum we can record.
if (ColumnNumber > COFF::CVL_MaxColumnNumber)
ColumnNumber = 0;
StringRef Filename = getFullFilepath(Scope);
// Skip this instruction if it has the same file:line as the previous one.
assert(CurFn);
if (!CurFn->Instrs.empty()) {
const InstrInfoTy &LastInstr = InstrInfo[CurFn->Instrs.back()];
if (LastInstr.Filename == Filename && LastInstr.LineNumber == DL.getLine())
if (LastInstr.Filename == Filename && LastInstr.LineNumber == LineNumber &&
LastInstr.ColumnNumber == ColumnNumber)
return;
}
FileNameRegistry.add(Filename);
@ -96,7 +107,7 @@ void WinCodeViewLineTables::maybeRecordLocation(DebugLoc DL,
MCSymbol *MCL = Asm->MMI->getContext().createTempSymbol();
Asm->OutStreamer->EmitLabel(MCL);
CurFn->Instrs.push_back(MCL);
InstrInfo[MCL] = InstrInfoTy(Filename, DL.getLine(), DL.getCol());
InstrInfo[MCL] = InstrInfoTy(Filename, LineNumber, ColumnNumber);
}
WinCodeViewLineTables::WinCodeViewLineTables(AsmPrinter *AP)
@ -282,6 +293,7 @@ void WinCodeViewLineTables::emitDebugInfoForFunction(const Function *GV) {
ColSegEnd = ColSegI + FilenameSegmentLengths[LastSegmentStart];
ColSegI != ColSegEnd; ++ColSegI) {
unsigned ColumnNumber = InstrInfo[FI.Instrs[ColSegI]].ColumnNumber;
assert(ColumnNumber <= COFF::CVL_MaxColumnNumber);
Asm->EmitInt16(ColumnNumber); // Start column
Asm->EmitInt16(0); // End column
}
@ -320,7 +332,10 @@ void WinCodeViewLineTables::emitDebugInfoForFunction(const Function *GV) {
// The first PC with the given linenumber and the linenumber itself.
EmitLabelDiff(*Asm->OutStreamer, Fn, Instr);
Asm->EmitInt32(InstrInfo[Instr].LineNumber);
uint32_t LineNumber = InstrInfo[Instr].LineNumber;
assert(LineNumber <= COFF::CVL_MaxLineNumber);
uint32_t LineData = LineNumber | COFF::CVL_IsStatement;
Asm->EmitInt32(LineData);
}
FinishPreviousChunk();

View File

@ -57,11 +57,11 @@
; X86-NEXT: .long 3
; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X86-NEXT: .long [[ASM_LINE]]-_f
; X86-NEXT: .long 4
; X86-NEXT: .long -2147483644
; X86-NEXT: .long [[CALL_LINE]]-_f
; X86-NEXT: .long 5
; X86-NEXT: .long -2147483643
; X86-NEXT: .long [[RETURN_STMT]]-_f
; X86-NEXT: .long 6
; X86-NEXT: .long -2147483642
; X86-NEXT: .short 0
; X86-NEXT: .short 0
; X86-NEXT: .short 0
@ -117,21 +117,21 @@
; OBJ32-NEXT: +0x0 [
; OBJ32-NEXT: LineNumberStart: 4
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 0
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
; OBJ32-NEXT: +0x0 [
; OBJ32-NEXT: LineNumberStart: 5
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 0
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
; OBJ32-NEXT: +0x5 [
; OBJ32-NEXT: LineNumberStart: 6
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 0
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
@ -186,13 +186,13 @@
; X64-NEXT: .long 4
; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X64-NEXT: .long [[START]]-f
; X64-NEXT: .long 3
; X64-NEXT: .long -2147483645
; X64-NEXT: .long [[ASM_LINE]]-f
; X64-NEXT: .long 4
; X64-NEXT: .long -2147483644
; X64-NEXT: .long [[CALL_LINE]]-f
; X64-NEXT: .long 5
; X64-NEXT: .long -2147483643
; X64-NEXT: .long [[EPILOG_AND_RET]]-f
; X64-NEXT: .long 6
; X64-NEXT: .long -2147483642
; X64-NEXT: .short 0
; X64-NEXT: .short 0
; X64-NEXT: .short 0
@ -248,28 +248,28 @@
; OBJ64-NEXT: +0x0 [
; OBJ64-NEXT: LineNumberStart: 3
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x4 [
; OBJ64-NEXT: LineNumberStart: 4
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x4 [
; OBJ64-NEXT: LineNumberStart: 5
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x9 [
; OBJ64-NEXT: LineNumberStart: 6
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]

View File

@ -65,7 +65,7 @@
; X86-NEXT: .long 1
; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X86-NEXT: .long [[CALL_LINE_1]]-_f
; X86-NEXT: .long 1
; X86-NEXT: .long -2147483647
; X86-NEXT: .short 0
; X86-NEXT: .short 0
; X86-NEXT: [[FILE_SEGMENT_END]]:
@ -75,7 +75,7 @@
; X86-NEXT: .long 1
; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X86-NEXT: .long [[CALL_LINE_2]]-_f
; X86-NEXT: .long 2
; X86-NEXT: .long -2147483646
; X86-NEXT: .short 0
; X86-NEXT: .short 0
; X86-NEXT: [[FILE_SEGMENT_END]]:
@ -85,9 +85,9 @@
; X86-NEXT: .long 2
; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X86-NEXT: .long [[CALL_LINE_3]]-_f
; X86-NEXT: .long 7
; X86-NEXT: .long -2147483641
; X86-NEXT: .long [[RETURN_STMT]]-_f
; X86-NEXT: .long 8
; X86-NEXT: .long -2147483640
; X86-NEXT: .short 0
; X86-NEXT: .short 0
; X86-NEXT: .short 0
@ -140,7 +140,7 @@
; OBJ32-NEXT: +0x0 [
; OBJ32-NEXT: LineNumberStart: 1
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 0
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
@ -150,7 +150,7 @@
; OBJ32-NEXT: +0x5 [
; OBJ32-NEXT: LineNumberStart: 2
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 0
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
@ -160,14 +160,14 @@
; OBJ32-NEXT: +0xA [
; OBJ32-NEXT: LineNumberStart: 7
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 0
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
; OBJ32-NEXT: +0xF [
; OBJ32-NEXT: LineNumberStart: 8
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 0
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
@ -227,7 +227,7 @@
; X64-NEXT: .long 1
; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X64-NEXT: .long [[START]]-f
; X64-NEXT: .long 3
; X64-NEXT: .long -2147483645
; X64-NEXT: .short 0
; X64-NEXT: .short 0
; X64-NEXT: [[FILE_SEGMENT_END]]:
@ -237,7 +237,7 @@
; X64-NEXT: .long 1
; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X64-NEXT: .long [[CALL_LINE_1]]-f
; X64-NEXT: .long 1
; X64-NEXT: .long -2147483647
; X64-NEXT: .short 0
; X64-NEXT: .short 0
; X64-NEXT: [[FILE_SEGMENT_END]]:
@ -247,7 +247,7 @@
; X64-NEXT: .long 1
; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X64-NEXT: .long [[CALL_LINE_2]]-f
; X64-NEXT: .long 2
; X64-NEXT: .long -2147483646
; X64-NEXT: .short 0
; X64-NEXT: .short 0
; X64-NEXT: [[FILE_SEGMENT_END]]:
@ -257,9 +257,9 @@
; X64-NEXT: .long 2
; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X64-NEXT: .long [[CALL_LINE_3]]-f
; X64-NEXT: .long 7
; X64-NEXT: .long -2147483641
; X64-NEXT: .long [[EPILOG_AND_RET]]-f
; X64-NEXT: .long 8
; X64-NEXT: .long -2147483640
; X64-NEXT: .short 0
; X64-NEXT: .short 0
; X64-NEXT: .short 0
@ -316,7 +316,7 @@
; OBJ64-NEXT: +0x0 [
; OBJ64-NEXT: LineNumberStart: 3
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
@ -326,7 +326,7 @@
; OBJ64-NEXT: +0x4 [
; OBJ64-NEXT: LineNumberStart: 1
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
@ -336,7 +336,7 @@
; OBJ64-NEXT: +0x9 [
; OBJ64-NEXT: LineNumberStart: 2
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
@ -346,14 +346,14 @@
; OBJ64-NEXT: +0xE [
; OBJ64-NEXT: LineNumberStart: 7
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x13 [
; OBJ64-NEXT: LineNumberStart: 8
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]

View File

@ -86,9 +86,9 @@
; X86-NEXT: .long 2
; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X86-NEXT: .long [[X_CALL]]-_x
; X86-NEXT: .long 4
; X86-NEXT: .long -2147483644
; X86-NEXT: .long [[X_RETURN]]-_x
; X86-NEXT: .long 5
; X86-NEXT: .long -2147483643
; X86-NEXT: .short 42
; X86-NEXT: .short 0
; X86-NEXT: .short 43
@ -129,9 +129,9 @@
; X86-NEXT: .long 2
; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X86-NEXT: .long [[Y_CALL]]-_y
; X86-NEXT: .long 8
; X86-NEXT: .long -2147483640
; X86-NEXT: .long [[Y_RETURN]]-_y
; X86-NEXT: .long 9
; X86-NEXT: .long -2147483639
; X86-NEXT: .short 52
; X86-NEXT: .short 0
; X86-NEXT: .short 53
@ -172,13 +172,13 @@
; X86-NEXT: .long 4
; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X86-NEXT: .long [[F_CALLS_X]]-_f
; X86-NEXT: .long 12
; X86-NEXT: .long -2147483636
; X86-NEXT: .long [[F_CALLS_Y]]-_f
; X86-NEXT: .long 13
; X86-NEXT: .long -2147483635
; X86-NEXT: .long [[F_CALLS_Z]]-_f
; X86-NEXT: .long 14
; X86-NEXT: .long -2147483634
; X86-NEXT: .long [[F_RETURN]]-_f
; X86-NEXT: .long 15
; X86-NEXT: .long -2147483633
; X86-NEXT: .short 62
; X86-NEXT: .short 0
; X86-NEXT: .short 63
@ -268,14 +268,14 @@
; OBJ32-NEXT: +0x0 [
; OBJ32-NEXT: LineNumberStart: 4
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 42
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
; OBJ32-NEXT: +0x5 [
; OBJ32-NEXT: LineNumberStart: 5
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 43
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
@ -290,14 +290,14 @@
; OBJ32-NEXT: +0x0 [
; OBJ32-NEXT: LineNumberStart: 8
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 52
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
; OBJ32-NEXT: +0x5 [
; OBJ32-NEXT: LineNumberStart: 9
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 53
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
@ -312,28 +312,28 @@
; OBJ32-NEXT: +0x0 [
; OBJ32-NEXT: LineNumberStart: 12
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 62
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
; OBJ32-NEXT: +0x5 [
; OBJ32-NEXT: LineNumberStart: 13
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 63
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
; OBJ32-NEXT: +0xA [
; OBJ32-NEXT: LineNumberStart: 14
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 72
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
; OBJ32-NEXT: +0xF [
; OBJ32-NEXT: LineNumberStart: 15
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 73
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
@ -417,11 +417,11 @@
; X64-NEXT: .long 3
; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X64-NEXT: .long [[X_START]]-x
; X64-NEXT: .long 3
; X64-NEXT: .long -2147483645
; X64-NEXT: .long [[X_CALL_LINE]]-x
; X64-NEXT: .long 4
; X64-NEXT: .long -2147483644
; X64-NEXT: .long [[X_EPILOG_AND_RET]]-x
; X64-NEXT: .long 5
; X64-NEXT: .long -2147483643
; X64-NEXT: .short 0
; X64-NEXT: .short 0
; X64-NEXT: .short 42
@ -464,11 +464,11 @@
; X64-NEXT: .long 3
; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X64-NEXT: .long [[Y_START]]-y
; X64-NEXT: .long 7
; X64-NEXT: .long -2147483641
; X64-NEXT: .long [[Y_CALL_LINE]]-y
; X64-NEXT: .long 8
; X64-NEXT: .long -2147483640
; X64-NEXT: .long [[Y_EPILOG_AND_RET]]-y
; X64-NEXT: .long 9
; X64-NEXT: .long -2147483639
; X64-NEXT: .short 0
; X64-NEXT: .short 0
; X64-NEXT: .short 52
@ -511,15 +511,15 @@
; X64-NEXT: .long 5
; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X64-NEXT: .long [[F_START]]-f
; X64-NEXT: .long 11
; X64-NEXT: .long -2147483637
; X64-NEXT: .long [[F_CALLS_X]]-f
; X64-NEXT: .long 12
; X64-NEXT: .long -2147483636
; X64-NEXT: .long [[F_CALLS_Y]]-f
; X64-NEXT: .long 13
; X64-NEXT: .long -2147483635
; X64-NEXT: .long [[F_CALLS_Z]]-f
; X64-NEXT: .long 14
; X64-NEXT: .long -2147483634
; X64-NEXT: .long [[F_EPILOG_AND_RET]]-f
; X64-NEXT: .long 15
; X64-NEXT: .long -2147483633
; X64-NEXT: .short 0
; X64-NEXT: .short 0
; X64-NEXT: .short 62
@ -611,21 +611,21 @@
; OBJ64-NEXT: +0x0 [
; OBJ64-NEXT: LineNumberStart: 3
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x4 [
; OBJ64-NEXT: LineNumberStart: 4
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 42
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x9 [
; OBJ64-NEXT: LineNumberStart: 5
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 43
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
@ -640,21 +640,21 @@
; OBJ64-NEXT: +0x0 [
; OBJ64-NEXT: LineNumberStart: 7
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x4 [
; OBJ64-NEXT: LineNumberStart: 8
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 52
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x9 [
; OBJ64-NEXT: LineNumberStart: 9
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 53
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
@ -669,35 +669,35 @@
; OBJ64-NEXT: +0x0 [
; OBJ64-NEXT: LineNumberStart: 11
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x4 [
; OBJ64-NEXT: LineNumberStart: 12
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 62
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x9 [
; OBJ64-NEXT: LineNumberStart: 13
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 63
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0xE [
; OBJ64-NEXT: LineNumberStart: 14
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 72
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x13 [
; OBJ64-NEXT: LineNumberStart: 15
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 73
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]

View File

@ -55,9 +55,9 @@
; X86-NEXT: .long 2
; X86-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X86-NEXT: .long [[CALL_LINE]]-_f
; X86-NEXT: .long 4
; X86-NEXT: .long -2147483644
; X86-NEXT: .long [[RETURN_STMT]]-_f
; X86-NEXT: .long 5
; X86-NEXT: .long -2147483643
; X86-NEXT: .short 0
; X86-NEXT: .short 0
; X86-NEXT: .short 0
@ -107,14 +107,14 @@
; OBJ32-NEXT: +0x0 [
; OBJ32-NEXT: LineNumberStart: 4
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 0
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
; OBJ32-NEXT: +0x5 [
; OBJ32-NEXT: LineNumberStart: 5
; OBJ32-NEXT: LineNumberEndDelta: 0
; OBJ32-NEXT: IsStatement: No
; OBJ32-NEXT: IsStatement: Yes
; OBJ32-NEXT: ColStart: 0
; OBJ32-NEXT: ColEnd: 0
; OBJ32-NEXT: ]
@ -169,11 +169,11 @@
; X64-NEXT: .long 3
; X64-NEXT: .long [[FILE_SEGMENT_END:.*]]-[[FILE_SEGMENT_START]]
; X64-NEXT: .long [[START]]-f
; X64-NEXT: .long 3
; X64-NEXT: .long -2147483645
; X64-NEXT: .long [[CALL_LINE]]-f
; X64-NEXT: .long 4
; X64-NEXT: .long -2147483644
; X64-NEXT: .long [[EPILOG_AND_RET]]-f
; X64-NEXT: .long 5
; X64-NEXT: .long -2147483643
; X64-NEXT: .short 0
; X64-NEXT: .short 0
; X64-NEXT: .short 0
@ -225,21 +225,21 @@
; OBJ64-NEXT: +0x0 [
; OBJ64-NEXT: LineNumberStart: 3
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x4 [
; OBJ64-NEXT: LineNumberStart: 4
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]
; OBJ64-NEXT: +0x9 [
; OBJ64-NEXT: LineNumberStart: 5
; OBJ64-NEXT: LineNumberEndDelta: 0
; OBJ64-NEXT: IsStatement: No
; OBJ64-NEXT: IsStatement: Yes
; OBJ64-NEXT: ColStart: 0
; OBJ64-NEXT: ColEnd: 0
; OBJ64-NEXT: ]

View File

@ -30,7 +30,7 @@
; X86-NEXT: .long 1
; X86-NEXT: .long {{.*}}
; X86-NEXT: .long [[JMP_LINE]]-"?bar@@YAXHZZ"
; X86-NEXT: .long 4
; X86-NEXT: .long -2147483644
; X86-LABEL: .long 244