summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-01-09 05:42:34 +0000
committerChris Lattner <sabre@nondot.org>2004-01-09 05:42:34 +0000
commit258b5375b4d88759f47d93db06b3dbf321035098 (patch)
tree868acd69b7c98a5e756bdc6171dce805cc725362
parenta25b3557a154fe748635ea48e85349454a9e1bcf (diff)
downloadllvm-258b5375b4d88759f47d93db06b3dbf321035098.tar.gz
llvm-258b5375b4d88759f47d93db06b3dbf321035098.tar.bz2
llvm-258b5375b4d88759f47d93db06b3dbf321035098.tar.xz
Inching our way towards fixing PR82
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10721 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Bytecode/Reader/InstructionReader.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Bytecode/Reader/InstructionReader.cpp b/lib/Bytecode/Reader/InstructionReader.cpp
index 3ca00f35cc..4beb2b0c11 100644
--- a/lib/Bytecode/Reader/InstructionReader.cpp
+++ b/lib/Bytecode/Reader/InstructionReader.cpp
@@ -354,7 +354,10 @@ void BytecodeParser::ParseInstruction(const unsigned char *&Buf,
for (unsigned i = 1, e = Args.size(); i != e; ++i) {
const CompositeType *TopTy = dyn_cast_or_null<CompositeType>(NextTy);
if (!TopTy) throw std::string("Invalid getelementptr instruction!");
- Idx.push_back(getValue(TopTy->getIndexType()->getPrimitiveID(), Args[i]));
+ // FIXME: when PR82 is resolved.
+ unsigned IdxTy = isa<StructType>(TopTy) ? Type::UByteTyID :Type::LongTyID;
+
+ Idx.push_back(getValue(IdxTy, Args[i]));
NextTy = GetElementPtrInst::getIndexedType(InstTy, Idx, true);
}