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
106 lines
5.3 KiB
ArmAsm
106 lines
5.3 KiB
ArmAsm
// Verify that the .loc_label instruction resets the line sequence and generates
|
|
// the requested label at the correct position in the line stream
|
|
|
|
// RUN: llvm-mc -filetype obj -triple x86_64 %s -o %t.o
|
|
// RUN: llvm-dwarfdump -v --debug-line %t.o | FileCheck %s --check-prefix=CHECK-LINE-TABLE
|
|
// RUN: llvm-readelf -s %t.o | FileCheck %s --check-prefix=CHECK-SYM
|
|
// RUN: llvm-objdump -s -j .offsets %t.o | FileCheck %s --check-prefix=CHECK-OFFSETS
|
|
|
|
// RUN: not llvm-mc -filetype obj -triple x86_64 --defsym ERR=1 %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=ERR --implicit-check-not=error:
|
|
// RUN: not llvm-mc -filetype obj -triple x86_64 --defsym ERR2=1 %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=ERR2 --implicit-check-not=error:
|
|
|
|
|
|
|
|
# CHECK-LINE-TABLE: Address Line Column File ISA Discriminator OpIndex Flags
|
|
# CHECK-LINE-TABLE-NEXT: ------------------ ------ ------ ------ --- ------------- ------- -------------
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000028: 05 DW_LNS_set_column (1)
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000002a: 00 DW_LNE_set_address (0x0000000000000000)
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000035: 01 DW_LNS_copy
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000000000000000 1 1 1 0 0 0 is_stmt
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000036: 02 DW_LNS_advance_pc (addr += 8, op-index += 0)
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000038: 00 DW_LNE_end_sequence
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000000000000008 1 1 1 0 0 0 is_stmt end_sequence
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000003b: 05 DW_LNS_set_column (2)
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000003d: 00 DW_LNE_set_address (0x0000000000000008)
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000048: 01 DW_LNS_copy
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000000000000008 1 2 1 0 0 0 is_stmt
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000049: 02 DW_LNS_advance_pc (addr += 8, op-index += 0)
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000004b: 00 DW_LNE_end_sequence
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000000000000010 1 2 1 0 0 0 is_stmt end_sequence
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000004e: 05 DW_LNS_set_column (3)
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000050: 00 DW_LNE_set_address (0x0000000000000010)
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000005b: 01 DW_LNS_copy
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000000000000010 1 3 1 0 0 0 is_stmt
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000005c: 02 DW_LNS_advance_pc (addr += 8, op-index += 0)
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000005e: 00 DW_LNE_end_sequence
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000000000000018 1 3 1 0 0 0 is_stmt end_sequence
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000061: 05 DW_LNS_set_column (4)
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000063: 00 DW_LNE_set_address (0x0000000000000018)
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000006e: 01 DW_LNS_copy
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000000000000018 1 4 1 0 0 0 is_stmt
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000006f: 05 DW_LNS_set_column (5)
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000071: 01 DW_LNS_copy
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000000000000018 1 5 1 0 0 0 is_stmt
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000072: 02 DW_LNS_advance_pc (addr += 8, op-index += 0)
|
|
# CHECK-LINE-TABLE-NEXT: 0x00000074: 00 DW_LNE_end_sequence
|
|
# CHECK-LINE-TABLE-NEXT: 0x0000000000000020 1 5 1 0 0 0 is_stmt end_sequence
|
|
|
|
# CHECK-SYM: Symbol table '.symtab' contains 9 entries:
|
|
# CHECK-SYM-NEXT: Num: Value Size Type Bind Vis Ndx Name
|
|
# CHECK-SYM-NEXT: 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND
|
|
# CHECK-SYM-NEXT: 1: 0000000000000000 0 FILE LOCAL DEFAULT ABS test.c
|
|
# CHECK-SYM-NEXT: 2: 0000000000000000 0 SECTION LOCAL DEFAULT 2 .text
|
|
# CHECK-SYM-NEXT: 3: 000000000000003b 0 NOTYPE LOCAL DEFAULT 3 my_label_02
|
|
# CHECK-SYM-NEXT: 4: 000000000000004e 0 NOTYPE LOCAL DEFAULT 3 my_label_03
|
|
# CHECK-SYM-NEXT: 5: 0000000000000061 0 NOTYPE LOCAL DEFAULT 3 my_label_04
|
|
# CHECK-SYM-NEXT: 6: 000000000000004e 0 NOTYPE LOCAL DEFAULT 3 my_label_03.1
|
|
# CHECK-SYM-NEXT: 7: 0000000000000077 0 NOTYPE LOCAL DEFAULT 3 my_label_05
|
|
# CHECK-SYM-NEXT: 8: 0000000000000000 0 FUNC GLOBAL DEFAULT 2 foo
|
|
|
|
# CHECK-OFFSETS: 0000 3b000000 4e000000 61000000
|
|
|
|
.text
|
|
.file "test.c"
|
|
.globl foo
|
|
.align 16, 0x90
|
|
.type foo,@function
|
|
foo:
|
|
.Lfunc_begin0:
|
|
.file 1 "test.c"
|
|
.cfi_startproc
|
|
.loc 1 1 1
|
|
mov %rax, 0x01
|
|
.loc_label my_label_02
|
|
.loc 1 1 2
|
|
mov %rax, 0x02
|
|
.loc 1 1 3
|
|
.loc_label my_label_03
|
|
.loc_label my_label_03.1
|
|
mov %rax, 0x03
|
|
.loc 1 1 4
|
|
.loc_label my_label_04
|
|
.loc 1 1 5
|
|
.ifdef ERR
|
|
.loc_label my_label_04
|
|
# ERR: [[#@LINE+1]]:13: error: expected identifier
|
|
.loc_label
|
|
# ERR: [[#@LINE+1]]:19: error: expected newline
|
|
.loc_label aaaa bbbb
|
|
.endif
|
|
.ifdef ERR2
|
|
# ERR2: [[#@LINE+1]]:14: error: symbol 'my_label_04' is already defined
|
|
.loc_label my_label_04
|
|
.endif
|
|
mov %rax, 0x04
|
|
.loc_label my_label_05
|
|
ret
|
|
.cfi_endproc
|
|
|
|
.section .debug_line,"",@progbits
|
|
.Lline_table_start0:
|
|
|
|
.section .offsets,"",@progbits
|
|
.long my_label_02-.Lline_table_start0
|
|
.long my_label_03-.Lline_table_start0
|
|
.long my_label_04-.Lline_table_start0
|