summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode/Reader
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-11-05 19:53:03 +0000
committerChris Lattner <sabre@nondot.org>2003-11-05 19:53:03 +0000
commitb36e8a1a2e4e710161e09999f70f0b3fac6c1bb7 (patch)
tree57e8ec2350ea8bf315587796012f274b94d9e29d /llvm/lib/Bytecode/Reader
parent07b385da27b57cb69bb56442b3828adc3bf23738 (diff)
downloadbcm5719-llvm-b36e8a1a2e4e710161e09999f70f0b3fac6c1bb7.tar.gz
bcm5719-llvm-b36e8a1a2e4e710161e09999f70f0b3fac6c1bb7.zip
Add support for constant expr shifts
llvm-svn: 9735
Diffstat (limited to 'llvm/lib/Bytecode/Reader')
-rw-r--r--llvm/lib/Bytecode/Reader/ConstantReader.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Bytecode/Reader/ConstantReader.cpp b/llvm/lib/Bytecode/Reader/ConstantReader.cpp
index 097bdbe1266..00f44b3665e 100644
--- a/llvm/lib/Bytecode/Reader/ConstantReader.cpp
+++ b/llvm/lib/Bytecode/Reader/ConstantReader.cpp
@@ -182,6 +182,8 @@ Constant *BytecodeParser::parseConstantValue(const unsigned char *&Buf,
} else if (Opcode == Instruction::GetElementPtr) { // GetElementPtr
std::vector<Constant*> IdxList(ArgVec.begin()+1, ArgVec.end());
return ConstantExpr::getGetElementPtr(ArgVec[0], IdxList);
+ } else if (Opcode == Instruction::Shl || Opcode == Instruction::Shr) {
+ return ConstantExpr::getShift(Opcode, ArgVec[0], ArgVec[1]);
} else { // All other 2-operand expressions
return ConstantExpr::get(Opcode, ArgVec[0], ArgVec[1]);
}
OpenPOWER on IntegriCloud