Fix a backwards compatibility bug found by Tanya. In version 1.2, the

global type plane starts with a length and the TypeTyID value to identify
the type plane has having type definitions. This doesn't happen in 1.3
because the types are read from a known position in the file. However, the
TypeTyID must be read in (and ignored) if its a 1.2 bytecode file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14728 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer 2004-07-09 21:13:53 +00:00
parent 20d20fc77d
commit 011bed5ef8

View File

@ -1641,6 +1641,11 @@ void BytecodeReader::ParseAllFunctionBodies() {
void BytecodeReader::ParseGlobalTypes() {
// Read the number of types
unsigned NumEntries = read_vbr_uint();
// Ignore the type plane identifier for types if the bc file is pre 1.3
if (hasTypeDerivedFromValue)
read_vbr_uint();
ParseTypeConstants(ModuleTypes, NumEntries);
}