brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.3 KiB · 9f46ff0 Raw
61 lines · plain
1# Test pre-v7 Thumb features for Thumb-only targets2#3# RUN: llvm-mc -triple=thumbv6m-linux-gnueabi -arm-add-build-attributes -filetype=obj -o %t_thumbv6m.o %s4# RUN: llvm-objdump -r %t_thumbv6m.o | FileCheck --check-prefix=CHECK-TYPE %s5# RUN: llvm-objdump --disassemble %t_thumbv6m.o | FileCheck --check-prefix=CHECK-INSTR %s6# RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \7# RUN:              -slab-page-size 4096 -abs external_func=0x76bbe880 \8# RUN:              -check %s %t_thumbv6m.o9#10# RUN: llvm-mc -triple=thumbv7m-linux-gnueabi -arm-add-build-attributes -filetype=obj -o %t_thumbv7m.o %s11# RUN: llvm-objdump -r %t_thumbv7m.o | FileCheck --check-prefix=CHECK-TYPE %s12# RUN: llvm-objdump --disassemble %t_thumbv7m.o | FileCheck --check-prefix=CHECK-INSTR %s13# RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \14# RUN:              -slab-page-size 4096 -abs external_func=0x76bbe880 \15# RUN:              -check %s %t_thumbv7m.o16#17# RUN: llvm-mc -triple=thumbv7-linux-gnueabi -arm-add-build-attributes -filetype=obj -o %t_thumbv7.o %s18# RUN: llvm-objdump -r %t_thumbv7.o | FileCheck --check-prefix=CHECK-TYPE %s19# RUN: llvm-objdump --disassemble %t_thumbv7.o | FileCheck --check-prefix=CHECK-INSTR %s20# RUN: llvm-jitlink -noexec -slab-address 0x76ff0000 -slab-allocate 10Kb \21# RUN:              -slab-page-size 4096 -abs external_func=0x76bbe880 \22# RUN:              -check %s %t_thumbv7.o23 24 25	.text26	.syntax unified27 28# CHECK-TYPE: {{[0-9a-f]+}} R_ARM_THM_CALL call_target_thumb29# CHECK-INSTR: <call_site>:30# CHECK-INSTR: f7ff fffe     bl31# We decode the operand with index 2, because bl generates two leading implicit32# predicate operands that we have to skip in order to decode the call_target operand33# jitlink-check: decode_operand(call_site, 2) = call_target_thumb - next_pc(call_site)34	.globl	call_site35	.type	call_site,%function36	.p2align	137	.code	1638	.thumb_func39call_site:40	bl	call_target_thumb41	.size	call_site, .-call_site42 43	.globl	call_target_thumb44	.type	call_target_thumb,%function45	.p2align	146	.code	1647	.thumb_func48call_target_thumb:49	bx	lr50	.size	call_target_thumb, .-call_target_thumb51 52# Empty main function for jitlink to be happy53	.globl	main54	.type	main,%function55	.p2align	156	.code	1657	.thumb_func58main:59	bx	lr60	.size	main,	.-main61