brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.8 KiB · 9a31952 Raw
153 lines · plain
1// RUN: llvm-mc -triple aarch64-windows -filetype obj -o %t.obj %s2// RUN: llvm-rtdyld -triple aarch64-windows -dummy-extern dummy=0x79563413 -dummy-extern dummyA=0x78566879 -target-addr-start=40960000000000 -verify -check %s %t.obj3 4  .text5  .def _bnamed6  .scl 27	.type 328  .endef9 10  .globl _bnamed11  .align 212_bnamed:13  ret14 15  .def _foo16  .scl 217	.type 3218  .endef19  .globl _foo20  .align 221_foo:22  movz  w0, #023  ret24 25  .globl _test_adr_relocation26  .align 227 28# IMAGE_REL_ARM64_REL2129# rtdyld-check:  decode_operand(adr1, 1) = (_const[20:0] - adr1[20:0])30_test_adr_relocation:31adr1:32  adr x0, _const33  ret34 35  .globl _test_branch26_reloc36  .align 237 38# IMAGE_REL_ARM64_BRANCH26, test long branch39# rtdyld-check:  decode_operand(brel, 0)[25:0] = (stub_addr(COFF_AArch64.s.tmp.obj/.text, dummy) - brel)[27:2]40_test_branch26_reloc:41brel:42  b dummy43  ret44 45  .globl _test_branch19_reloc46  .align 247 48# IMAGE_REL_ARM64_BRANCH1949# rtdyld-check:  decode_operand(bcond, 1)[18:0] = (_foo - bcond)[20:2]50_test_branch19_reloc:51  mov x0, #352  cmp x0, #253bcond:54  bne _foo55  ret56 57  .globl _test_branch14_reloc58  .align 259 60# IMAGE_REL_ARM64_BRANCH1461# rtdyld-check:  decode_operand(tbz_branch, 2)[13:0] = (_bnamed - tbz_branch)[15:2]62_test_branch14_reloc:63  mov x1, #064tbz_branch:65  tbz x1, #0, _bnamed66  ret67 68  .globl  _test_adrp_ldr_reloc69  .align  270 71# IMAGE_REL_ARM64_PAGEBASE_REL2172# rtdyld-check:  decode_operand(adrp1, 1) = (_const[32:12] - adrp1[32:12])73_test_adrp_ldr_reloc:74adrp1:75  adrp x0, _const76 77# IMAGE_REL_ARM64_PAGEOFFSET_12L78# rtdyld-check:  decode_operand(ldr1, 2) = _const[11:3]79ldr1:80  ldr  x0, [x0, #:lo12:_const]81  ret82 83  .globl  _test_add_reloc84  .align  285 86# IMAGE_REL_ARM64_PAGEOFFSET_12A87# rtdyld-check: decode_operand(add1, 2) = (tgt+4)[11:0]88_test_add_reloc:89add1:90  add x0, x0, tgt@PAGEOFF+491  ret92 93  .section .data94  .globl _test_addr64_reloc95  .align 296 97# IMAGE_REL_ARM64_ADDR6498# rtdyld-check:  *{8}addr64 = tgt+499_test_addr64_reloc:100addr64:101  .quad tgt+4102 103# IMAGE_REL_ARM64_ADDR32104# rtdyld-check:  *{4}_test_addr32_reloc = 0x78566879105_test_addr32_reloc:106  .long dummyA107 108  .globl _relocations109  .align 2110 111# IMAGE_REL_ARM64_ADDR32NB, RVA of the target112# rtdyld-check:  *{4}_relocations = _foo - 40960000000000113_relocations:114  .long _foo@IMGREL115 116# IMAGE_REL_ARM64_ADDR32NB117# rtdyld-check:  *{4}imgrel2 = _string - 40960000000000+5118imgrel2:119  .long _string@IMGREL+5120 121# IMAGE_REL_ARM64_SECTION122# rtdyld-check: *{2}secindex = 1123secindex:124  .secidx _test_addr32_reloc125 126# IMAGE_REL_ARM64_SECREL127# rtdyld-check: *{4}secrel = string - section_addr(COFF_AArch64.s.tmp.obj, .data)128secrel:129  .secrel32 string130 131  .globl _const132  .align 3133_const:134  .quad 4614256650576692846135 136tgt:137  .word 1138  .word 2139  .word 3140  .word 4141  .word 5142 143  .globl string144  .align 2145string:146  .asciz "Hello World\n"147 148  .section .rdata,"dr"149  .globl _string150  .align 2151_string:152  .asciz "Hello World\n"153