llvm-project/lld/test/wasm/section-symbol-relocs.yaml

62 lines
2.1 KiB
YAML

# RUN: yaml2obj %s -o %t.o
# RUN: llc -filetype=obj %S/Inputs/custom.ll -o %t2.o
# RUN: wasm-ld --no-entry -o - %t2.o %t.o | obj2yaml | FileCheck %s
# RUN: wasm-ld -r --no-entry -o - %t2.o %t.o | obj2yaml | FileCheck %s -check-prefix=RELOC
--- !WASM
FileHeader:
Version: 0x00000001
Sections:
- Type: CUSTOM
Name: green
Payload: 'AA0000000000000000'
Relocations:
- Type: R_WASM_SECTION_OFFSET_I32
Index: 0
Offset: 0x00000001
- Type: R_WASM_SECTION_OFFSET_I32
Index: 1
Offset: 0x00000005
- Type: CUSTOM
Name: red
Payload: 'BB0000000000000000'
- Type: CUSTOM
Name: linking
Version: 2
SymbolTable:
- Index: 0
Kind: SECTION
Section: 0
Flags: [ BINDING_LOCAL ]
- Index: 1
Kind: SECTION
Section: 1
Flags: [ BINDING_LOCAL ]
...
# CHECK: Name: green
# CHECK-NEXT: Payload: 626172717578AA0600000003000000
# CHECK: Name: red
# CHECK-NEXT: Payload: 666F6FBB0000000000000000
# RELOC: Relocations:
# RELOC-NEXT: - Type: R_WASM_SECTION_OFFSET_I32
# RELOC-NEXT: Index: 0
# RELOC-NEXT: Offset: 0x7
# RELOC-NEXT: Addend: 6
# RELOC-NEXT: - Type: R_WASM_SECTION_OFFSET_I32
# RELOC-NEXT: Index: 1
# RELOC-NEXT: Offset: 0xB
# RELOC-NEXT: Addend: 3
# RELOC-NEXT: Name: green
#
# RELOC: SymbolTable:
# RELOC-NEXT: - Index: 0
# RELOC-NEXT: Kind: SECTION
# RELOC-NEXT: Flags: [ BINDING_LOCAL ]
# RELOC-NEXT: Section: 1
# RELOC-NEXT: - Index: 1
# RELOC-NEXT: Kind: SECTION
# RELOC-NEXT: Flags: [ BINDING_LOCAL ]
# RELOC-NEXT: Section: 2