brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.6 KiB · bad3501 Raw
86 lines · plain
1// REQUIRES: aarch642// RUN: llvm-mc -triple=aarch64-linux-gnu -filetype=obj %s -o %t.o3// RUN: ld.lld %t.o -o %t4// RUN: llvm-objdump --no-print-imm-hex -d --no-show-raw-insn %t | FileCheck %s5// RUN: llvm-readelf --symbols %t | FileCheck -check-prefix CHECK-SYMS %s6 7        .text8        .globl _start9        .type _start, %function10_start:  mrs x8, TPIDR_EL011 12        add x8, x8, :tprel_hi12:var013        ldr q20, [x8, :tprel_lo12_nc:var0]14 15        add x8, x8, :tprel_hi12:var116        ldr x0, [x8, :tprel_lo12_nc:var1]17 18        add x8, x8, :tprel_hi12:var219        ldr w0, [x8, :tprel_lo12_nc:var2]20 21        add x8, x8, :tprel_hi12:var322        ldrh w0, [x8, :tprel_lo12_nc:var3]23 24        add x8, x8, :tprel_hi12:var425        ldrb w0, [x8, :tprel_lo12_nc:var4]26 27// CHECK: <_start>:28// CHECK-NEXT:    210158:       mrs     x8, TPIDR_EL029// 0x0 + c10 = 0xc10       = tcb (16-bytes) + var030// CHECK-NEXT:    21015c:       add     x8, x8, #0, lsl #1231// CHECK-NEXT:    210160:       ldr     q20, [x8, #3088]32// 0x1000 + 0x820 = 0x1820 = tcb + var133// CHECK-NEXT:    210164:       add     x8, x8, #1, lsl #1234// CHECK-NEXT:    210168:       ldr     x0, [x8, #2080]35// 0x2000 + 0x428 = 0x2428 = tcb + var236// CHECK-NEXT:    21016c:       add     x8, x8, #2, lsl #1237// CHECK-NEXT:    210170:       ldr     w0, [x8, #1064]38// 0x3000 + 0x2c  = 0x302c = tcb + var339// CHECK-NEXT:    210174:       add     x8, x8, #3, lsl #1240// CHECK-NEXT:    210178:       ldrh    w0, [x8, #44]41// 0x3000 + 0xc2e = 0x32ce = tcb + var442// CHECK-NEXT:    21017c:       add     x8, x8, #3, lsl #1243// CHECK-NEXT:    210180:       ldrb    w0, [x8, #3118]44 45// CHECK-SYMS:      0000000000000c00     0 TLS     GLOBAL DEFAULT    2 var046// CHECK-SYMS-NEXT: 0000000000001810     4 TLS     GLOBAL DEFAULT    2 var147// CHECK-SYMS-NEXT: 0000000000002418     2 TLS     GLOBAL DEFAULT    2 var248// CHECK-SYMS-NEXT: 000000000000301c     1 TLS     GLOBAL DEFAULT    2 var349// CHECK-SYMS-NEXT: 0000000000003c1e     0 TLS     GLOBAL DEFAULT    2 var450 51        .globl var052        .globl var153        .globl var254        .globl var355        .globl var456        .type var0,@object57        .type var1,@object58        .type var2,@object59        .type var3,@object60 61.section .tbss,"awT",@nobits62        .balign 1663        .space 1024 * 364var0:65        .quad 066        .quad 067        .size var1, 1668        .space 1024 * 369var1:70        .quad 071        .size var1, 872        .space 1024 * 373var2:74        .word 075        .size var1, 476 77        .space 1024 * 378var3:79        .hword 080        .size var2, 281        .space 1024 * 382var4:83        .byte 084        .size var3, 185        .space 1024 * 386