diff options
author | Nikita Popov <npopov@redhat.com> | 2023-12-11 12:33:57 +0100 |
---|---|---|
committer | Nikita Popov <npopov@redhat.com> | 2023-12-11 12:37:05 +0100 |
commit | ed07fc809c371825ade9cba99966c23b0f23e868 (patch) | |
tree | 5cf0c4d98246745cb0326e502b21de93935168a1 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | 4648acbb6047afc4834560825c5a2bc6d6384e0d (diff) | |
download | llvm-ed07fc809c371825ade9cba99966c23b0f23e868.zip llvm-ed07fc809c371825ade9cba99966c23b0f23e868.tar.gz llvm-ed07fc809c371825ade9cba99966c23b0f23e868.tar.bz2 |
[Bitcode] Add missing getValue() return value checks
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
-rw-r--r-- | llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp index 9d7e838..98c5e94 100644 --- a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp @@ -5363,6 +5363,8 @@ Error BitcodeReader::parseFunctionBody(Function *F) { Type *TokenTy = Type::getTokenTy(Context); Value *ParentPad = getValue(Record, Idx++, NextValueNo, TokenTy, getVirtualTypeID(TokenTy), CurBB); + if (!ParentPad) + return error("Invalid record"); unsigned NumHandlers = Record[Idx++]; @@ -5404,6 +5406,8 @@ Error BitcodeReader::parseFunctionBody(Function *F) { Type *TokenTy = Type::getTokenTy(Context); Value *ParentPad = getValue(Record, Idx++, NextValueNo, TokenTy, getVirtualTypeID(TokenTy), CurBB); + if (!ParentPad) + return error("Invald record"); unsigned NumArgOperands = Record[Idx++]; |