brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.7 KiB · 6252c63 Raw
77 lines · plain
1# RUN: llvm-objdump -d %p/Inputs/cfi.elf-aarch64 | FileCheck %s2 3# CHECK: Disassembly of section .plt:4# CHECK: <__cfi_slowpath@plt>:5# CHECK-NEXT: adrp      x16, {{.*}}6# CHECK: bl {{.*}} <__cfi_slowpath@plt>7 8# RUN: yaml2obj %s -o %t.aarch649# RUN: llvm-objdump -d --mattr=+bti %t.aarch64 | FileCheck --check-prefix=CHECK-BTI %s10# RUN: yaml2obj -DENDIAN=MSB %s -o %t.aarch64_be11# RUN: llvm-objdump -d --mattr=+bti %t.aarch64_be | FileCheck --check-prefix=CHECK-BTI %s12# CHECK-BTI: bl {{.*}} <f1@plt>13# CHECK-BTI: bl {{.*}} <f2@plt>14# CHECK-BTI: Disassembly of section .plt:15# CHECK-BTI: <f1@plt>:16# CHECK-BTI-NEXT: bti   c17# CHECK-BTI-NEXT: adrp  x16, {{.*}}18# CHECK-BTI: <f2@plt>:19# CHECK-BTI-NEXT: bti   c20# CHECK-BTI-NEXT: adrp  x16, {{.*}}21 22# RUN: yaml2obj -D SYM=0 %s -o %tindex23# RUN: llvm-objdump -d %tindex 2>&1 | FileCheck %s --check-prefix=INVALID_INDEX -DFILE=%tindex24 25# INVALID_INDEX: warning: '[[FILE]]': PLT entry at 0x210030 references an invalid symbol{{$}}26# INVALID_INDEX: Disassembly of section .text:27 28# RUN: yaml2obj -D ST_NAME=0x1234 %s -o %tst_name29# RUN: llvm-objdump -d %tst_name 2>&1 | FileCheck %s --check-prefix=INVALID_ST_NAME -DFILE=%tst_name30 31# INVALID_ST_NAME:      warning: '[[FILE]]': st_name (0x1234) is past the end of the string table of size 0x732# INVALID_ST_NAME-NEXT: warning: '[[FILE]]': PLT entry at 0x210030 references an invalid symbol{{$}}33# INVALID_ST_NAME:      Disassembly of section .text:34 35--- !ELF36FileHeader:37  Class:   ELFCLASS6438  Data:    ELFDATA2[[ENDIAN=LSB]]39  Type:    ET_EXEC40  Machine: EM_AARCH6441Sections:42  - Name:    .rela.plt43    Type:    SHT_RELA44    Flags:   [ SHF_ALLOC ]45    EntSize: 0x000000000000001846    Info:    .got.plt47    Relocations:48      - Offset: 0x000000000023001849        Symbol: [[SYM=f1]]50        Type:   R_AARCH64_JUMP_SLOT51      - Offset: 0x000000000023002052        Symbol: f253        Type:   R_AARCH64_JUMP_SLOT54  - Name:    .text55    Type:    SHT_PROGBITS56    Flags:   [ SHF_ALLOC, SHF_EXECINSTR ]57    Address: 0x000000000021000058    Content: 0C00009411000094C0035FD659  - Name:    .plt60    Type:    SHT_PROGBITS61    Flags:   [ SHF_ALLOC, SHF_EXECINSTR ]62    Address: 0x000000000021001063    Content: 5F2403D5F07BBFA910010090110A40F91042009120021FD61F2003D51F2003D55F2403D510010090110E40F9106200919F2103D520021FD65F2403D510010090111240F9108200919F2103D520021FD664  - Name:    .got.plt65    Type:    SHT_PROGBITS66## The content is in little-endian, but it does not affect aarch64_be PLT decoding.67    Content: '000000000000000000000000000000000000000000000000100021000000000010002100000000001000210000000000'68Symbols:69  - Name:    f170    StName:  [[ST_NAME=<none>]]71    Type:    STT_FUNC72    Binding: STB_GLOBAL73  - Name:    f274    Type:    STT_FUNC75    Binding: STB_GLOBAL76...77