10 changes: 9 additions & 1 deletion llvm/test/CodeGen/PowerPC/ppc64-anyregcc.ll
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ target triple = "powerpc64-unknown-linux-gnu"
; CHECK-LABEL: .section .llvm_stackmaps
; CHECK-NEXT: __LLVM_StackMaps:
; Header
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; CHECK-NEXT: .byte 0
; CHECK-NEXT: .short 0
; Num Functions
Expand All @@ -44,20 +44,28 @@ target triple = "powerpc64-unknown-linux-gnu"
; Functions and stack size
; CHECK-NEXT: .quad test
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad property_access1
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad property_access2
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad property_access3
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad anyreg_test1
; CHECK-NEXT: .quad 144
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad anyreg_test2
; CHECK-NEXT: .quad 144
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad patchpoint_spilldef
; CHECK-NEXT: .quad 256
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad patchpoint_spillargs
; CHECK-NEXT: .quad 288
; CHECK-NEXT: .quad 1


; test
Expand Down
13 changes: 12 additions & 1 deletion llvm/test/CodeGen/PowerPC/ppc64-stackmap.ll
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ target triple = "powerpc64-unknown-linux-gnu"
; CHECK-LABEL: .section .llvm_stackmaps
; CHECK-NEXT: __LLVM_StackMaps:
; Header
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; CHECK-NEXT: .byte 0
; CHECK-NEXT: .short 0
; Num Functions
Expand All @@ -57,26 +57,37 @@ target triple = "powerpc64-unknown-linux-gnu"
; Functions and stack size
; CHECK-NEXT: .quad constantargs
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad osrinline
; CHECK-NEXT: .quad 144
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad osrcold
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad propertyRead
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad propertyWrite
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad jsVoidCall
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad jsIntCall
; CHECK-NEXT: .quad 128
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad spilledValue
; CHECK-NEXT: .quad 304
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad spilledStackMapValue
; CHECK-NEXT: .quad 224
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad liveConstant
; CHECK-NEXT: .quad 64
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad clobberLR
; CHECK-NEXT: .quad 208
; CHECK-NEXT: .quad 1

; Num LargeConstants
; CHECK-NEXT: .quad 4294967295
Expand Down
10 changes: 9 additions & 1 deletion llvm/test/CodeGen/X86/anyregcc.ll
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
; CHECK-LABEL: .section __LLVM_STACKMAPS,__llvm_stackmaps
; CHECK-NEXT: __LLVM_StackMaps:
; Header
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; CHECK-NEXT: .byte 0
; CHECK-NEXT: .short 0
; Num Functions
Expand All @@ -20,20 +20,28 @@
; Functions and stack size
; CHECK-NEXT: .quad _test
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _property_access1
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _property_access2
; CHECK-NEXT: .quad 24
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _property_access3
; CHECK-NEXT: .quad 24
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _anyreg_test1
; CHECK-NEXT: .quad 56
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _anyreg_test2
; CHECK-NEXT: .quad 56
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _patchpoint_spilldef
; CHECK-NEXT: .quad 56
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _patchpoint_spillargs
; CHECK-NEXT: .quad 88
; CHECK-NEXT: .quad 1

; No constants

Expand Down
2 changes: 1 addition & 1 deletion llvm/test/CodeGen/X86/patchpoint-invoke.ll
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ threw:
; Verify that the stackmap section got emitted:
; CHECK-LABEL: __LLVM_StackMaps:
; Header
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; CHECK-NEXT: .byte 0
; CHECK-NEXT: .short 0
; Num Functions
Expand Down
6 changes: 5 additions & 1 deletion llvm/test/CodeGen/X86/stackmap-fast-isel.ll
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
; CHECK-LABEL: .section __LLVM_STACKMAPS,__llvm_stackmaps
; CHECK-NEXT: __LLVM_StackMaps:
; Header
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; CHECK-NEXT: .byte 0
; CHECK-NEXT: .short 0
; Num Functions
Expand All @@ -17,12 +17,16 @@
; Functions and stack size
; CHECK-NEXT: .quad _constantargs
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _liveConstant
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _directFrameIdx
; CHECK-NEXT: .quad 40
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _longid
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 4

; Large Constants
; CHECK-NEXT: .quad 2147483648
Expand Down
4 changes: 3 additions & 1 deletion llvm/test/CodeGen/X86/stackmap-large-constants.ll
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
; CHECK-LABEL: .section __LLVM_STACKMAPS,__llvm_stackmaps
; CHECK-NEXT: __LLVM_StackMaps:
; version
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; reserved
; CHECK-NEXT: .byte 0
; reserved
Expand All @@ -17,9 +17,11 @@
; function address & stack size
; CHECK-NEXT: .quad _foo
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; function address & stack size
; CHECK-NEXT: .quad _bar
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1

; Constants Array:
; CHECK-NEXT: .quad 9223372036854775807
Expand Down
4 changes: 3 additions & 1 deletion llvm/test/CodeGen/X86/stackmap-liveness.ll
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
; CHECK-LABEL: .section __LLVM_STACKMAPS,__llvm_stackmaps
; CHECK-NEXT: __LLVM_StackMaps:
; Header
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; CHECK-NEXT: .byte 0
; CHECK-NEXT: .short 0
; Num Functions
Expand All @@ -19,8 +19,10 @@
; Functions and stack size
; CHECK-NEXT: .quad _stackmap_liveness
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 3
; CHECK-NEXT: .quad _mixed_liveness
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 2

define void @stackmap_liveness() {
entry:
Expand Down
18 changes: 17 additions & 1 deletion llvm/test/CodeGen/X86/stackmap.ll
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
; CHECK-LABEL: .section __LLVM_STACKMAPS,__llvm_stackmaps
; CHECK-NEXT: __LLVM_StackMaps:
; Header
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; CHECK-NEXT: .byte 0
; CHECK-NEXT: .short 0
; Num Functions
Expand All @@ -18,36 +18,52 @@
; Functions and stack size
; CHECK-NEXT: .quad _constantargs
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _osrinline
; CHECK-NEXT: .quad 24
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _osrcold
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _propertyRead
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _propertyWrite
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _jsVoidCall
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _jsIntCall
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _spilledValue
; CHECK-NEXT: .quad 56
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _spilledStackMapValue
; CHECK-NEXT: .quad 56
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _spillSubReg
; CHECK-NEXT: .quad 56
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _subRegOffset
; CHECK-NEXT: .quad 56
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _liveConstant
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _directFrameIdx
; CHECK-NEXT: .quad 56
; CHECK-NEXT: .quad 2
; CHECK-NEXT: .quad _longid
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 4
; CHECK-NEXT: .quad _clobberScratch
; CHECK-NEXT: .quad 56
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad _needsStackRealignment
; CHECK-NEXT: .quad -1
; CHECK-NEXT: .quad 1

; Large Constants
; CHECK-NEXT: .quad 2147483648
Expand Down
5 changes: 3 additions & 2 deletions llvm/test/CodeGen/X86/statepoint-allocas.ll
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ declare token @llvm.experimental.gc.statepoint.p0f_i1f(i64, i32, i1 ()*, i32, i3
; CHECK-LABEL: .section .llvm_stackmaps
; CHECK-NEXT: __LLVM_StackMaps:
; Header
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; CHECK-NEXT: .byte 0
; CHECK-NEXT: .short 0
; Num Functions
Expand All @@ -61,8 +61,10 @@ declare token @llvm.experimental.gc.statepoint.p0f_i1f(i64, i32, i1 ()*, i32, i3
; Functions and stack size
; CHECK-NEXT: .quad test
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad test2
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1

; Large Constants
; Statepoint ID only
Expand Down Expand Up @@ -127,4 +129,3 @@ declare token @llvm.experimental.gc.statepoint.p0f_i1f(i64, i32, i1 ()*, i32, i3
; CHECK: .short 0
; CHECK: .short 0
; CHECK: .p2align 3

6 changes: 4 additions & 2 deletions llvm/test/CodeGen/X86/statepoint-stackmap-format.ll
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ declare i32 addrspace(1)* @llvm.experimental.gc.relocate.p1i32(token, i32, i32)
; CHECK-LABEL: .section .llvm_stackmaps
; CHECK-NEXT: __LLVM_StackMaps:
; Header
; CHECK-NEXT: .byte 1
; CHECK-NEXT: .byte 2
; CHECK-NEXT: .byte 0
; CHECK-NEXT: .short 0
; Num Functions
Expand All @@ -92,10 +92,13 @@ declare i32 addrspace(1)* @llvm.experimental.gc.relocate.p1i32(token, i32, i32)
; Functions and stack size
; CHECK-NEXT: .quad test
; CHECK-NEXT: .quad 40
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad test_derived_arg
; CHECK-NEXT: .quad 40
; CHECK-NEXT: .quad 1
; CHECK-NEXT: .quad test_id
; CHECK-NEXT: .quad 8
; CHECK-NEXT: .quad 1

;
; test
Expand Down Expand Up @@ -276,4 +279,3 @@ declare i32 addrspace(1)* @llvm.experimental.gc.relocate.p1i32(token, i32, i32)
; CHECK: .short 0
; CHECK: .short 0
; CHECK: .p2align 3

Binary file modified llvm/test/Object/Inputs/stackmap-test.macho-x86-64
Binary file not shown.
182 changes: 170 additions & 12 deletions llvm/test/Object/stackmap-dump.test
Original file line number Diff line number Diff line change
@@ -1,16 +1,174 @@
RUN: llvm-readobj -stackmap %p/Inputs/stackmap-test.macho-x86-64 | FileCheck %s

CHECK: LLVM StackMap Version: 1
CHECK-NEXT: Num Functions: 1
CHECK-NEXT: Function address: 0, stack size: 16
CHECK-NEXT: Num Constants: 1
CHECK-NEXT: #1: 10000000000
CHECK-NEXT: Num Records: 1
CHECK-NEXT: Record ID: 2, instruction offset: 1
CHECK-NEXT: 5 locations:
; Note: the macho object file in this test was generated in the following way:
; llc -mtriple=x86_64-apple-darwin %p/test/CodeGen/X86/stackmap.ll -o stackmap.s
; clang -c stackmap.s -o %p/test/Object/Inputs/stackmap-test.macho-x86-64

CHECK: LLVM StackMap Version: 2
CHECK-NEXT: Num Functions: 16
CHECK-NEXT: Function address: 0, stack size: 8, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 24, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 8, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 8, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 8, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 8, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 8, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 56, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 56, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 56, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 56, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 8, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 56, callsite record count: 2
CHECK-NEXT: Function address: 0, stack size: 8, callsite record count: 4
CHECK-NEXT: Function address: 0, stack size: 56, callsite record count: 1
CHECK-NEXT: Function address: 0, stack size: 18446744073709551615, callsite record count: 1
CHECK-NEXT: Num Constants: 3
CHECK-NEXT: #1: 2147483648
CHECK-NEXT: #2: 4294967295
CHECK-NEXT: #3: 4294967296
CHECK-NEXT: Num Records: 20
CHECK-NEXT: Record ID: 1, instruction offset: 4
CHECK-NEXT: 12 locations:
CHECK-NEXT: #1: Constant 4294967295
CHECK-NEXT: #2: Constant 4294967295
CHECK-NEXT: #3: Constant 65536
CHECK-NEXT: #4: Constant 2000000000
CHECK-NEXT: #5: Constant 2147483647
CHECK-NEXT: #6: Constant 4294967295
CHECK-NEXT: #7: Constant 4294967295
CHECK-NEXT: #8: Constant 0
CHECK-NEXT: #9: ConstantIndex #0 (2147483648)
CHECK-NEXT: #10: ConstantIndex #1 (4294967295)
CHECK-NEXT: #11: ConstantIndex #2 (4294967296)
CHECK-NEXT: #12: Constant 4294967295
CHECK-NEXT: 1 live-outs: [ R#7 (8-bytes) ]

CHECK: Record ID: 3, instruction offset: 22
CHECK-NEXT: 2 locations:
CHECK-NEXT: #1: Register R#3
CHECK-NEXT: #2: Register R#14
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 4, instruction offset: 10
CHECK-NEXT: 2 locations:
CHECK-NEXT: #1: Register R#5
CHECK-NEXT: #2: Constant 10
CHECK-NEXT: #3: ConstantIndex #0 (10000000000)
CHECK-NEXT: #4: Direct R#4 + -8
CHECK-NEXT: #5: Indirect [R#6 + -16]
CHECK-NEXT: #2: Register R#4
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 5, instruction offset: 4
CHECK-NEXT: 2 locations:
CHECK-NEXT: #1: Register R#0
CHECK-NEXT: #2: Register R#5
CHECK-NEXT: 2 live-outs: [ R#0 (8-bytes) R#7 (8-bytes) ]

CHECK: Record ID: 6, instruction offset: 4
CHECK-NEXT: 2 locations:
CHECK-NEXT: #1: Register R#4
CHECK-NEXT: #2: Register R#2
CHECK-NEXT: 1 live-outs: [ R#7 (8-bytes) ]

CHECK: Record ID: 7, instruction offset: 10
CHECK-NEXT: 2 locations:
CHECK-NEXT: #1: Register R#2
CHECK-NEXT: #2: Register R#8
CHECK-NEXT: 1 live-outs: [ R#7 (8-bytes) ]

CHECK: Record ID: 8, instruction offset: 10
CHECK-NEXT: 2 locations:
CHECK-NEXT: #1: Register R#2
CHECK-NEXT: #2: Register R#8
CHECK-NEXT: 2 live-outs: [ R#0 (8-bytes) R#7 (8-bytes) ]

CHECK: Record ID: 11, instruction offset: 42
CHECK-NEXT: 17 locations:
CHECK-NEXT: #1: Register R#9
CHECK-NEXT: #2: Register R#14
CHECK-NEXT: #3: Register R#10
CHECK-NEXT: #4: Register R#3
CHECK-NEXT: #5: Register R#0
CHECK-NEXT: #6: Register R#13
CHECK-NEXT: #7: Register R#12
CHECK-NEXT: #8: Register R#15
CHECK-NEXT: #9: Indirect [R#6 + 72]
CHECK-NEXT: #10: Indirect [R#6 + 80]
CHECK-NEXT: #11: Indirect [R#6 + 88]
CHECK-NEXT: #12: Indirect [R#6 + 96]
CHECK-NEXT: #13: Indirect [R#6 + 104]
CHECK-NEXT: #14: Indirect [R#6 + 112]
CHECK-NEXT: #15: Indirect [R#6 + 120]
CHECK-NEXT: #16: Indirect [R#6 + 128]
CHECK-NEXT: #17: Indirect [R#6 + 136]
CHECK-NEXT: 1 live-outs: [ R#7 (8-bytes) ]

CHECK: Record ID: 12, instruction offset: 62
CHECK-NEXT: 17 locations:
CHECK-NEXT: #1: Register R#0
CHECK-NEXT: #2: Register R#14
CHECK-NEXT: #3: Register R#10
CHECK-NEXT: #4: Register R#9
CHECK-NEXT: #5: Register R#8
CHECK-NEXT: #6: Register R#4
CHECK-NEXT: #7: Register R#1
CHECK-NEXT: #8: Register R#2
CHECK-NEXT: #9: Register R#5
CHECK-NEXT: #10: Register R#3
CHECK-NEXT: #11: Register R#13
CHECK-NEXT: #12: Register R#12
CHECK-NEXT: #13: Register R#15
CHECK-NEXT: #14: Indirect [R#6 + 112]
CHECK-NEXT: #15: Indirect [R#6 + 120]
CHECK-NEXT: #16: Indirect [R#6 + 128]
CHECK-NEXT: #17: Indirect [R#6 + 136]
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 13, instruction offset: 50
CHECK-NEXT: 1 locations:
CHECK-NEXT: #1: Indirect [R#6 + -48]
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 14, instruction offset: 24
CHECK-NEXT: 2 locations:
CHECK-NEXT: #1: Register R#0
CHECK-NEXT: #2: Register R#3
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 15, instruction offset: 4
CHECK-NEXT: 1 locations:
CHECK-NEXT: #1: Constant 33
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 16, instruction offset: 32
CHECK-NEXT: 1 locations:
CHECK-NEXT: #1: Direct R#6 + -32
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 17, instruction offset: 32
CHECK-NEXT: 2 locations:
CHECK-NEXT: #1: Direct R#6 + -8
CHECK-NEXT: #2: Direct R#6 + -40
CHECK-NEXT: 1 live-outs: [ R#7 (8-bytes) ]

CHECK: Record ID: 4294967295, instruction offset: 4
CHECK-NEXT: 0 locations:
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 4294967296, instruction offset: 4
CHECK-NEXT: 0 locations:
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 9223372036854775807, instruction offset: 4
CHECK-NEXT: 0 locations:
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 18446744073709551615, instruction offset: 4
CHECK-NEXT: 0 locations:
CHECK-NEXT: 1 live-outs: [ R#7 (8-bytes) ]

CHECK: Record ID: 16, instruction offset: 18
CHECK-NEXT: 1 locations:
CHECK-NEXT: #1: Indirect [R#6 + -44]
CHECK-NEXT: 0 live-outs: [ ]

CHECK: Record ID: 0, instruction offset: 26
CHECK-NEXT: 0 locations:
CHECK-NEXT: 0 live-outs: [ ]
4 changes: 2 additions & 2 deletions llvm/tools/llvm-readobj/COFFDumper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1527,10 +1527,10 @@ void COFFDumper::printStackMap() const {
if (Obj->isLittleEndian())
prettyPrintStackMap(
llvm::outs(),
StackMapV1Parser<support::little>(StackMapContentsArray));
StackMapV2Parser<support::little>(StackMapContentsArray));
else
prettyPrintStackMap(llvm::outs(),
StackMapV1Parser<support::big>(StackMapContentsArray));
StackMapV2Parser<support::big>(StackMapContentsArray));
}

void llvm::dumpCodeViewMergedTypes(
Expand Down
2 changes: 1 addition & 1 deletion llvm/tools/llvm-readobj/ELFDumper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2366,7 +2366,7 @@ template <class ELFT> void ELFDumper<ELFT>::printStackMap() const {
ArrayRef<uint8_t> StackMapContentsArray =
unwrapOrError(Obj->getSectionContents(StackMapSection));

prettyPrintStackMap(llvm::outs(), StackMapV1Parser<ELFT::TargetEndianness>(
prettyPrintStackMap(llvm::outs(), StackMapV2Parser<ELFT::TargetEndianness>(
StackMapContentsArray));
}

Expand Down
4 changes: 2 additions & 2 deletions llvm/tools/llvm-readobj/MachODumper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -669,10 +669,10 @@ void MachODumper::printStackMap() const {
if (Obj->isLittleEndian())
prettyPrintStackMap(
llvm::outs(),
StackMapV1Parser<support::little>(StackMapContentsArray));
StackMapV2Parser<support::little>(StackMapContentsArray));
else
prettyPrintStackMap(llvm::outs(),
StackMapV1Parser<support::big>(StackMapContentsArray));
StackMapV2Parser<support::big>(StackMapContentsArray));
}

void MachODumper::printMachODataInCode() {
Expand Down
3 changes: 2 additions & 1 deletion llvm/tools/llvm-readobj/StackMapPrinter.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ void prettyPrintStackMap(OStreamT &OS, const StackMapParserT &SMP) {
// Functions:
for (const auto &F : SMP.functions())
OS << "\n Function address: " << F.getFunctionAddress()
<< ", stack size: " << F.getStackSize();
<< ", stack size: " << F.getStackSize()
<< ", callsite record count: " << F.getRecordCount();

// Constants:
OS << "\nNum Constants: " << SMP.getNumConstants();
Expand Down