Test bitcode parsing error-handling for incorrect explicit type
[oota-llvm.git] / test / Bitcode / invalid.test
1 RUN: not llvm-dis -disable-output %p/Inputs/invalid-pr20485.bc 2>&1 | \
2 RUN:   FileCheck --check-prefix=INVALID-ENCODING %s
3 RUN: not llvm-dis -disable-output %p/Inputs/invalid-abbrev.bc 2>&1 | \
4 RUN:   FileCheck --check-prefix=BAD-ABBREV %s
5 RUN: not llvm-dis -disable-output %p/Inputs/invalid-unexpected-eof.bc 2>&1 | \
6 RUN:   FileCheck --check-prefix=UNEXPECTED-EOF %s
7 RUN: not llvm-dis -disable-output %p/Inputs/invalid-bad-abbrev-number.bc 2>&1 | \
8 RUN:   FileCheck --check-prefix=BAD-ABBREV-NUMBER %s
9 RUN: not llvm-dis -disable-output %p/Inputs/invalid-type-table-forward-ref.bc 2>&1 | \
10 RUN:   FileCheck --check-prefix=BAD-TYPE-TABLE-FORWARD-REF %s
11 RUN: not llvm-dis -disable-output %p/Inputs/invalid-bitwidth.bc 2>&1 | \
12 RUN:   FileCheck --check-prefix=BAD-BITWIDTH %s
13 RUN: not llvm-dis -disable-output %p/Inputs/invalid-align.bc  2>&1 | \
14 RUN:   FileCheck --check-prefix=BAD-ALIGN %s
15 RUN: not llvm-dis -disable-output %p/Inputs/invalid-gep-mismatched-explicit-type.bc 2>&1 | \
16 RUN:   FileCheck --check-prefix=MISMATCHED-EXPLICIT-GEP %s
17
18 INVALID-ENCODING: Invalid encoding
19 BAD-ABBREV: Abbreviation starts with an Array or a Blob
20 UNEXPECTED-EOF: Unexpected end of file
21 BAD-ABBREV-NUMBER: Invalid abbrev number
22 BAD-TYPE-TABLE-FORWARD-REF: Invalid TYPE table: Only named structs can be forward referenced
23 BAD-BITWIDTH: Bitwidth for integer type out of range
24 BAD-ALIGN: Invalid alignment value
25 MISMATCHED-EXPLICIT-GEP: Explicit gep type does not match pointee type of pointer operand
26
27 RUN: not llvm-dis -disable-output %p/Inputs/invalid-extractval-array-idx.bc 2>&1 | \
28 RUN:   FileCheck --check-prefix=EXTRACT-ARRAY %s
29 RUN: not llvm-dis -disable-output %p/Inputs/invalid-extractval-struct-idx.bc 2>&1 | \
30 RUN:   FileCheck --check-prefix=EXTRACT-STRUCT %s
31 RUN: not llvm-dis -disable-output %p/Inputs/invalid-extractval-too-many-idxs.bc 2>&1 | \
32 RUN:   FileCheck --check-prefix=EXTRACT-IDXS %s
33 RUN: not llvm-dis -disable-output %p/Inputs/invalid-insertval-array-idx.bc 2>&1 | \
34 RUN:   FileCheck --check-prefix=INSERT-ARRAY %s
35 RUN: not llvm-dis -disable-output %p/Inputs/invalid-insertval-struct-idx.bc 2>&1 | \
36 RUN:   FileCheck --check-prefix=INSERT-STRUCT %s
37 RUN: not llvm-dis -disable-output %p/Inputs/invalid-insertval-too-many-idxs.bc 2>&1 | \
38 RUN:   FileCheck --check-prefix=INSERT-IDXS %s
39
40
41 EXTRACT-ARRAY: EXTRACTVAL: Invalid array index
42 EXTRACT-STRUCT: EXTRACTVAL: Invalid struct index
43 EXTRACT-IDXS: EXTRACTVAL: Invalid type
44 INSERT-ARRAY: INSERTVAL: Invalid array index
45 INSERT-STRUCT: INSERTVAL: Invalid struct index
46 INSERT-IDXS: INSERTVAL: Invalid type