diff options
Diffstat (limited to 'llvm/test/ExecutionEngine')
38 files changed, 502 insertions, 100 deletions
diff --git a/llvm/test/ExecutionEngine/JITLink/AArch32/ELF_data_alignment.s b/llvm/test/ExecutionEngine/JITLink/AArch32/ELF_data_alignment.s index b4f6e04d4eb4..9296f048e51e 100644 --- a/llvm/test/ExecutionEngine/JITLink/AArch32/ELF_data_alignment.s +++ b/llvm/test/ExecutionEngine/JITLink/AArch32/ELF_data_alignment.s @@ -1,16 +1,18 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=armv7-linux-gnueabi -arm-add-build-attributes -filetype=obj -o %t_armv7.o %s # RUN: llvm-objdump -s --section=.rodata %t_armv7.o | FileCheck --check-prefix=CHECK-OBJ %s -# RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \ -# RUN: -slab-page-size 4096 %t_armv7.o -debug-only=jitlink 2>&1 \ +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -slab-address 0x76ff0000 -slab-allocate 10Kb \ +# RUN: -slab-page-size 4096 %t_armv7.o 2>&1 \ # RUN: | FileCheck --check-prefix=CHECK-LG %s # RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \ # RUN: -slab-page-size 4096 %t_armv7.o -check %s # RUN: llvm-mc -triple=thumbv7-linux-gnueabi -arm-add-build-attributes -filetype=obj -o %t_thumbv7.o %s # RUN: llvm-objdump -s --section=.rodata %t_thumbv7.o | FileCheck --check-prefix=CHECK-OBJ %s -# RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \ -# RUN: -slab-page-size 4096 %t_thumbv7.o -debug-only=jitlink 2>&1 \ +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -slab-address 0x76ff0000 -slab-allocate 10Kb \ +# RUN: -slab-page-size 4096 %t_thumbv7.o 2>&1 \ # RUN: | FileCheck --check-prefix=CHECK-LG %s # RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \ # RUN: -slab-page-size 4096 %t_thumbv7.o -check %s diff --git a/llvm/test/ExecutionEngine/JITLink/AArch64/ELF_ehframe.s b/llvm/test/ExecutionEngine/JITLink/AArch64/ELF_ehframe.s index 151a041e7bcd..b25ffee270c4 100644 --- a/llvm/test/ExecutionEngine/JITLink/AArch64/ELF_ehframe.s +++ b/llvm/test/ExecutionEngine/JITLink/AArch64/ELF_ehframe.s @@ -1,7 +1,7 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=aarch64-linux-gnu -filetype=obj -o %t %s -# RUN: llvm-jitlink -noexec -phony-externals -debug-only=jitlink %t 2>&1 | \ -# RUN: FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -phony-externals %t 2>&1 | FileCheck %s # # Check that splitting of eh-frame sections works. # diff --git a/llvm/test/ExecutionEngine/JITLink/AArch64/MachO_compact_unwind.s b/llvm/test/ExecutionEngine/JITLink/AArch64/MachO_compact_unwind.s index 20534d5a4865..b2adb8566e7c 100644 --- a/llvm/test/ExecutionEngine/JITLink/AArch64/MachO_compact_unwind.s +++ b/llvm/test/ExecutionEngine/JITLink/AArch64/MachO_compact_unwind.s @@ -1,6 +1,7 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=arm64-apple-ios -filetype=obj -o %t %s -# RUN: llvm-jitlink -noexec -debug-only=jitlink %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s # # Check that splitting of compact-unwind sections works. # diff --git a/llvm/test/ExecutionEngine/JITLink/AArch64/MachO_ehframe.s b/llvm/test/ExecutionEngine/JITLink/AArch64/MachO_ehframe.s index 8d43b0f975f6..4e84518f86a0 100644 --- a/llvm/test/ExecutionEngine/JITLink/AArch64/MachO_ehframe.s +++ b/llvm/test/ExecutionEngine/JITLink/AArch64/MachO_ehframe.s @@ -1,7 +1,7 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=arm64-apple-darwin11 -filetype=obj -o %t %s -# RUN: llvm-jitlink -noexec -phony-externals -debug-only=jitlink %t 2>&1 | \ -# RUN: FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -phony-externals %t 2>&1 | FileCheck %s # # Check that splitting of eh-frame sections works. # diff --git a/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch32_relocations.s b/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch32_relocations.s index 23f6acc307b9..da9f9982aade 100644 --- a/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch32_relocations.s +++ b/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch32_relocations.s @@ -103,6 +103,30 @@ test_gotoffset12_external: ld.w $a0, $a0, %got_pc_lo12(external_data) .size test_gotoffset12_external, .-test_gotoffset12_external +## Check R_LARCH_B16 relocation for compare and branch instructions. + +# jitlink-check: decode_operand(test_br16, 2)[17:0] = \ +# jitlink-check: (test_br16_target - test_br16)[17:0] + .globl test_br16, test_br16_target + .p2align 2 +test_br16: + beq $t1, $t2, %b16(test_br16_target) + .skip (1 << 16) +test_br16_target: + .size test_br16, .-test_br16 + +## Check R_LARCH_B21 relocation for compare and branch instructions. + +# jitlink-check: decode_operand(test_br21, 1)[22:0] = \ +# jitlink-check: (test_br21_target - test_br21)[22:0] + .globl test_br21, test_br21_target + .p2align 2 +test_br21: + beqz $t1, %b21(test_br21_target) + .skip (1 << 21) +test_br21_target: + .size test_br21, .-test_br21 + .globl named_data .p2align 4 diff --git a/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_ehframe.s b/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_ehframe.s index cc545853f327..806cdcf392f2 100644 --- a/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_ehframe.s +++ b/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_ehframe.s @@ -1,7 +1,7 @@ # REQUIRES: asserts -# RUN: llvm-mc --triple=loongarch64-linux-gnu --filetype=obj -o %t %s -# RUN: llvm-jitlink --noexec --phony-externals --debug-only=jitlink %t 2>&1 | \ -# RUN: FileCheck %s +# RUN: llvm-mc -triple=loongarch64-linux-gnu -filetype=obj -o %t %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -phony-externals %t 2>&1 | FileCheck %s ## Check that splitting of eh-frame sections works. diff --git a/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_relocations.s b/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_relocations.s index f07ac5422b8f..a390d1b895f7 100644 --- a/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_relocations.s +++ b/llvm/test/ExecutionEngine/JITLink/LoongArch/ELF_loongarch64_relocations.s @@ -116,7 +116,6 @@ test_gotoffset12_external: ld.d $a0, $a0, %got_pc_lo12(external_data) .size test_gotoffset12_external, .-test_gotoffset12_external - ## Check R_LARCH_CALL36 relocation of a local function call. # jitlink-check: decode_operand(local_func_call36, 1)[19:0] = \ @@ -130,6 +129,31 @@ local_func_call36: jirl $ra, $ra, 0 .size local_func_call36, .-local_func_call36 +## Check R_LARCH_B16 relocation for compare and branch instructions. + +# jitlink-check: decode_operand(test_br16, 2)[17:0] = \ +# jitlink-check: (test_br16_target - test_br16)[17:0] + .globl test_br16, test_br16_target + .p2align 2 +test_br16: + beq $t1, $t2, %b16(test_br16_target) + .skip (1 << 16) +test_br16_target: + .size test_br16, .-test_br16 + +## Check R_LARCH_B21 relocation for compare and branch instructions. + +# jitlink-check: decode_operand(test_br21, 1)[22:0] = \ +# jitlink-check: (test_br21_target - test_br21)[22:0] + .globl test_br21, test_br21_target + .p2align 2 +test_br21: + beqz $t1, %b21(test_br21_target) + .skip (1 << 21) +test_br21_target: + .size test_br21, .-test_br21 + + .globl named_data .p2align 4 .type named_data,@object diff --git a/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call.s b/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call.s index 480fbb861310..2b5c9e383c04 100644 --- a/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call.s +++ b/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call.s @@ -1,15 +1,15 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=riscv32 -mattr=+relax -filetype=obj -o %t.rv32 %s -# RUN: llvm-jitlink -noexec \ +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s %t.rv32 \ -# RUN: 2>&1 | FileCheck %s +# RUN: -check %s %t.rv32 2>&1 \ +# RUN: | FileCheck %s # RUN: llvm-mc -triple=riscv64 -mattr=+relax -filetype=obj -o %t.rv64 %s -# RUN: llvm-jitlink -noexec \ +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s %t.rv64 \ -# RUN: 2>&1 | FileCheck %s +# RUN: -check %s %t.rv64 2>&1 \ +# RUN: | FileCheck %s .text diff --git a/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s b/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s index e8a2928999f4..3bbfd557a0a6 100644 --- a/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s +++ b/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_relax_call_rvc.s @@ -1,43 +1,43 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=riscv32 -mattr=+relax,+c -filetype=obj -o %t.rv32 %s -# RUN: llvm-jitlink -noexec \ +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s %t.rv32 \ -# RUN: 2>&1 | FileCheck %s -# RUN: llvm-jitlink -noexec \ +# RUN: -check %s %t.rv32 2>&1 \ +# RUN: | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s -check-name=jitlink-check-rv32 %t.rv32 \ -# RUN: 2>&1 | FileCheck -check-prefix=CHECK-RV32 %s +# RUN: -check %s -check-name=jitlink-check-rv32 %t.rv32 2>&1 \ +# RUN: | FileCheck -check-prefix=CHECK-RV32 %s # RUN: llvm-mc -triple=riscv64 -mattr=+relax,+c -filetype=obj -o %t.rv64 %s -# RUN: llvm-jitlink -noexec \ +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s %t.rv64 \ -# RUN: 2>&1 | FileCheck %s -# RUN: llvm-jitlink -noexec \ +# RUN: -check %s %t.rv64 2>&1 \ +# RUN: | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s -check-name=jitlink-check-rv64 %t.rv64 \ -# RUN: 2>&1 | FileCheck -check-prefix=CHECK-RV64 %s +# RUN: -check %s -check-name=jitlink-check-rv64 %t.rv64 2>&1 \ +# RUN: | FileCheck -check-prefix=CHECK-RV64 %s # RUN: llvm-mc -triple=riscv32 -mattr=+relax,+zca -filetype=obj -o %t.rv32zca %s -# RUN: llvm-jitlink -noexec \ +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s %t.rv32zca \ -# RUN: 2>&1 | FileCheck %s -# RUN: llvm-jitlink -noexec \ +# RUN: -check %s %t.rv32zca 2>&1 \ +# RUN: | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s -check-name=jitlink-check-rv32 %t.rv32zca \ -# RUN: 2>&1 | FileCheck -check-prefix=CHECK-RV32 %s +# RUN: -check %s -check-name=jitlink-check-rv32 %t.rv32zca 2>&1 \ +# RUN: | FileCheck -check-prefix=CHECK-RV32 %s # RUN: llvm-mc -triple=riscv64 -mattr=+relax,+c -filetype=obj -o %t.rv64 %s -# RUN: llvm-jitlink -noexec \ +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s %t.rv64 \ -# RUN: 2>&1 | FileCheck %s -# RUN: llvm-jitlink -noexec \ +# RUN: -check %s %t.rv64 2>&1 \ +# RUN: | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ # RUN: -slab-allocate 100Kb -slab-address 0x1000 -slab-page-size 4096 \ -# RUN: -debug-only=jitlink -check %s -check-name=jitlink-check-rv64 %t.rv64 \ -# RUN: 2>&1 | FileCheck -check-prefix=CHECK-RV64 %s +# RUN: -check %s -check-name=jitlink-check-rv64 %t.rv64 2>&1 \ +# RUN: | FileCheck -check-prefix=CHECK-RV64 %s .text diff --git a/llvm/test/ExecutionEngine/JITLink/RISCV/riscv_reloc_add.s b/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_reloc_add.s index 13689b6d8a02..01f9e7eb5653 100644 --- a/llvm/test/ExecutionEngine/JITLink/RISCV/riscv_reloc_add.s +++ b/llvm/test/ExecutionEngine/JITLink/RISCV/ELF_reloc_add.s @@ -1,6 +1,8 @@ # RUN: rm -rf %t && mkdir -p %t -# RUN: llvm-mc -triple=riscv64 -filetype=obj -o %t/riscv64_reloc_add.o %s -# RUN: llvm-mc -triple=riscv32 -filetype=obj -o %t/riscv32_reloc_add.o %s +# RUN: llvm-mc -triple=riscv64 -mattr=+relax -filetype=obj \ +# RUN: -o %t/riscv64_reloc_add.o %s +# RUN: llvm-mc -triple=riscv32 -mattr=+relax -filetype=obj \ +# RUN: -o %t/riscv32_reloc_add.o %s # RUN: llvm-jitlink -noexec -check %s %t/riscv64_reloc_add.o \ # RUN: -slab-allocate=1Mb -slab-address=0x1000 -slab-page-size=0x1000 # RUN: llvm-jitlink -noexec -check %s %t/riscv32_reloc_add.o \ diff --git a/llvm/test/ExecutionEngine/JITLink/RISCV/anonymous_symbol.s b/llvm/test/ExecutionEngine/JITLink/RISCV/anonymous_symbol.s index e7114e4d643c..a1badfd0ee3d 100644 --- a/llvm/test/ExecutionEngine/JITLink/RISCV/anonymous_symbol.s +++ b/llvm/test/ExecutionEngine/JITLink/RISCV/anonymous_symbol.s @@ -1,6 +1,7 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=riscv64 -filetype=obj -o %t %s -# RUN: llvm-jitlink -debug-only=jitlink -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -debug-only=jitlink -num-threads=0 -noexec %t 2>&1 \ +# RUN: | FileCheck %s # # Because of the exist of cfi directive, sections like eh_frame section will be emitted # in llvm's object code emission phase. Anonymous symbols will also be emitted to indicate diff --git a/llvm/test/ExecutionEngine/JITLink/ppc64/ELF_ppc64_ehframe.s b/llvm/test/ExecutionEngine/JITLink/ppc64/ELF_ppc64_ehframe.s index 9e9b340c5d8d..75f09ff402ad 100644 --- a/llvm/test/ExecutionEngine/JITLink/ppc64/ELF_ppc64_ehframe.s +++ b/llvm/test/ExecutionEngine/JITLink/ppc64/ELF_ppc64_ehframe.s @@ -1,10 +1,12 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=powerpc64le-unknown-linux-gnu -filetype=obj -o %t %s -# RUN: llvm-jitlink -noexec -phony-externals -debug-only=jitlink %t 2>&1 | \ -# RUN: FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec -phony-externals \ +# RUN: %t 2>&1 \ +# RUN: | FileCheck %s # RUN: llvm-mc -triple=powerpc64-unknown-linux-gnu -filetype=obj -o %t %s -# RUN: llvm-jitlink -noexec -phony-externals -debug-only=jitlink %t 2>&1 | \ -# RUN: FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec -phony-externals \ +# RUN: %t 2>&1 \ +# RUN: | FileCheck %s # # Check that splitting of eh-frame sections works. # diff --git a/llvm/test/ExecutionEngine/JITLink/ppc64/external_weak.s b/llvm/test/ExecutionEngine/JITLink/ppc64/external_weak.s index 0bc90903caf9..7021a27294c9 100644 --- a/llvm/test/ExecutionEngine/JITLink/ppc64/external_weak.s +++ b/llvm/test/ExecutionEngine/JITLink/ppc64/external_weak.s @@ -4,8 +4,9 @@ # RUN: %t/external_weak.o %S/Inputs/external_weak.s # RUN: llvm-mc -triple=powerpc64le-unknown-linux-gnu -filetype=obj -o \ # RUN: %t/external_weak_main.o %S/Inputs/external_weak_main.s -# RUN: llvm-jitlink -noexec -debug-only=jitlink %t/external_weak.o \ -# RUN: %t/external_weak_main.o 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: %t/external_weak.o %t/external_weak_main.o 2>&1 \ +# RUN: | FileCheck %s # CHECK: Created ELFLinkGraphBuilder for "{{.*}}external_weak_main.o" # CHECK: Creating defined graph symbol for ELF symbol "foo" # CHECK: External symbols: diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_abs.s b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_abs.s index 830a2e00f487..d69dbbdd7040 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_abs.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_abs.s @@ -1,6 +1,7 @@ # REQUIRES: asserts # RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t -# RUN: llvm-jitlink --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s # # Check absolute symbol is created with a correct value. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_any.test b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_any.test index 10f118280b1d..b1176744b9a4 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_any.test +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_any.test @@ -1,7 +1,8 @@ # REQUIRES: asserts # RUN: yaml2obj %s -o %t -# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s -# +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s +# # Check a weak symbol is created for a COMDAT symbol with IMAGE_COMDAT_SELECT_ANY selection type. # # CHECK: Creating graph symbols... diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_associative.test b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_associative.test index 7dfb4c7ec8ea..8915d04d7cbf 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_associative.test +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_associative.test @@ -1,16 +1,19 @@ # REQUIRES: asserts # RUN: yaml2obj %s -o %t -# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 -# +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s +# # Check COMDAT associative symbol is emitted as local symbol. # -# CHECK: Creating graph symbols... -# CHECK: 2: Creating defined graph symbol for COFF symbol ".text" in .text (index: 2) -# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000001, linkage: strong, scope: local, dead - <anonymous symbol> -# CHECK-NEXT: 4: Exporting COMDAT graph symbol for COFF symbol "func" in section 2 -# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000001, linkage: weak, scope: default, dead - func -# CHECK-NEXT: 5: Creating defined graph symbol for COFF symbol ".xdata" in .xdata (index: 3) -# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: strong, scope: local, dead - .xdata +# CHECK: Creating graph symbols... +# CHECK: 0: Creating defined graph symbol for COFF symbol ".text" in .text (index: 1) +# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: strong, scope: local, dead - .text +# CHECK-NEXT: 4: Exporting COMDAT graph symbol for COFF symbol "func" in section 2 +# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: weak, scope: default, dead - func +# CHECK-NEXT: 4: Creating defined graph symbol for COFF symbol "func" in .text (index: 2) +# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: weak, scope: default, dead - func +# CHECK-NEXT: 5: Creating defined graph symbol for COFF symbol ".xdata" in .xdata (index: 3) +# CHECK-NEXT: 0x0 (block + 0x00000000): size: 0x00000000, linkage: strong, scope: local, dead - .xdata --- !COFF header: diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_exact_match.test b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_exact_match.test index f7572714bae1..76a0ac4813b8 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_exact_match.test +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_exact_match.test @@ -1,7 +1,8 @@ # REQUIRES: asserts # RUN: yaml2obj %s -o %t -# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s -# +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s +# # Check a weak symbol is created for a COMDAT symbol with IMAGE_COMDAT_SELECT_EXACT_MATCH selection type. # Doesn't check the content validation. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_intervene.test b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_intervene.test index 11a182578379..79f4b15bd53b 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_intervene.test +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_intervene.test @@ -1,7 +1,8 @@ # REQUIRES: asserts # RUN: yaml2obj %s -o %t -# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s -# +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s +# # Check a comdat export is done correctly even if second symbol of comdat sequences appear out of order # # CHECK: Creating graph symbols... diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_largest.test b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_largest.test index 86d809d63ed2..dc0529780f6a 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_largest.test +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_largest.test @@ -1,7 +1,8 @@ # REQUIRES: asserts # RUN: yaml2obj %s -o %t -# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 -# +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s +# # Check jitlink handles largest selection type as plain weak symbol. # # CHECK: Creating graph symbols... diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_noduplicate.test b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_noduplicate.test index 53b2c81b5ec7..0c5313eb7d61 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_noduplicate.test +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_noduplicate.test @@ -1,7 +1,8 @@ # REQUIRES: asserts # RUN: yaml2obj %s -o %t -# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s -# +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec -noexec %t 2>&1 \ +# RUN: | FileCheck %s +# # Check a strong symbol is created for a COMDAT symbol with IMAGE_COMDAT_SELECT_NODUPLICATES selection type. # # CHECK: Creating graph symbols... diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_offset.test b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_offset.test index 97467fdb5ee9..6cd8ff9b1e5a 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_offset.test +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_offset.test @@ -1,7 +1,8 @@ # REQUIRES: asserts # RUN: yaml2obj %s -o %t -# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s -# +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s +# # Check a COMDAT symbol with an offset is handled correctly. # # CHECK: Creating graph symbols... diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_same_size.test b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_same_size.test index ef0f84a584c3..e1d955f54ffb 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_same_size.test +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_same_size.test @@ -1,7 +1,8 @@ # REQUIRES: asserts # RUN: yaml2obj %s -o %t -# RUN: llvm-jitlink -noexec --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s -# +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s +# # Check a weak symbol is created for a COMDAT symbol with IMAGE_COMDAT_SELECT_SAME_SIZE selection type. # Doesn't check the size validation. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak.s b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak.s index 79ac75ffe441..8fa8ba0d8c95 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak.s @@ -1,6 +1,7 @@ # REQUIRES: asserts # RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t -# RUN: llvm-jitlink --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s # # Check a COMDAT any symbol is exported as a weak symbol. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak_plus_strong.s b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak_plus_strong.s index 2754855e428e..01aac02f5286 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak_plus_strong.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_comdat_weak_plus_strong.s @@ -8,7 +8,7 @@ # # RUN: not llvm-jitlink -noexec %t/COFF_main.o %t/COFF_weak_1.o %t/COFF_strong.o \ # RUN: -slab-allocate 64Kb -slab-address 0xfff00000 \ -# RUN: -slab-page-size 4096 -show-graph 2>&1 | FileCheck %s +# RUN: -slab-page-size 4096 -show-graphs=".*" 2>&1 | FileCheck %s # # Check that a combination of comdat any definition and strong definition # generate duplicate definition error. diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s index 2d4ad30f94d8..2788a9b0ae14 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s @@ -1,6 +1,7 @@ # REQUIRES: asserts # RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t -# RUN: llvm-jitlink --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s # # Check a common symbol is created. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_duplicate_externals.test b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_duplicate_externals.test index e929c0131686..ebce7958442c 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_duplicate_externals.test +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_duplicate_externals.test @@ -1,10 +1,10 @@ # REQUIRES: asserts # RUN: yaml2obj %s -o %t -# RUN: llvm-jitlink -noexec -abs __ImageBase=0xfff00000 \ -# RUN: --debug-only=jitlink \ -# RUN: -slab-allocate 100Kb -slab-address 0xfff00000 -slab-page-size 4096 \ -# RUN: %t 2>&1 | FileCheck %s -# +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -abs __ImageBase=0xfff00000 -slab-allocate 100Kb \ +# RUN: -slab-address 0xfff00000 -slab-page-size 4096 %t 2>&1 \ +# RUN: | FileCheck %s +# # Check duplicate undefined external symbols are handled correctly. # # CHECK: Creating graph symbols... diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_file_debug.s b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_file_debug.s index 3980f81801ac..ac1ef2dc962b 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_file_debug.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_file_debug.s @@ -1,6 +1,8 @@ # REQUIRES: asserts # RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t -# RUN: llvm-jitlink -abs func=0xcafef00d --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -abs func=0xcafef00d %t 2>&1 \ +# RUN: | FileCheck %s # # Check a file debug symbol is skipped. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_static_var.s b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_static_var.s index 5275c7d81766..dce0c1eaa77c 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_static_var.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_static_var.s @@ -1,6 +1,8 @@ # REQUIRES: asserts # RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t -# RUN: llvm-jitlink -abs var=0xcafef00d --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -abs var=0xcafef00d %t 2>&1 \ +# RUN: | FileCheck %s # # Check a local symbol is created for a static variable. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_weak_external.s b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_weak_external.s index c750d75b82f2..d49d56150017 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_weak_external.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/COFF_weak_external.s @@ -1,6 +1,8 @@ # REQUIRES: asserts # RUN: llvm-mc -filetype=obj -triple=x86_64-windows-msvc %s -o %t -# RUN: llvm-jitlink -abs var=0xcafef00d --debug-only=jitlink -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -abs var=0xcafef00d %t 2>&1 | \ +# RUN: FileCheck %s # # Check a default symbol is aliased as a weak external symbol. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_debug_section_lifetime_is_NoAlloc.yaml b/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_debug_section_lifetime_is_NoAlloc.yaml index 0afcda467c32..09dda4739225 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_debug_section_lifetime_is_NoAlloc.yaml +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_debug_section_lifetime_is_NoAlloc.yaml @@ -1,6 +1,7 @@ # REQUIRES: asserts # RUN: yaml2obj -o %t.o %s -# RUN: llvm-jitlink -debug-only=jitlink -noexec %t.o 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t.o 2>&1 \ +# RUN: | FileCheck %s # # Check that debug sections get NoAlloc lifetimes. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_basic.s b/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_basic.s index c01ced5d0523..9339f076c67f 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_basic.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_basic.s @@ -2,8 +2,9 @@ # UNSUPPORTED: system-windows # RUN: llvm-mc -triple=x86_64-unknown-linux -position-independent \ # RUN: -filetype=obj -o %t %s -# RUN: llvm-jitlink -debug-only=jitlink -abs bar=0x01 \ -# RUN: -abs _ZTIi=0x02 -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -abs bar=0x01 -abs _ZTIi=0x02 %t 2>&1 \ +# RUN: | FileCheck %s # # FIXME: This test should run on windows. Investigate spurious # 'note: command had no output on stdout or stderr' errors, then re-enable. diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_large_static_personality_encodings.s b/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_large_static_personality_encodings.s index 64990b5d38f0..98fc5f4e3acc 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_large_static_personality_encodings.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/ELF_ehframe_large_static_personality_encodings.s @@ -2,8 +2,9 @@ # UNSUPPORTED: system-windows # RUN: llvm-mc -triple=x86_64-pc-linux-gnu -large-code-model \ # RUN: -filetype=obj -o %t %s -# RUN: llvm-jitlink -debug-only=jitlink -noexec -phony-externals %t 2>&1 | \ -# RUN: FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -phony-externals %t 2>&1 \ +# RUN: | FileCheck %s # # Check handling of pointer encodings for personality functions when compiling # with `-mcmodel=large -static`. diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/LocalDependencyPropagation.s b/llvm/test/ExecutionEngine/JITLink/x86-64/LocalDependencyPropagation.s index 139ef149710c..83d71cdf6fc8 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/LocalDependencyPropagation.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/LocalDependencyPropagation.s @@ -1,14 +1,15 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=x86_64-apple-macosx10.9 -filetype=obj -o %t %s -# RUN: llvm-jitlink -debug-only=orc -noexec -abs _external_func=0x1 \ -# RUN: -entry=_foo %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=orc -noexec \ +# RUN: -abs _external_func=0x1 -entry=_foo %t 2>&1 \ +# RUN: | FileCheck %s # # Check that simplification eliminates dependencies on symbols in this unit, # and correctly propagates dependencies on symbols outside the unit (including # via locally scoped symbols). In this test _baz depends on _foo indirectly via # the local symbol _bar. Initially we expect _baz to depend on _foo, and _foo # on _external_func, after simplification we expect both to depend on -# _external_func only. +# _external_func only. # CHECK: In main emitting {{.*}}_foo{{.*}} # CHECK-NEXT: Initial dependencies: diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/MachO-check-dwarf-filename.s b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO-check-dwarf-filename.s new file mode 100644 index 000000000000..81ea18f24934 --- /dev/null +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO-check-dwarf-filename.s @@ -0,0 +1,318 @@ +# RUN: llvm-mc -triple=x86_64-apple-macosx10.9 -filetype=obj -o %t.o %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=orc -noexec -debugger-support \ +# RUN: %t.o 2>&1 \ +# RUN: | FileCheck %s +# +# REQUIRES: asserts && system-darwin +# +# Test that source file names can be indentified from DWARF line tables. + +# CHECK: Using FileName = "check-dwarf-filename.c" from DWARF line table + + .section __TEXT,__text,regular,pure_instructions + .build_version macos, 15, 0 sdk_version 15, 0 + .globl _main ## -- Begin function main + .p2align 4, 0x90 +_main: ## @main +Lfunc_begin0: + .file 0 "/Users/lhames/Projects/scratch" "check-dwarf-filename.c" md5 0x331a6c7ae0cfcd2896eca60ac6f5703e + .loc 0 1 0 ## check-dwarf-filename.c:1:0 + .cfi_startproc +## %bb.0: + ##DEBUG_VALUE: main:argc <- $edi + ##DEBUG_VALUE: main:argv <- $rsi + pushq %rbp + .cfi_def_cfa_offset 16 + .cfi_offset %rbp, -16 + movq %rsp, %rbp + .cfi_def_cfa_register %rbp +Ltmp0: + .loc 0 2 3 prologue_end ## check-dwarf-filename.c:2:3 + xorl %eax, %eax + .loc 0 2 3 epilogue_begin is_stmt 0 ## check-dwarf-filename.c:2:3 + popq %rbp + retq +Ltmp1: +Lfunc_end0: + .cfi_endproc + ## -- End function + .section __DWARF,__debug_abbrev,regular,debug +Lsection_abbrev: + .byte 1 ## Abbreviation Code + .byte 17 ## DW_TAG_compile_unit + .byte 1 ## DW_CHILDREN_yes + .byte 37 ## DW_AT_producer + .byte 37 ## DW_FORM_strx1 + .byte 19 ## DW_AT_language + .byte 5 ## DW_FORM_data2 + .byte 3 ## DW_AT_name + .byte 37 ## DW_FORM_strx1 + .ascii "\202|" ## DW_AT_LLVM_sysroot + .byte 37 ## DW_FORM_strx1 + .ascii "\357\177" ## DW_AT_APPLE_sdk + .byte 37 ## DW_FORM_strx1 + .byte 114 ## DW_AT_str_offsets_base + .byte 23 ## DW_FORM_sec_offset + .byte 16 ## DW_AT_stmt_list + .byte 23 ## DW_FORM_sec_offset + .byte 27 ## DW_AT_comp_dir + .byte 37 ## DW_FORM_strx1 + .ascii "\341\177" ## DW_AT_APPLE_optimized + .byte 25 ## DW_FORM_flag_present + .byte 17 ## DW_AT_low_pc + .byte 27 ## DW_FORM_addrx + .byte 18 ## DW_AT_high_pc + .byte 6 ## DW_FORM_data4 + .byte 115 ## DW_AT_addr_base + .byte 23 ## DW_FORM_sec_offset + .byte 0 ## EOM(1) + .byte 0 ## EOM(2) + .byte 2 ## Abbreviation Code + .byte 46 ## DW_TAG_subprogram + .byte 1 ## DW_CHILDREN_yes + .byte 17 ## DW_AT_low_pc + .byte 27 ## DW_FORM_addrx + .byte 18 ## DW_AT_high_pc + .byte 6 ## DW_FORM_data4 + .byte 64 ## DW_AT_frame_base + .byte 24 ## DW_FORM_exprloc + .byte 122 ## DW_AT_call_all_calls + .byte 25 ## DW_FORM_flag_present + .byte 3 ## DW_AT_name + .byte 37 ## DW_FORM_strx1 + .byte 58 ## DW_AT_decl_file + .byte 11 ## DW_FORM_data1 + .byte 59 ## DW_AT_decl_line + .byte 11 ## DW_FORM_data1 + .byte 39 ## DW_AT_prototyped + .byte 25 ## DW_FORM_flag_present + .byte 73 ## DW_AT_type + .byte 19 ## DW_FORM_ref4 + .byte 63 ## DW_AT_external + .byte 25 ## DW_FORM_flag_present + .ascii "\341\177" ## DW_AT_APPLE_optimized + .byte 25 ## DW_FORM_flag_present + .byte 0 ## EOM(1) + .byte 0 ## EOM(2) + .byte 3 ## Abbreviation Code + .byte 5 ## DW_TAG_formal_parameter + .byte 0 ## DW_CHILDREN_no + .byte 2 ## DW_AT_location + .byte 24 ## DW_FORM_exprloc + .byte 3 ## DW_AT_name + .byte 37 ## DW_FORM_strx1 + .byte 58 ## DW_AT_decl_file + .byte 11 ## DW_FORM_data1 + .byte 59 ## DW_AT_decl_line + .byte 11 ## DW_FORM_data1 + .byte 73 ## DW_AT_type + .byte 19 ## DW_FORM_ref4 + .byte 0 ## EOM(1) + .byte 0 ## EOM(2) + .byte 4 ## Abbreviation Code + .byte 36 ## DW_TAG_base_type + .byte 0 ## DW_CHILDREN_no + .byte 3 ## DW_AT_name + .byte 37 ## DW_FORM_strx1 + .byte 62 ## DW_AT_encoding + .byte 11 ## DW_FORM_data1 + .byte 11 ## DW_AT_byte_size + .byte 11 ## DW_FORM_data1 + .byte 0 ## EOM(1) + .byte 0 ## EOM(2) + .byte 5 ## Abbreviation Code + .byte 15 ## DW_TAG_pointer_type + .byte 0 ## DW_CHILDREN_no + .byte 73 ## DW_AT_type + .byte 19 ## DW_FORM_ref4 + .byte 0 ## EOM(1) + .byte 0 ## EOM(2) + .byte 0 ## EOM(3) + .section __DWARF,__debug_info,regular,debug +Lsection_info: +Lcu_begin0: +.set Lset0, Ldebug_info_end0-Ldebug_info_start0 ## Length of Unit + .long Lset0 +Ldebug_info_start0: + .short 5 ## DWARF version number + .byte 1 ## DWARF Unit Type + .byte 8 ## Address Size (in bytes) +.set Lset1, Lsection_abbrev-Lsection_abbrev ## Offset Into Abbrev. Section + .long Lset1 + .byte 1 ## Abbrev [1] 0xc:0x50 DW_TAG_compile_unit + .byte 0 ## DW_AT_producer + .short 29 ## DW_AT_language + .byte 1 ## DW_AT_name + .byte 2 ## DW_AT_LLVM_sysroot + .byte 3 ## DW_AT_APPLE_sdk +.set Lset2, Lstr_offsets_base0-Lsection_str_off ## DW_AT_str_offsets_base + .long Lset2 +.set Lset3, Lline_table_start0-Lsection_line ## DW_AT_stmt_list + .long Lset3 + .byte 4 ## DW_AT_comp_dir + ## DW_AT_APPLE_optimized + .byte 0 ## DW_AT_low_pc +.set Lset4, Lfunc_end0-Lfunc_begin0 ## DW_AT_high_pc + .long Lset4 +.set Lset5, Laddr_table_base0-Lsection_info0 ## DW_AT_addr_base + .long Lset5 + .byte 2 ## Abbrev [2] 0x25:0x24 DW_TAG_subprogram + .byte 0 ## DW_AT_low_pc +.set Lset6, Lfunc_end0-Lfunc_begin0 ## DW_AT_high_pc + .long Lset6 + .byte 1 ## DW_AT_frame_base + .byte 86 + ## DW_AT_call_all_calls + .byte 5 ## DW_AT_name + .byte 0 ## DW_AT_decl_file + .byte 1 ## DW_AT_decl_line + ## DW_AT_prototyped + .long 73 ## DW_AT_type + ## DW_AT_external + ## DW_AT_APPLE_optimized + .byte 3 ## Abbrev [3] 0x34:0xa DW_TAG_formal_parameter + .byte 1 ## DW_AT_location + .byte 85 + .byte 7 ## DW_AT_name + .byte 0 ## DW_AT_decl_file + .byte 1 ## DW_AT_decl_line + .long 73 ## DW_AT_type + .byte 3 ## Abbrev [3] 0x3e:0xa DW_TAG_formal_parameter + .byte 1 ## DW_AT_location + .byte 84 + .byte 8 ## DW_AT_name + .byte 0 ## DW_AT_decl_file + .byte 1 ## DW_AT_decl_line + .long 77 ## DW_AT_type + .byte 0 ## End Of Children Mark + .byte 4 ## Abbrev [4] 0x49:0x4 DW_TAG_base_type + .byte 6 ## DW_AT_name + .byte 5 ## DW_AT_encoding + .byte 4 ## DW_AT_byte_size + .byte 5 ## Abbrev [5] 0x4d:0x5 DW_TAG_pointer_type + .long 82 ## DW_AT_type + .byte 5 ## Abbrev [5] 0x52:0x5 DW_TAG_pointer_type + .long 87 ## DW_AT_type + .byte 4 ## Abbrev [4] 0x57:0x4 DW_TAG_base_type + .byte 9 ## DW_AT_name + .byte 6 ## DW_AT_encoding + .byte 1 ## DW_AT_byte_size + .byte 0 ## End Of Children Mark +Ldebug_info_end0: + .section __DWARF,__debug_str_offs,regular,debug +Lsection_str_off: + .long 44 ## Length of String Offsets Set + .short 5 + .short 0 +Lstr_offsets_base0: + .section __DWARF,__debug_str,regular,debug +Linfo_string: + .asciz "Apple clang version 16.0.0 (clang-1600.0.26.3)" ## string offset=0 + .asciz "check-dwarf-filename.c" ## string offset=47 + .asciz "/Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk" ## string offset=70 + .asciz "MacOSX15.0.sdk" ## string offset=126 + .asciz "/Users/lhames/Projects/scratch" ## string offset=141 + .asciz "main" ## string offset=172 + .asciz "int" ## string offset=177 + .asciz "argc" ## string offset=181 + .asciz "argv" ## string offset=186 + .asciz "char" ## string offset=191 + .section __DWARF,__debug_str_offs,regular,debug + .long 0 + .long 47 + .long 70 + .long 126 + .long 141 + .long 172 + .long 177 + .long 181 + .long 186 + .long 191 + .section __DWARF,__debug_addr,regular,debug +Lsection_info0: +.set Lset7, Ldebug_addr_end0-Ldebug_addr_start0 ## Length of contribution + .long Lset7 +Ldebug_addr_start0: + .short 5 ## DWARF version number + .byte 8 ## Address size + .byte 0 ## Segment selector size +Laddr_table_base0: + .quad Lfunc_begin0 +Ldebug_addr_end0: + .section __DWARF,__debug_names,regular,debug +Ldebug_names_begin: +.set Lset8, Lnames_end0-Lnames_start0 ## Header: unit length + .long Lset8 +Lnames_start0: + .short 5 ## Header: version + .short 0 ## Header: padding + .long 1 ## Header: compilation unit count + .long 0 ## Header: local type unit count + .long 0 ## Header: foreign type unit count + .long 3 ## Header: bucket count + .long 3 ## Header: name count +.set Lset9, Lnames_abbrev_end0-Lnames_abbrev_start0 ## Header: abbreviation table size + .long Lset9 + .long 8 ## Header: augmentation string size + .ascii "LLVM0700" ## Header: augmentation string +.set Lset10, Lcu_begin0-Lsection_info ## Compilation unit 0 + .long Lset10 + .long 0 ## Bucket 0 + .long 1 ## Bucket 1 + .long 2 ## Bucket 2 + .long 2090499946 ## Hash in Bucket 1 + .long 193495088 ## Hash in Bucket 2 + .long 2090147939 ## Hash in Bucket 2 + .long 172 ## String in Bucket 1: main + .long 177 ## String in Bucket 2: int + .long 191 ## String in Bucket 2: char +.set Lset11, Lnames0-Lnames_entries0 ## Offset in Bucket 1 + .long Lset11 +.set Lset12, Lnames1-Lnames_entries0 ## Offset in Bucket 2 + .long Lset12 +.set Lset13, Lnames2-Lnames_entries0 ## Offset in Bucket 2 + .long Lset13 +Lnames_abbrev_start0: + .ascii "\230." ## Abbrev code + .byte 46 ## DW_TAG_subprogram + .byte 3 ## DW_IDX_die_offset + .byte 19 ## DW_FORM_ref4 + .byte 4 ## DW_IDX_parent + .byte 25 ## DW_FORM_flag_present + .byte 0 ## End of abbrev + .byte 0 ## End of abbrev + .ascii "\230$" ## Abbrev code + .byte 36 ## DW_TAG_base_type + .byte 3 ## DW_IDX_die_offset + .byte 19 ## DW_FORM_ref4 + .byte 4 ## DW_IDX_parent + .byte 25 ## DW_FORM_flag_present + .byte 0 ## End of abbrev + .byte 0 ## End of abbrev + .byte 0 ## End of abbrev list +Lnames_abbrev_end0: +Lnames_entries0: +Lnames0: +L1: + .ascii "\230." ## Abbreviation code + .long 37 ## DW_IDX_die_offset + .byte 0 ## DW_IDX_parent + ## End of list: main +Lnames1: +L0: + .ascii "\230$" ## Abbreviation code + .long 73 ## DW_IDX_die_offset + .byte 0 ## DW_IDX_parent + ## End of list: int +Lnames2: +L2: + .ascii "\230$" ## Abbreviation code + .long 87 ## DW_IDX_die_offset + .byte 0 ## DW_IDX_parent + ## End of list: char + .p2align 2, 0x0 +Lnames_end0: +.subsections_via_symbols + .section __DWARF,__debug_line,regular,debug +Lsection_line: +Lline_table_start0: diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_compact_unwind.s b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_compact_unwind.s index e57831418304..38522078f4ce 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_compact_unwind.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_compact_unwind.s @@ -1,6 +1,7 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=x86_64-apple-darwin11 -filetype=obj -o %t %s -# RUN: llvm-jitlink -noexec -debug-only=jitlink %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s # # Check that splitting of compact-unwind sections works. # diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_alignment.s b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_alignment.s index 5a8cef5749f0..3859a35ce221 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_alignment.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_alignment.s @@ -1,6 +1,7 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=x86_64-apple-macos10.9 -filetype=obj -o %t %s -# RUN: llvm-jitlink -debug-only=jitlink -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s # # Verify that PC-begin candidate symbols have been sorted correctly when adding # PC-begin edges for FDEs. In this test both _main and _X are at address zero, diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_splitting.s b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_splitting.s index a5baf5611cc2..0d68a10c59d1 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_splitting.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_cstring_section_splitting.s @@ -1,7 +1,8 @@ # REQUIRES: asserts # RUN: llvm-mc -triple=x86_64-apple-macosx10.9 -filetype=obj -o %t %s -# RUN: llvm-jitlink -debug-only=jitlink -noexec -entry hook %t 2>&1 | \ -# RUN: FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec \ +# RUN: -entry hook %t 2>&1 \ +# RUN: | FileCheck %s # # Verify that we split C string literals on null-terminators, rather than on # symbol boundaries. We expect four dead-stripped symbols: l_str.0, l_str.2, diff --git a/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_non_subsections_via_symbols.s b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_non_subsections_via_symbols.s index e1adb3bc75a1..66fcb47fc7ab 100644 --- a/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_non_subsections_via_symbols.s +++ b/llvm/test/ExecutionEngine/JITLink/x86-64/MachO_non_subsections_via_symbols.s @@ -4,7 +4,8 @@ # # REQUIRES: asserts # RUN: llvm-mc -triple=x86_64-apple-macosx10.9 -filetype=obj -o %t %s -# RUN: llvm-jitlink -debug-only=jitlink -noexec %t 2>&1 | FileCheck %s +# RUN: llvm-jitlink -num-threads=0 -debug-only=jitlink -noexec %t 2>&1 \ +# RUN: | FileCheck %s # CHECK: Creating graph symbols... # CHECK: Graphifying regular section __DATA,__data... |
