aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/tools/llvm-readobj/XCOFF/relocations-invalid.test
blob: d9557dc98d30c172d11f78544d57c92eb35f9e00 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
## Check we report warnings when relocations are broken.

# RUN: yaml2obj --docnum=1 %s -o %t1
# RUN: llvm-readobj --relocs --expand-relocs %t1 2>&1 | \
# RUN:   FileCheck %s -DFILE=%t1 --check-prefix=INVALID-REL

# INVALID-REL:      Relocations [
# INVALID-REL-NEXT:   warning: '[[FILE]]': The end of the file was unexpectedly encountered: relocations with offset 0x222 and size 0x0 go past the end of the file
# INVALID-REL-NEXT: ]

--- !XCOFF
FileHeader:
  MagicNumber:   0x1DF
Sections:
  - Name:        .text
    Flags:       [ STYP_TEXT ]
## Case 1: Incorrect offset to relocation entries.
    FileOffsetToRelocations: 0x222

# RUN: yaml2obj --docnum=2 %s -o %t2
# RUN: llvm-readobj --relocs --expand-relocs %t2 2>&1 | \
# RUN:   FileCheck %s -DFILE=%t2 --check-prefix=INVALID-SYM

# INVALID-SYM:      Relocations [
# INVALID-SYM-NEXT:   Section (index: 1) .text {
# INVALID-SYM-NEXT:     warning: '[[FILE]]': symbol index 33 exceeds symbol count 0
# INVALID-SYM-NEXT:   }
# INVALID-SYM-NEXT: ]

--- !XCOFF
FileHeader:
  MagicNumber:   0x1DF
Sections:
  - Name:        .text
    Flags:       [ STYP_TEXT ]
    Relocations:
      - Address: 0x80
## Case 2: There is no symbol with index 0x21.
        Symbol:  0x21