X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FBitcode%2Finvalid.test;h=2fe77989b2a50ba16261c9b2a6e3bbc3ce6752f6;hb=deedba2a369a693905c467b805449a3109fca6c7;hp=5c6e280024c2c13e37c181019e5a8e89a36d1f00;hpb=5023f151a7501d68d7c0f2bf94f0fb6badb93ae8;p=oota-llvm.git diff --git a/test/Bitcode/invalid.test b/test/Bitcode/invalid.test index 5c6e280024c..2fe77989b2a 100644 --- a/test/Bitcode/invalid.test +++ b/test/Bitcode/invalid.test @@ -22,6 +22,10 @@ RUN: not llvm-dis -disable-output %p/Inputs/invalid-call-mismatched-explicit-typ RUN: FileCheck --check-prefix=MISMATCHED-EXPLICIT-CALL %s RUN: not llvm-dis -disable-output %p/Inputs/invalid-call-non-function-explicit-type.bc 2>&1 | \ RUN: FileCheck --check-prefix=NON-FUNCTION-EXPLICIT-CALL %s +RUN: not llvm-dis -disable-output %p/Inputs/invalid-invoke-mismatched-explicit-type.bc 2>&1 | \ +RUN: FileCheck --check-prefix=MISMATCHED-EXPLICIT-INVOKE %s +RUN: not llvm-dis -disable-output %p/Inputs/invalid-invoke-non-function-explicit-type.bc 2>&1 | \ +RUN: FileCheck --check-prefix=NON-FUNCTION-EXPLICIT-INVOKE %s INVALID-ENCODING: Invalid encoding BAD-ABBREV: Abbreviation starts with an Array or a Blob @@ -35,6 +39,8 @@ MISMATCHED-EXPLICIT-LOAD: Explicit load type does not match pointee type of poin MISMATCHED-EXPLICIT-GEP-OPERATOR: Explicit gep operator type does not match pointee type of pointer operand MISMATCHED-EXPLICIT-CALL: Explicit call type does not match pointee type of callee operand NON-FUNCTION-EXPLICIT-CALL: Explicit call type is not a function type +MISMATCHED-EXPLICIT-INVOKE: Explicit invoke type does not match pointee type of callee operand +NON-FUNCTION-EXPLICIT-INVOKE: Explicit invoke type is not a function type RUN: not llvm-dis -disable-output %p/Inputs/invalid-extractval-array-idx.bc 2>&1 | \ RUN: FileCheck --check-prefix=EXTRACT-ARRAY %s @@ -61,3 +67,63 @@ RUN: not llvm-dis -disable-output %p/Inputs/invalid-no-proper-module.bc 2>&1 | \ RUN: FileCheck --check-prefix=NO-MODULE %s NO-MODULE: Malformed IR file + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-fp-shift.bc 2>&1 | \ +RUN: FileCheck --check-prefix=FP-SHIFT %s + +FP-SHIFT: Invalid record + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-abbrev-vbr-size-too-big.bc 2>&1 | \ +RUN: FileCheck --check-prefix=HUGE-ABBREV-OP %s +RUN: not llvm-dis -disable-output %p/Inputs/invalid-abbrev-fixed-size-too-big.bc 2>&1 | \ +RUN: FileCheck --check-prefix=HUGE-ABBREV-OP %s + +HUGE-ABBREV-OP: Fixed or VBR abbrev record with size > MaxChunkData + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-array-type.bc 2>&1 | \ +RUN: FileCheck --check-prefix=ARRAY-TYPE %s + +ARRAY-TYPE: Array element type can't be an Array or a Blob + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-non-vector-extractelement.bc 2>&1 | \ +RUN: FileCheck --check-prefix=INVALID-TYPE %s +RUN: not llvm-dis -disable-output %p/Inputs/invalid-non-vector-insertelement.bc 2>&1 | \ +RUN: FileCheck --check-prefix=INVALID-TYPE %s +RUN: not llvm-dis -disable-output %p/Inputs/invalid-non-vector-shufflevector.bc 2>&1 | \ +RUN: FileCheck --check-prefix=INVALID-TYPE %s + +INVALID-TYPE: Invalid type for value + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-fwdref-type-mismatch.bc 2>&1 | \ +RUN: FileCheck --check-prefix=FWDREF-TYPE %s + +FWDREF-TYPE: Invalid record + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-array-element-type.bc 2>&1 | \ +RUN: FileCheck --check-prefix=ELEMENT-TYPE %s +RUN: not llvm-dis -disable-output %p/Inputs/invalid-vector-element-type.bc 2>&1 | \ +RUN: FileCheck --check-prefix=ELEMENT-TYPE %s +RUN: not llvm-dis -disable-output %p/Inputs/invalid-pointer-element-type.bc 2>&1 | \ +RUN: FileCheck --check-prefix=ELEMENT-TYPE %s + +ELEMENT-TYPE: Invalid type + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-array-op-not-2nd-to-last.bc 2>&1 | \ +RUN: FileCheck --check-prefix=ARRAY-NOT-2LAST %s + +ARRAY-NOT-2LAST: Array op not second to last + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-too-big-fwdref.bc 2>&1 | \ +RUN: FileCheck --check-prefix=HUGE-FWDREF %s + +HUGE-FWDREF: Invalid record + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-load-pointer-type.bc 2>&1 | \ +RUN: FileCheck --check-prefix=LOAD-BAD-TYPE %s + +LOAD-BAD-TYPE: Load operand is not a pointer type + +RUN: not llvm-dis -disable-output %p/Inputs/invalid-GCTable-overflow.bc 2>&1 | \ +RUN: FileCheck --check-prefix=GCTABLE-OFLOW %s + +GCTABLE-OFLOW: Invalid ID