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
266 lines
7.5 KiB
YAML
266 lines
7.5 KiB
YAML
## Test that in the presence of SHT_LLVM_BB_ADDR_MAP sections,
|
|
## --symbolize-operands can display <BB*> labels.
|
|
|
|
## Executable object file with separate SHT_LLVM_BB_ADDR_MAP sections for multiple text sections.
|
|
## RUN: yaml2obj --docnum=1 %s -o %t1
|
|
## RUN: llvm-objdump %t1 -d --symbolize-operands -M intel --no-show-raw-insn --no-leading-addr | \
|
|
## RUN: FileCheck %s --match-full-lines --check-prefixes=INTEL
|
|
## RUN: llvm-objdump %t1 -d --symbolize-operands -M att --no-show-raw-insn --no-leading-addr | \
|
|
## RUN: FileCheck %s --match-full-lines --check-prefixes=ATT
|
|
|
|
## Executable object file with a single SHT_LLVM_BB_ADDR_MAP for multiple text sections.
|
|
# RUN: yaml2obj --docnum=2 %s -o %t2
|
|
# RUN: llvm-objdump %t2 -d --symbolize-operands -M intel --no-show-raw-insn --no-leading-addr | \
|
|
# RUN: FileCheck %s --match-full-lines --check-prefixes=INTEL
|
|
# RUN: llvm-objdump %t2 -d --symbolize-operands -M att --no-show-raw-insn --no-leading-addr | \
|
|
# RUN: FileCheck %s --match-full-lines --check-prefixes=ATT
|
|
|
|
## Expect to find the branch and basic block labels and global variable name.
|
|
# ATT: <foo>:
|
|
# ATT-NEXT: <BB3>:
|
|
# ATT-NEXT: pushq %rax
|
|
# ATT-NEXT: <BB1>:
|
|
# ATT-NEXT: cmpl , %eax <symbol>
|
|
# ATT-NEXT: nop
|
|
# ATT-NEXT: <BB2>:
|
|
# ATT-NEXT: jge <BB5>
|
|
# ATT-NEXT: jmp <BB1>
|
|
# ATT-NEXT: <BB4>:
|
|
# ATT-NEXT: jge <foo.cold>
|
|
# ATT-NEXT: <BB5>:
|
|
# ATT-NEXT: retq
|
|
# ATT: <bar>:
|
|
# ATT-NEXT: <BB0>:
|
|
# ATT-NEXT: pushq %rax
|
|
# ATT-NEXT: movl %edx, %eax
|
|
# ATT-NEXT: je <BB4>
|
|
# ATT-NEXT: <BB2>:
|
|
# ATT-NEXT: xorl %esi, %esi
|
|
# ATT-NEXT: <BB4>:
|
|
# ATT-NEXT: callq <bar>
|
|
# ATT-NEXT: retq
|
|
# ATT: <foo.cold>:
|
|
# ATT-NEXT: <BB6>:
|
|
# ATT-NEXT: retq
|
|
|
|
# INTEL: <foo>:
|
|
# INTEL-NEXT: <BB3>:
|
|
# INTEL-NEXT: push rax
|
|
# INTEL-NEXT: <BB1>:
|
|
# INTEL-NEXT: cmp eax, dword ptr <symbol>
|
|
# INTEL-NEXT: nop
|
|
# INTEL-NEXT: <BB2>:
|
|
# INTEL-NEXT: jge <BB5>
|
|
# INTEL-NEXT: jmp <BB1>
|
|
# INTEL-NEXT: <BB4>:
|
|
# INTEL-NEXT: jge <foo.cold>
|
|
# INTEL-NEXT: <BB5>:
|
|
# INTEL-NEXT: ret
|
|
# INTEL: <bar>:
|
|
# INTEL-NEXT: <BB0>:
|
|
# INTEL-NEXT: push rax
|
|
# INTEL-NEXT: mov eax, edx
|
|
# INTEL-NEXT: je <BB4>
|
|
# INTEL-NEXT: <BB2>:
|
|
# INTEL-NEXT: xor esi, esi
|
|
# INTEL-NEXT: <BB4>:
|
|
# INTEL-NEXT: call <bar>
|
|
# INTEL-NEXT: ret
|
|
# INTEL: <foo.cold>:
|
|
# INTEL-NEXT: <BB6>:
|
|
# INTEL-NEXT: ret
|
|
|
|
## This object file contains a separate text section and SHT_LLVM_BB_ADDR_MAP
|
|
## section for each of the two functions foo and bar.
|
|
## This is used to test --symbolize-operands on reloctable and non-relocotable
|
|
## object files.
|
|
--- !ELF
|
|
FileHeader:
|
|
Class: ELFCLASS64
|
|
Data: ELFDATA2LSB
|
|
Type: ET_EXEC
|
|
Machine: EM_X86_64
|
|
Sections:
|
|
- Name: .text.foo
|
|
Type: SHT_PROGBITS
|
|
Address: 0x4000
|
|
Flags: [SHF_ALLOC, SHF_EXECINSTR]
|
|
Content: '503b0505300000907d08ebf50f8dee1f0000c3'
|
|
- Name: .text.bar
|
|
Type: SHT_PROGBITS
|
|
Address: 0x5000
|
|
Flags: [SHF_ALLOC, SHF_EXECINSTR]
|
|
Content: '5089d0740231f6e8f4ffffffc3'
|
|
- Name: .text.split
|
|
Type: SHT_PROGBITS
|
|
Address: 0x6000
|
|
Flags: [SHF_ALLOC, SHF_EXECINSTR]
|
|
Content: 'c3'
|
|
- Name: .data
|
|
Type: SHT_PROGBITS
|
|
Flags: [SHF_ALLOC, SHF_WRITE]
|
|
Address: 0x7000
|
|
- Name: .llvm_bb_addr_map.foo
|
|
Type: SHT_LLVM_BB_ADDR_MAP
|
|
Link: .text.foo
|
|
Entries:
|
|
- Version: 2
|
|
Feature: 0x8
|
|
BBRanges:
|
|
- BaseAddress: 0x4000
|
|
BBEntries:
|
|
- ID: 3
|
|
AddressOffset: 0x0
|
|
Size: 0x1
|
|
Metadata: 0x1
|
|
- ID: 1
|
|
AddressOffset: 0x0
|
|
Size: 0x6
|
|
Metadata: 0x0
|
|
- ID: 2
|
|
AddressOffset: 0x1
|
|
Size: 0x4
|
|
Metadata: 0x0
|
|
- ID: 4
|
|
AddressOffset: 0x0
|
|
Size: 0x6
|
|
Metadata: 0x1
|
|
- ID: 5
|
|
AddressOffset: 0x0
|
|
Size: 0x1
|
|
Metadata: 0x2
|
|
- BaseAddress: 0x6000
|
|
BBEntries:
|
|
- ID: 6
|
|
AddressOffset: 0x0
|
|
Size: 0x1
|
|
Metadata: 0x2
|
|
- Name: .llvm_bb_addr_map.bar
|
|
Type: SHT_LLVM_BB_ADDR_MAP
|
|
Link: .text.bar
|
|
Entries:
|
|
- Version: 2
|
|
BBRanges:
|
|
- BaseAddress: 0x5000
|
|
BBEntries:
|
|
- ID: 0
|
|
AddressOffset: 0x0
|
|
Size: 0x1
|
|
Metadata: 0x1
|
|
- ID: 2
|
|
AddressOffset: 0x4
|
|
Size: 0x2
|
|
Metadata: 0x0
|
|
- ID: 4
|
|
AddressOffset: 0x0
|
|
Size: 0x6
|
|
Metadata: 0x0
|
|
|
|
Symbols:
|
|
- Name: foo
|
|
Section: .text.foo
|
|
Value: 0x4000
|
|
- Name: foo.cold
|
|
Section: .text.split
|
|
Value: 0x6000
|
|
- Name: bar
|
|
Section: .text.bar
|
|
Value: 0x5000
|
|
- Name: symbol
|
|
Section: .data
|
|
Value: 0x700c
|
|
|
|
## This object file contains a single SHT_LLVM_BB_ADDR_MAP for two text
|
|
## sections .text.foo and .text.bar.
|
|
--- !ELF
|
|
FileHeader:
|
|
Class: ELFCLASS64
|
|
Data: ELFDATA2LSB
|
|
Type: ET_EXEC
|
|
Machine: EM_X86_64
|
|
Sections:
|
|
- Name: .text.foo
|
|
Type: SHT_PROGBITS
|
|
Address: 0x4000
|
|
Flags: [SHF_ALLOC, SHF_EXECINSTR]
|
|
Content: '503b0505300000907d08ebf50f8dee1f0000c3'
|
|
- Name: .text.bar
|
|
Type: SHT_PROGBITS
|
|
Address: 0x5000
|
|
Flags: [SHF_ALLOC, SHF_EXECINSTR]
|
|
Content: '5089d0740231f6e8f4ffffffc3'
|
|
- Name: .text.split
|
|
Type: SHT_PROGBITS
|
|
Address: 0x6000
|
|
Flags: [SHF_ALLOC, SHF_EXECINSTR]
|
|
Content: 'c3'
|
|
- Name: .data
|
|
Type: SHT_PROGBITS
|
|
Flags: [SHF_ALLOC, SHF_WRITE]
|
|
Address: 0x7000
|
|
- Name: .llvm_bb_addr_map.foo
|
|
Type: SHT_LLVM_BB_ADDR_MAP
|
|
Link: .text.foo
|
|
Entries:
|
|
- Version: 2
|
|
Feature: 0x8
|
|
BBRanges:
|
|
- BaseAddress: 0x4000
|
|
BBEntries:
|
|
- ID: 3
|
|
AddressOffset: 0x0
|
|
Size: 0x1
|
|
Metadata: 0x1
|
|
- ID: 1
|
|
AddressOffset: 0x0
|
|
Size: 0x6
|
|
Metadata: 0x0
|
|
- ID: 2
|
|
AddressOffset: 0x1
|
|
Size: 0x4
|
|
Metadata: 0x0
|
|
- ID: 4
|
|
AddressOffset: 0x0
|
|
Size: 0x6
|
|
Metadata: 0x1
|
|
- ID: 5
|
|
AddressOffset: 0x0
|
|
Size: 0x1
|
|
Metadata: 0x2
|
|
- BaseAddress: 0x6000
|
|
BBEntries:
|
|
- ID: 6
|
|
AddressOffset: 0x0
|
|
Size: 0x1
|
|
Metadata: 0x2
|
|
- Version: 2
|
|
BBRanges:
|
|
- BaseAddress: 0x5000
|
|
BBEntries:
|
|
- ID: 0
|
|
AddressOffset: 0x0
|
|
Size: 0x1
|
|
Metadata: 0x1
|
|
- ID: 2
|
|
AddressOffset: 0x4
|
|
Size: 0x2
|
|
Metadata: 0x0
|
|
- ID: 4
|
|
AddressOffset: 0x0
|
|
Size: 0x6
|
|
Metadata: 0x0
|
|
|
|
Symbols:
|
|
- Name: foo
|
|
Section: .text.foo
|
|
Value: 0x4000
|
|
- Name: foo.cold
|
|
Section: .text.split
|
|
Value: 0x6000
|
|
- Name: bar
|
|
Section: .text.bar
|
|
Value: 0x5000
|
|
- Name: symbol
|
|
Section: .data
|
|
Value: 0x700c
|