CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
119 lines
4.2 KiB
YAML
119 lines
4.2 KiB
YAML
# RUN: yaml2obj %s -o %t.obj
|
|
# RUN: llvm-readobj --unwind %t.obj | FileCheck %s
|
|
|
|
## T14: V3 unwind info in a relocatable object file (.obj).
|
|
## This tests the relocation-based resolution path where .pdata fields
|
|
## are zero and relocations point to the actual symbols.
|
|
##
|
|
## Uses the same V3 xdata as T2 (single epilog mirroring prolog):
|
|
## .xdata = 030B0823070200181400000006000405 38343C00
|
|
##
|
|
## .pdata layout (12 bytes, all zeros — resolved via relocations):
|
|
## +0: 00000000 StartAddress → reloc to func
|
|
## +4: 00000000 EndAddress → reloc to func (addend 0x20 in SectionData)
|
|
## +8: 00000000 UnwindInfoOffset → reloc to .xdata
|
|
|
|
# CHECK-LABEL: UnwindInformation [
|
|
# CHECK-NEXT: RuntimeFunction {
|
|
# CHECK-NEXT: StartAddress: func
|
|
# CHECK: EndAddress: func +0x20
|
|
# CHECK: UnwindInfoAddress: .xdata
|
|
# CHECK: UnwindInfo {
|
|
# CHECK-NEXT: Version: 3
|
|
# CHECK-NEXT: Flags [ (0x0)
|
|
# CHECK-NEXT: ]
|
|
# CHECK-NEXT: SizeOfProlog: 0xB
|
|
# CHECK-NEXT: PayloadWords: 8
|
|
# CHECK-NEXT: NumberOfOps: 3
|
|
# CHECK-NEXT: NumberOfEpilogs: 1
|
|
# CHECK-NEXT: Prolog [3 ops]:
|
|
# CHECK-NEXT: [0] IP +0x0007: ALLOC_SMALL Size=0x20
|
|
# CHECK-NEXT: [1] IP +0x0002: PUSH Reg=RSI
|
|
# CHECK-NEXT: [2] IP +0x0000: PUSH Reg=RDI
|
|
# CHECK-NEXT: Epilog [0] {
|
|
# CHECK-NEXT: Flags [ (0x0)
|
|
# CHECK-NEXT: ]
|
|
# CHECK-NEXT: EpilogOffset: +0x14
|
|
# CHECK-NEXT: NumberOfOps: 3
|
|
# CHECK-NEXT: FirstOp: 0x0
|
|
# CHECK-NEXT: IpOffsetOfLastInstruction: 0x6
|
|
# CHECK-NEXT: [0] IP +0x0000: ALLOC_SMALL Size=0x20
|
|
# CHECK-NEXT: [1] IP +0x0004: PUSH Reg=RSI
|
|
# CHECK-NEXT: [2] IP +0x0005: PUSH Reg=RDI
|
|
# CHECK-NEXT: }
|
|
# CHECK-NEXT: }
|
|
# CHECK-NEXT: }
|
|
# CHECK-NEXT: ]
|
|
|
|
--- !COFF
|
|
header:
|
|
Machine: IMAGE_FILE_MACHINE_AMD64
|
|
Characteristics: [ ]
|
|
sections:
|
|
- Name: .text
|
|
Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
|
|
Alignment: 16
|
|
SectionData: '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
|
|
- Name: .xdata
|
|
Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
|
|
Alignment: 4
|
|
SectionData: '030B082307020018140000000600040538343C00'
|
|
- Name: .pdata
|
|
Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
|
|
Alignment: 4
|
|
SectionData: '000000002000000000000000'
|
|
Relocations:
|
|
- VirtualAddress: 0
|
|
SymbolName: func
|
|
Type: IMAGE_REL_AMD64_ADDR32NB
|
|
- VirtualAddress: 4
|
|
SymbolName: func
|
|
Type: IMAGE_REL_AMD64_ADDR32NB
|
|
- VirtualAddress: 8
|
|
SymbolName: .xdata
|
|
Type: IMAGE_REL_AMD64_ADDR32NB
|
|
symbols:
|
|
- Name: .text
|
|
Value: 0
|
|
SectionNumber: 1
|
|
SimpleType: IMAGE_SYM_TYPE_NULL
|
|
ComplexType: IMAGE_SYM_DTYPE_NULL
|
|
StorageClass: IMAGE_SYM_CLASS_STATIC
|
|
SectionDefinition:
|
|
Length: 64
|
|
NumberOfRelocations: 0
|
|
NumberOfLinenumbers: 0
|
|
CheckSum: 0
|
|
Number: 0
|
|
- Name: .xdata
|
|
Value: 0
|
|
SectionNumber: 2
|
|
SimpleType: IMAGE_SYM_TYPE_NULL
|
|
ComplexType: IMAGE_SYM_DTYPE_NULL
|
|
StorageClass: IMAGE_SYM_CLASS_STATIC
|
|
SectionDefinition:
|
|
Length: 20
|
|
NumberOfRelocations: 0
|
|
NumberOfLinenumbers: 0
|
|
CheckSum: 0
|
|
Number: 0
|
|
- Name: .pdata
|
|
Value: 0
|
|
SectionNumber: 3
|
|
SimpleType: IMAGE_SYM_TYPE_NULL
|
|
ComplexType: IMAGE_SYM_DTYPE_NULL
|
|
StorageClass: IMAGE_SYM_CLASS_STATIC
|
|
SectionDefinition:
|
|
Length: 12
|
|
NumberOfRelocations: 3
|
|
NumberOfLinenumbers: 0
|
|
CheckSum: 0
|
|
Number: 0
|
|
- Name: func
|
|
Value: 0
|
|
SectionNumber: 1
|
|
SimpleType: IMAGE_SYM_TYPE_NULL
|
|
ComplexType: IMAGE_SYM_DTYPE_FUNCTION
|
|
StorageClass: IMAGE_SYM_CLASS_EXTERNAL
|
|
...
|