diff options
Diffstat (limited to 'lib/ExecutionEngine/ExecutionEngine.cpp')
-rw-r--r-- | lib/ExecutionEngine/ExecutionEngine.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/ExecutionEngine/ExecutionEngine.cpp b/lib/ExecutionEngine/ExecutionEngine.cpp index 6878f89fff..28b515e3fa 100644 --- a/lib/ExecutionEngine/ExecutionEngine.cpp +++ b/lib/ExecutionEngine/ExecutionEngine.cpp @@ -334,9 +334,10 @@ GenericValue ExecutionEngine::getConstantValue(const Constant *C) { case Instruction::GetElementPtr: { // Compute the index Result = getConstantValue(CE->getOperand(0)); - std::vector<Value*> Indexes(CE->op_begin()+1, CE->op_end()); + SmallVector<Value*, 8> Indices(CE->op_begin()+1, CE->op_end()); uint64_t Offset = - TD->getIndexedOffset(CE->getOperand(0)->getType(), Indexes); + TD->getIndexedOffset(CE->getOperand(0)->getType(), + &Indices[0], Indices.size()); if (getTargetData()->getPointerSize() == 4) Result.Int32Val += Offset; |