xref: /llvm-project/llvm/test/tools/yaml2obj/ELF/relocation-missing-symbol.yaml (revision 1b704e889f09b5dfc0549786542bc6d2cd54e85b)
1## Show that yaml2obj rejects a symbol reference from a relocation if the symbol
2## does not exist.
3
4# RUN: not yaml2obj %s -o %t 2>&1 | FileCheck %s
5# RUN: not yaml2obj -DTYPE=SHT_CREL %s -o %t 2>&1 | FileCheck %s
6
7## Check we are able to report multiple errors.
8
9# CHECK: error: unknown symbol referenced: 'does_not_exist1' by YAML section '.rela.text'
10# CHECK: error: unknown symbol referenced: 'does_not_exist2' by YAML section '.rela.text'
11
12--- !ELF
13FileHeader:
14  Class:   ELFCLASS64
15  Data:    ELFDATA2LSB
16  Type:    ET_REL
17  Machine: EM_X86_64
18Sections:
19  - Name: .text
20    Type: SHT_PROGBITS
21  - Name: .rela.text
22    Type: [[TYPE=SHT_RELA]]
23    Info: .text
24    Link: .symtab
25    Relocations:
26      - Type: R_X86_64_PC32
27        Symbol: does_not_exist1
28      - Type: R_X86_64_PC32
29        Symbol: does_not_exist2
30