diff options
author | Filipe Cabecinhas <me@filcab.net> | 2015-04-24 11:30:15 +0000 |
---|---|---|
committer | Filipe Cabecinhas <me@filcab.net> | 2015-04-24 11:30:15 +0000 |
commit | ff1e234fb8f4984e3702bbf41272b363150e634b (patch) | |
tree | c280960ad7d598fb1509dcb0b471b1f75b758931 /llvm/test/Bitcode | |
parent | b9355045e1e11fe65095f66e38d170e989d4a93a (diff) | |
download | bcm5719-llvm-ff1e234fb8f4984e3702bbf41272b363150e634b.tar.gz bcm5719-llvm-ff1e234fb8f4984e3702bbf41272b363150e634b.zip |
[BitcodeReader] Fix asserts when we read a non-vector type for insert/extract/shuffle
Added some additional checking for vector types + tests.
Bug found with AFL fuzz.
llvm-svn: 235710
Diffstat (limited to 'llvm/test/Bitcode')
-rw-r--r-- | llvm/test/Bitcode/Inputs/invalid-non-vector-extractelement.bc | bin | 0 -> 612 bytes | |||
-rw-r--r-- | llvm/test/Bitcode/Inputs/invalid-non-vector-insertelement.bc | bin | 0 -> 612 bytes | |||
-rw-r--r-- | llvm/test/Bitcode/Inputs/invalid-non-vector-shufflevector.bc | bin | 0 -> 612 bytes | |||
-rw-r--r-- | llvm/test/Bitcode/invalid.test | 9 |
4 files changed, 9 insertions, 0 deletions
diff --git a/llvm/test/Bitcode/Inputs/invalid-non-vector-extractelement.bc b/llvm/test/Bitcode/Inputs/invalid-non-vector-extractelement.bc Binary files differnew file mode 100644 index 00000000000..6fee7edad87 --- /dev/null +++ b/llvm/test/Bitcode/Inputs/invalid-non-vector-extractelement.bc diff --git a/llvm/test/Bitcode/Inputs/invalid-non-vector-insertelement.bc b/llvm/test/Bitcode/Inputs/invalid-non-vector-insertelement.bc Binary files differnew file mode 100644 index 00000000000..36271657791 --- /dev/null +++ b/llvm/test/Bitcode/Inputs/invalid-non-vector-insertelement.bc diff --git a/llvm/test/Bitcode/Inputs/invalid-non-vector-shufflevector.bc b/llvm/test/Bitcode/Inputs/invalid-non-vector-shufflevector.bc Binary files differnew file mode 100644 index 00000000000..6c83a4dcb76 --- /dev/null +++ b/llvm/test/Bitcode/Inputs/invalid-non-vector-shufflevector.bc diff --git a/llvm/test/Bitcode/invalid.test b/llvm/test/Bitcode/invalid.test index 1d8e14230ff..f2271e81f5b 100644 --- a/llvm/test/Bitcode/invalid.test +++ b/llvm/test/Bitcode/invalid.test @@ -78,3 +78,12 @@ 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 |