brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.3 KiB · 0f17c4c Raw
77 lines · plain
1// REQUIRES: aarch642// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %s -o %t.o3// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %p/Inputs/relocation-copy.s -o %t2.o4// RUN: ld.lld -shared %t2.o -soname fixed-length-string.so -o %t2.so5// RUN: ld.lld --no-relax %t.o %t2.so -o %t6// RUN: llvm-readobj -S -r --symbols %t | FileCheck %s7// RUN: llvm-objdump --no-print-imm-hex -d --no-show-raw-insn %t | FileCheck --check-prefix=CODE %s8// RUN: llvm-objdump -s --section=.rodata %t | FileCheck --check-prefix=RODATA %s9 10.text11.globl _start12_start:13    adr x1, x14    adrp x2, y15    add x2, x2, :lo12:y16.rodata17    .word z18 19// CHECK:     Name: .bss20// CHECK-NEXT:     Type: SHT_NOBITS21// CHECK-NEXT:     Flags [22// CHECK-NEXT:       SHF_ALLOC23// CHECK-NEXT:       SHF_WRITE24// CHECK-NEXT:     ]25// CHECK-NEXT:     Address: 0x2303F026// CHECK-NEXT:     Offset:27// CHECK-NEXT:     Size: 2428// CHECK-NEXT:     Link:29// CHECK-NEXT:     Info:30// CHECK-NEXT:     AddressAlignment: 1631 32// CHECK: Relocations [33// CHECK-NEXT:   Section ({{.*}}) .rela.dyn {34// CHECK-NEXT:     0x2303F0 R_AARCH64_COPY x 0x035// CHECK-NEXT:     0x230400 R_AARCH64_COPY y 0x036// CHECK-NEXT:     0x230404 R_AARCH64_COPY z 0x037// CHECK-NEXT:   }38// CHECK-NEXT: ]39 40// CHECK: Symbols [41// CHECK:     Name: x42// CHECK-NEXT:     Value: 0x2303F043// CHECK-NEXT:     Size: 444// CHECK-NEXT:     Binding: Global45// CHECK-NEXT:     Type: Object46// CHECK-NEXT:     Other:47// CHECK-NEXT:     Section: .bss48// CHECK:     Name: y49// CHECK-NEXT:     Value: 0x23040050// CHECK-NEXT:     Size: 451// CHECK-NEXT:     Binding: Global52// CHECK-NEXT:     Type: Object53// CHECK-NEXT:     Other:54// CHECK-NEXT:     Section: .bss55// CHECK:     Name: z56// CHECK-NEXT:     Value: 0x23040457// CHECK-NEXT:     Size: 458// CHECK-NEXT:     Binding: Global59// CHECK-NEXT:     Type: Object60// CHECK-NEXT:     Other:61// CHECK-NEXT:     Section: .bss62// CHECK: ]63 64// CODE: Disassembly of section .text:65// CODE-EMPTY:66// CODE-NEXT: <_start>:67// S + A - P = 0x2303f0 + 0 - 0x21031c = 13128468// CODE-NEXT:  21031c: adr  x1, 0x2303f069// Page(S + A) - Page(P) = Page(0x230400) - Page(0x210320) = 13107270// CODE-NEXT:  210320: adrp x2, 0x23000071// (S + A) & 0xFFF = (0x230400 + 0) & 0xFFF = 102472// CODE-NEXT:  210324: add  x2, x2, #102473 74// RODATA: Contents of section .rodata:75// S(z) = 0x23040476// RODATA-NEXT:  200318 0404230077