OSDN Git Service

8d2cb72ae7d72e572937ae5f4bd23e331f39d947
[android-x86/external-llvm.git] / test / Object / invalid.test
1 RUN: not llvm-dwarfdump %p/Inputs/invalid-bad-rel-type.elf 2>&1 | FileCheck %s
2 RUN: not llvm-objdump -s %p/Inputs/invalid-strtab-type.elf 2>&1 | FileCheck %s
3 RUN: not llvm-objdump -s %p/Inputs/invalid-strtab-size.elf 2>&1 | FileCheck %s
4 RUN: not llvm-objdump -s %p/Inputs/invalid-strtab-zero-size.elf 2>&1 | FileCheck %s
5 CHECK: Invalid data was encountered while parsing the file
6
7 RUN: not llvm-objdump -s %p/Inputs/invalid-strtab-non-null.elf 2>&1 | FileCheck --check-prefix=NON-NULL %s
8 NON-NULL: Invalid data was encountered while parsing the file
9
10 Test the sh_entsize are invalid
11 RUN: llvm-readobj -s %p/Inputs/invalid-sh_entsize.elf | FileCheck --check-prefix=SECTION %s
12
13 SECTION:         Name: .dynsym
14 SECTION-NEXT:    Type: SHT_DYNSYM
15 SECTION-NEXT:    Flags [
16 SECTION-NEXT:      SHF_ALLOC
17 SECTION-NEXT:    ]
18 SECTION-NEXT:    Address:
19 SECTION-NEXT:    Offset:
20 SECTION-NEXT:    Size:
21 SECTION-NEXT:    Link:
22 SECTION-NEXT:    Info:
23 SECTION-NEXT:    AddressAlignment:
24 SECTION-NEXT:    EntrySize: 32
25
26 SECTION:         Name: .symtab
27 SECTION-NEXT:    Type: SHT_SYMTAB
28 SECTION-NEXT:    Flags [
29 SECTION-NEXT:    ]
30 SECTION-NEXT:    Address:
31 SECTION-NEXT:    Offset:
32 SECTION-NEXT:    Size:
33 SECTION-NEXT:    Link:
34 SECTION-NEXT:    Info:
35 SECTION-NEXT:    AddressAlignment:
36 SECTION-NEXT:    EntrySize: 32
37
38 RUN: not llvm-readobj -t %p/Inputs/invalid-sh_entsize.elf 2>&1 | FileCheck --check-prefix=INVALID-SYM-SIZE %s
39 INVALID-SYM-SIZE: invalid sh_entsize
40
41 RUN: not llvm-readobj --dyn-symbols %p/Inputs/invalid-sh_entsize.elf 2>&1 | FileCheck --check-prefix=INVALID-DYNSYM-SIZE %s
42 INVALID-DYNSYM-SIZE: Invalid entity size
43
44 RUN: not llvm-readobj -t %p/Inputs/invalid-section-index.elf 2>&1 | FileCheck --check-prefix=INVALID-SECTION-INDEX %s
45 INVALID-SECTION-INDEX: invalid section index
46
47 RUN: not llvm-readobj -s %p/Inputs/invalid-section-size.elf 2>&1 | FileCheck --check-prefix=INVALID-SECTION-SIZE %s
48 INVALID-SECTION-SIZE: invalid section header entry size (e_shentsize) in ELF header
49
50
51 RUN: not llvm-readobj -t %p/Inputs/invalid-symbol-table-size.elf 2>&1 | FileCheck --check-prefix=INVALID-SYMTAB-SIZE %s
52 INVALID-SYMTAB-SIZE: size is not a multiple of sh_entsize
53
54
55 RUN: not llvm-readobj -t %p/Inputs/invalid-xindex-size.elf 2>&1 | FileCheck --check-prefix=INVALID-XINDEX-SIZE %s
56 INVALID-XINDEX-SIZE: invalid section contents size
57
58 RUN: not llvm-readobj -t %p/Inputs/invalid-e_shnum.elf 2>&1 | FileCheck --check-prefix=INVALID-SH-NUM %s
59 INVALID-SH-NUM: invalid e_phentsize
60
61 RUN: not llvm-readobj -t %p/Inputs/invalid-ext-symtab-index.elf-x86-64 2>&1 | \
62 RUN:   FileCheck --check-prefix=INVALID-EXT-SYMTAB-INDEX %s
63 INVALID-EXT-SYMTAB-INDEX: index past the end of the symbol table
64
65 RUN: not llvm-readobj -r %p/Inputs/invalid-relocation-sec-sh_offset.elf-i386 2>&1 | \
66 RUN:   FileCheck --check-prefix=INVALID-RELOC-SH-OFFSET %s
67 RUN: not llvm-readobj -r %p/Inputs/invalid-relocation-sec-sh_offset.elf-x86-64 2>&1 | \
68 RUN:   FileCheck --check-prefix=INVALID-RELOC-SH-OFFSET %s
69 INVALID-RELOC-SH-OFFSET: invalid section offset
70
71 RUN: not llvm-readobj -t %p/Inputs/invalid-sections-address-alignment.x86-64 2>&1 | \
72 RUN:   FileCheck --check-prefix=INVALID-SEC-ADDRESS-ALIGNMENT %s
73 INVALID-SEC-ADDRESS-ALIGNMENT: invalid alignment of section headers
74
75 RUN: not llvm-readobj -t %p/Inputs/invalid-section-size2.elf 2>&1 | \
76 RUN:   FileCheck --check-prefix=INVALID-SECTION-SIZE2 %s
77 INVALID-SECTION-SIZE2: invalid section offset
78
79 RUN: not llvm-readobj -t %p/Inputs/invalid-sections-num.elf 2>&1 | FileCheck --check-prefix=INVALID-SECTION-NUM %s
80 INVALID-SECTION-NUM: section table goes past the end of file
81
82 RUN: not llvm-readobj -r %p/Inputs/invalid-rel-sym.elf 2>&1 | FileCheck --check-prefix=INVALID-REL-SYM %s
83 INVALID-REL-SYM: invalid section offset