[llvm] r314690 - CodeView symbol dumper: use symbolic names for registers
Hans Wennborg via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 2 10:44:48 PDT 2017
Author: hans
Date: Mon Oct 2 10:44:47 2017
New Revision: 314690
URL: http://llvm.org/viewvc/llvm-project?rev=314690&view=rev
Log:
CodeView symbol dumper: use symbolic names for registers
https://reviews.llvm.org/D38469
Modified:
llvm/trunk/lib/DebugInfo/CodeView/SymbolDumper.cpp
llvm/trunk/test/DebugInfo/COFF/fp-stack.ll
llvm/trunk/test/DebugInfo/COFF/local-variable-gap.ll
llvm/trunk/test/DebugInfo/COFF/local-variables.ll
llvm/trunk/test/DebugInfo/COFF/pieces.ll
llvm/trunk/test/DebugInfo/COFF/register-variables.ll
llvm/trunk/test/DebugInfo/COFF/types-array.ll
llvm/trunk/test/DebugInfo/X86/dbg-declare-inalloca.ll
llvm/trunk/test/MC/COFF/cv-def-range-gap.s
Modified: llvm/trunk/lib/DebugInfo/CodeView/SymbolDumper.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/CodeView/SymbolDumper.cpp?rev=314690&r1=314689&r2=314690&view=diff
==============================================================================
--- llvm/trunk/lib/DebugInfo/CodeView/SymbolDumper.cpp (original)
+++ llvm/trunk/lib/DebugInfo/CodeView/SymbolDumper.cpp Mon Oct 2 10:44:47 2017
@@ -317,7 +317,8 @@ Error CVSymbolDumperImpl::visitKnownReco
Error CVSymbolDumperImpl::visitKnownRecord(
CVSymbol &CVR, DefRangeRegisterRelSym &DefRangeRegisterRel) {
- W.printNumber("BaseRegister", DefRangeRegisterRel.Hdr.Register);
+ W.printEnum("BaseRegister", uint16_t(DefRangeRegisterRel.Hdr.Register),
+ getRegisterNames());
W.printBoolean("HasSpilledUDTMember",
DefRangeRegisterRel.hasSpilledUDTMember());
W.printNumber("OffsetInParent", DefRangeRegisterRel.offsetInParent());
@@ -330,7 +331,8 @@ Error CVSymbolDumperImpl::visitKnownReco
Error CVSymbolDumperImpl::visitKnownRecord(
CVSymbol &CVR, DefRangeRegisterSym &DefRangeRegister) {
- W.printNumber("Register", DefRangeRegister.Hdr.Register);
+ W.printEnum("Register", uint16_t(DefRangeRegister.Hdr.Register),
+ getRegisterNames());
W.printNumber("MayHaveNoName", DefRangeRegister.Hdr.MayHaveNoName);
printLocalVariableAddrRange(DefRangeRegister.Range,
DefRangeRegister.getRelocationOffset());
@@ -340,7 +342,8 @@ Error CVSymbolDumperImpl::visitKnownReco
Error CVSymbolDumperImpl::visitKnownRecord(
CVSymbol &CVR, DefRangeSubfieldRegisterSym &DefRangeSubfieldRegister) {
- W.printNumber("Register", DefRangeSubfieldRegister.Hdr.Register);
+ W.printEnum("Register", uint16_t(DefRangeSubfieldRegister.Hdr.Register),
+ getRegisterNames());
W.printNumber("MayHaveNoName", DefRangeSubfieldRegister.Hdr.MayHaveNoName);
W.printNumber("OffsetInParent", DefRangeSubfieldRegister.Hdr.OffsetInParent);
printLocalVariableAddrRange(DefRangeSubfieldRegister.Range,
@@ -393,7 +396,7 @@ Error CVSymbolDumperImpl::visitKnownReco
FrameCookie.getRelocationOffset(),
FrameCookie.CodeOffset, &LinkageName);
}
- W.printHex("Register", FrameCookie.Register);
+ W.printEnum("Register", uint16_t(FrameCookie.Register), getRegisterNames());
W.printEnum("CookieKind", uint16_t(FrameCookie.CookieKind),
getFrameCookieKindNames());
W.printHex("Flags", FrameCookie.Flags);
Modified: llvm/trunk/test/DebugInfo/COFF/fp-stack.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/fp-stack.ll?rev=314690&r1=314689&r2=314690&view=diff
==============================================================================
--- llvm/trunk/test/DebugInfo/COFF/fp-stack.ll (original)
+++ llvm/trunk/test/DebugInfo/COFF/fp-stack.ll Mon Oct 2 10:44:47 2017
@@ -12,7 +12,7 @@ entry:
; ASM: .cv_def_range Lfunc_begin0 Lfunc_end0, "A\021\200\000\000\000"
; OBJ: DefRangeRegisterSym {
-; OBJ: Register: 128
+; OBJ: Register: 0x80
; OBJ: MayHaveNoName: 0
; OBJ: LocalVariableAddrRange {
; OBJ: OffsetStart: .text+0x0
Modified: llvm/trunk/test/DebugInfo/COFF/local-variable-gap.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/local-variable-gap.ll?rev=314690&r1=314689&r2=314690&view=diff
==============================================================================
--- llvm/trunk/test/DebugInfo/COFF/local-variable-gap.ll (original)
+++ llvm/trunk/test/DebugInfo/COFF/local-variable-gap.ll Mon Oct 2 10:44:47 2017
@@ -73,7 +73,7 @@
; OBJ-NOT: LocalSym {
; OBJ: DefRangeRegisterSym {
; OBJ-NEXT: Kind:
-; OBJ-NEXT: Register: 23
+; OBJ-NEXT: Register: ESI (0x17)
; OBJ-NEXT: MayHaveNoName: 0
; OBJ-NEXT: LocalVariableAddrRange {
; OBJ-NEXT: OffsetStart: .text+0x{{.*}}
Modified: llvm/trunk/test/DebugInfo/COFF/local-variables.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/local-variables.ll?rev=314690&r1=314689&r2=314690&view=diff
==============================================================================
--- llvm/trunk/test/DebugInfo/COFF/local-variables.ll (original)
+++ llvm/trunk/test/DebugInfo/COFF/local-variables.ll Mon Oct 2 10:44:47 2017
@@ -111,7 +111,7 @@
; OBJ: VarName: param
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 335
+; OBJ: BaseRegister: RSP (0x14F)
; OBJ: HasSpilledUDTMember: No
; OBJ: OffsetInParent: 0
; OBJ: BasePointerOffset: 52
@@ -128,7 +128,7 @@
; OBJ: VarName: a
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 335
+; OBJ: BaseRegister: RSP (0x14F)
; OBJ: HasSpilledUDTMember: No
; OBJ: OffsetInParent: 0
; OBJ: BasePointerOffset: 40
@@ -145,7 +145,7 @@
; OBJ: VarName: b
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 335
+; OBJ: BaseRegister: RSP (0x14F)
; OBJ: HasSpilledUDTMember: No
; OBJ: OffsetInParent: 0
; OBJ: BasePointerOffset: 36
@@ -173,7 +173,7 @@
; OBJ: VarName: v
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 335
+; OBJ: BaseRegister: RSP (0x14F)
; OBJ: HasSpilledUDTMember: No
; OBJ: OffsetInParent: 0
; OBJ: BasePointerOffset: 44
@@ -203,7 +203,7 @@
; OBJ: VarName: v
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 335
+; OBJ: BaseRegister: RSP (0x14F)
; OBJ: HasSpilledUDTMember: No
; OBJ: OffsetInParent: 0
; OBJ: BasePointerOffset: 48
Modified: llvm/trunk/test/DebugInfo/COFF/pieces.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/pieces.ll?rev=314690&r1=314689&r2=314690&view=diff
==============================================================================
--- llvm/trunk/test/DebugInfo/COFF/pieces.ll (original)
+++ llvm/trunk/test/DebugInfo/COFF/pieces.ll Mon Oct 2 10:44:47 2017
@@ -113,14 +113,14 @@
; OBJ: VarName: o
; OBJ: }
; OBJ: DefRangeSubfieldRegisterSym {
-; OBJ: Register: 24
+; OBJ: Register: EDI (0x18)
; OBJ: MayHaveNoName: 0
; OBJ: OffsetInParent: 0
; OBJ: LocalVariableAddrRange {
; OBJ: }
; OBJ: }
; OBJ: DefRangeSubfieldRegisterSym {
-; OBJ: Register: 23
+; OBJ: Register: ESI (0x17)
; OBJ: MayHaveNoName: 0
; OBJ: OffsetInParent: 4
; OBJ: LocalVariableAddrRange {
@@ -143,7 +143,7 @@
; OBJ: VarName: o
; OBJ: }
; OBJ: DefRangeSubfieldRegisterSym {
-; OBJ: Register: 18
+; OBJ: Register: ECX (0x12)
; OBJ: MayHaveNoName: 0
; OBJ: OffsetInParent: 4
; OBJ: LocalVariableAddrRange {
@@ -166,7 +166,7 @@
; OBJ: VarName: o
; OBJ: }
; OBJ: DefRangeSubfieldRegisterSym {
-; OBJ: Register: 18
+; OBJ: Register: ECX (0x12)
; OBJ: MayHaveNoName: 0
; OBJ: OffsetInParent: 0
; OBJ: LocalVariableAddrRange {
@@ -193,7 +193,7 @@
; OBJ: VarName: o
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 330
+; OBJ: BaseRegister: RCX (0x14A)
; OBJ: HasSpilledUDTMember: No
; OBJ: OffsetInParent: 0
; OBJ: BasePointerOffset: 0
@@ -204,7 +204,7 @@
; OBJ: VarName: p
; OBJ: }
; OBJ: DefRangeSubfieldRegisterSym {
-; OBJ: Register: 17
+; OBJ: Register: EAX (0x11)
; OBJ: MayHaveNoName: 0
; OBJ: OffsetInParent: 4
; OBJ: LocalVariableAddrRange {
@@ -228,7 +228,7 @@
; OBJ: VarName: o
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 335
+; OBJ: BaseRegister: RSP (0x14F)
; OBJ: HasSpilledUDTMember: Yes
; OBJ: OffsetInParent: 4
; OBJ: BasePointerOffset: 36
Modified: llvm/trunk/test/DebugInfo/COFF/register-variables.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/register-variables.ll?rev=314690&r1=314689&r2=314690&view=diff
==============================================================================
--- llvm/trunk/test/DebugInfo/COFF/register-variables.ll (original)
+++ llvm/trunk/test/DebugInfo/COFF/register-variables.ll Mon Oct 2 10:44:47 2017
@@ -92,7 +92,7 @@
; OBJ: VarName: p
; OBJ: }
; OBJ: DefRangeRegisterSym {
-; OBJ: Register: 18
+; OBJ: Register: ECX (0x12)
; OBJ: LocalVariableAddrRange {
; OBJ: OffsetStart: .text+0x0
; OBJ: ISectStart: 0x0
@@ -100,7 +100,7 @@
; OBJ: }
; OBJ: }
; OBJ: DefRangeRegisterSym {
-; OBJ: Register: 23
+; OBJ: Register: ESI (0x17)
; OBJ: LocalVariableAddrRange {
; OBJ: OffsetStart: .text+0x7
; OBJ: ISectStart: 0x0
@@ -114,7 +114,7 @@
; OBJ: VarName: a
; OBJ: }
; OBJ: DefRangeRegisterSym {
-; OBJ: Register: 17
+; OBJ: Register: EAX (0x11)
; OBJ: LocalVariableAddrRange {
; OBJ: OffsetStart: .text+0xC
; OBJ: ISectStart: 0x0
@@ -128,7 +128,7 @@
; OBJ: VarName: c
; OBJ: }
; OBJ: DefRangeRegisterSym {
-; OBJ: Register: 17
+; OBJ: Register: EAX (0x11)
; OBJ: LocalVariableAddrRange {
; OBJ: OffsetStart: .text+0xC
; OBJ: ISectStart: 0x0
@@ -142,7 +142,7 @@
; OBJ: VarName: b
; OBJ: }
; OBJ: DefRangeRegisterSym {
-; OBJ: Register: 17
+; OBJ: Register: EAX (0x11)
; OBJ: MayHaveNoName: 0
; OBJ: OffsetStart: .text+0x13
; OBJ: ISectStart: 0x0
@@ -162,7 +162,7 @@
; OBJ: VarName: a
; OBJ: }
; OBJ: DefRangeRegisterSym {
-; OBJ: Register: 17
+; OBJ: Register: EAX (0x11)
; OBJ: LocalVariableAddrRange {
; OBJ: OffsetStart: .text+0xC
; OBJ: ISectStart: 0x0
@@ -176,7 +176,7 @@
; OBJ: VarName: b
; OBJ: }
; OBJ: DefRangeRegisterSym {
-; OBJ: Register: 17
+; OBJ: Register: EAX (0x11)
; OBJ: LocalVariableAddrRange {
; OBJ: OffsetStart: .text+0x13
; OBJ: ISectStart: 0x0
Modified: llvm/trunk/test/DebugInfo/COFF/types-array.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/COFF/types-array.ll?rev=314690&r1=314689&r2=314690&view=diff
==============================================================================
--- llvm/trunk/test/DebugInfo/COFF/types-array.ll (original)
+++ llvm/trunk/test/DebugInfo/COFF/types-array.ll Mon Oct 2 10:44:47 2017
@@ -68,7 +68,7 @@
; CHECK: VarName: a
; CHECK: }
; CHECK: DefRangeRegisterRelSym {
-; CHECK: BaseRegister: 22
+; CHECK: BaseRegister: EBP (0x16)
; CHECK: HasSpilledUDTMember: No
; CHECK: OffsetInParent: 0
; CHECK: BasePointerOffset: -20
Modified: llvm/trunk/test/DebugInfo/X86/dbg-declare-inalloca.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/dbg-declare-inalloca.ll?rev=314690&r1=314689&r2=314690&view=diff
==============================================================================
--- llvm/trunk/test/DebugInfo/X86/dbg-declare-inalloca.ll (original)
+++ llvm/trunk/test/DebugInfo/X86/dbg-declare-inalloca.ll Mon Oct 2 10:44:47 2017
@@ -67,7 +67,7 @@
; OBJ: VarName: a
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 21
+; OBJ: BaseRegister: ESP (0x15)
; OBJ: BasePointerOffset: 12
; OBJ: }
; OBJ: LocalSym {
@@ -78,7 +78,7 @@
; OBJ: VarName: b
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 21
+; OBJ: BaseRegister: ESP (0x15)
; OBJ: BasePointerOffset: 16
; OBJ: }
; FIXME: Retain unused.
@@ -90,7 +90,7 @@
; OBJ: VarName: c
; OBJ: }
; OBJ: DefRangeRegisterRelSym {
-; OBJ: BaseRegister: 21
+; OBJ: BaseRegister: ESP (0x15)
; OBJ: BasePointerOffset: 24
; OBJ: }
; OBJ-LABEL: ProcEnd {
Modified: llvm/trunk/test/MC/COFF/cv-def-range-gap.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/COFF/cv-def-range-gap.s?rev=314690&r1=314689&r2=314690&view=diff
==============================================================================
--- llvm/trunk/test/MC/COFF/cv-def-range-gap.s (original)
+++ llvm/trunk/test/MC/COFF/cv-def-range-gap.s Mon Oct 2 10:44:47 2017
@@ -9,7 +9,7 @@
# CHECK-NOT: LocalSym {
# CHECK: DefRangeRegisterSym {
# CHECK-NEXT: Kind: S_DEFRANGE_REGISTER (0x1141)
-# CHECK-NEXT: Register: 23
+# CHECK-NEXT: Register: ESI (0x17)
# CHECK-NEXT: MayHaveNoName: 0
# CHECK-NEXT: LocalVariableAddrRange {
# CHECK-NEXT: OffsetStart: .text+0x5
@@ -23,7 +23,7 @@
# CHECK-NEXT: }
# CHECK-NEXT: DefRangeRegisterSym {
# CHECK-NEXT: Kind: S_DEFRANGE_REGISTER (0x1141)
-# CHECK-NEXT: Register: 23
+# CHECK-NEXT: Register: ESI (0x17)
# CHECK-NEXT: MayHaveNoName: 0
# CHECK-NEXT: LocalVariableAddrRange {
# CHECK-NEXT: OffsetStart: .text+0x10015
@@ -33,7 +33,7 @@
# CHECK-NEXT: }
# CHECK-NEXT: DefRangeRegisterSym {
# CHECK-NEXT: Kind: S_DEFRANGE_REGISTER (0x1141)
-# CHECK-NEXT: Register: 23
+# CHECK-NEXT: Register: ESI (0x17)
# CHECK-NEXT: MayHaveNoName: 0
# CHECK-NEXT: LocalVariableAddrRange {
# CHECK-NEXT: OffsetStart: .text+0x2001B
@@ -43,7 +43,7 @@
# CHECK-NEXT: }
# CHECK-NEXT: DefRangeRegisterSym {
# CHECK-NEXT: Kind: S_DEFRANGE_REGISTER (0x1141)
-# CHECK-NEXT: Register: 23
+# CHECK-NEXT: Register: ESI (0x17)
# CHECK-NEXT: MayHaveNoName: 0
# CHECK-NEXT: LocalVariableAddrRange {
# CHECK-NEXT: OffsetStart: .text+0x2001C
More information about the llvm-commits
mailing list