Files
TheRock/compiler/amd-llvm/llvm/test/MC/COFF/cv-def-range-gap.s
T
derek.holloway 7502bf64a4
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
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

130 lines
3.9 KiB
ArmAsm

# RUN: llvm-mc -triple=x86_64-pc-win32 -filetype=obj < %s | llvm-readobj --codeview - | FileCheck %s
# This tries to test defrange gap edge cases.
# CHECK: LocalSym {
# CHECK: Type: int (0x74)
# CHECK: VarName: p
# CHECK: }
# CHECK-NOT: LocalSym {
# CHECK: DefRangeRegisterSym {
# CHECK-NEXT: Kind: S_DEFRANGE_REGISTER (0x1141)
# CHECK-NEXT: Register: ESI (0x17)
# CHECK-NEXT: MayHaveNoName: 0
# CHECK-NEXT: LocalVariableAddrRange {
# CHECK-NEXT: OffsetStart: .text+0x5
# CHECK-NEXT: ISectStart: 0x0
# CHECK-NEXT: Range: 0x5
# CHECK-NEXT: }
# CHECK-NEXT: LocalVariableAddrGap [
# CHECK-NEXT: GapStartOffset: 0x3
# CHECK-NEXT: Range: 0x1
# CHECK-NEXT: ]
# CHECK-NEXT: }
# CHECK-NEXT: DefRangeRegisterSym {
# CHECK-NEXT: Kind: S_DEFRANGE_REGISTER (0x1141)
# CHECK-NEXT: Register: ESI (0x17)
# CHECK-NEXT: MayHaveNoName: 0
# CHECK-NEXT: LocalVariableAddrRange {
# CHECK-NEXT: OffsetStart: .text+0x10015
# CHECK-NEXT: ISectStart: 0x0
# CHECK-NEXT: Range: 0x6
# CHECK-NEXT: }
# CHECK-NEXT: }
# CHECK-NEXT: DefRangeRegisterSym {
# CHECK-NEXT: Kind: S_DEFRANGE_REGISTER (0x1141)
# CHECK-NEXT: Register: ESI (0x17)
# CHECK-NEXT: MayHaveNoName: 0
# CHECK-NEXT: LocalVariableAddrRange {
# CHECK-NEXT: OffsetStart: .text+0x2001B
# CHECK-NEXT: ISectStart: 0x0
# CHECK-NEXT: Range: 0x1
# CHECK-NEXT: }
# CHECK-NEXT: }
# CHECK-NEXT: DefRangeRegisterSym {
# CHECK-NEXT: Kind: S_DEFRANGE_REGISTER (0x1141)
# CHECK-NEXT: Register: ESI (0x17)
# CHECK-NEXT: MayHaveNoName: 0
# CHECK-NEXT: LocalVariableAddrRange {
# CHECK-NEXT: OffsetStart: .text+0x2001C
# CHECK-NEXT: ISectStart: 0x0
# CHECK-NEXT: Range: 0xF000
# CHECK-NEXT: }
# CHECK-NEXT: LocalVariableAddrGap [
# CHECK-NEXT: GapStartOffset: 0x1
# CHECK-NEXT: Range: 0xEFFE
# CHECK-NEXT: ]
# CHECK-NEXT: }
.text
f: # @f
mov $42, %esi
.Lbegin0:
nop
jmp .Lbegin1
.Lend0:
nop
.Lbegin1:
nop
.Lend1:
.p2align 4
.fill 0x10000, 1, 0x90
mov $42, %esi
.Lbegin2:
nop
jmp .Lbegin3
.Lend2:
.fill 0x10000, 1, 0x90
.Lbegin3:
nop
.Lend3:
# Create a range that is exactly 0xF000 bytes long with a gap in the
# middle.
.Lbegin4:
nop
.Lend4:
.fill 0xeffe, 1, 0x90
.Lbegin5:
nop
.Lend5:
ret
.Lfunc_end0:
.section .debug$S,"dr"
.p2align 2
.long 4 # Debug section magic
.long 241 # Symbol subsection for f
.long .Ltmp15-.Ltmp14 # Subsection size
.Ltmp14:
.short .Ltmp17-.Ltmp16 # Record length
.Ltmp16:
.short 4423 # Record kind: S_GPROC32_ID
.long 0 # PtrParent
.long 0 # PtrEnd
.long 0 # PtrNext
.long .Lfunc_end0-f # Code size
.long 0 # Offset after prologue
.long 0 # Offset before epilogue
.long 4098 # Function type index
.secrel32 f # Function section relative address
.secidx f # Function section index
.byte 0 # Flags
.asciz "f" # Function name
.Ltmp17:
.short .Ltmp19-.Ltmp18 # Record length
.Ltmp18:
.short 4414 # Record kind: S_LOCAL
.long 116 # TypeIndex
.short 0 # Flags
.asciz "p"
.Ltmp19:
.cv_def_range .Lbegin0 .Lend0 .Lbegin1 .Lend1 .Lbegin2 .Lend2 .Lbegin3 .Lend3, reg, 23
.cv_def_range .Lbegin4 .Lend4 .Lbegin5 .Lend5, reg, 23
.short 2 # Record length
.short 4431 # Record kind: S_PROC_ID_END
.Ltmp15:
.cv_filechecksums # File index to string table offset subsection
.cv_stringtable # String table