diff options
Diffstat (limited to 'lib/Core/Executor.cpp')
-rw-r--r-- | lib/Core/Executor.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Core/Executor.cpp b/lib/Core/Executor.cpp index 2e6f9c89..ea386cfd 100644 --- a/lib/Core/Executor.cpp +++ b/lib/Core/Executor.cpp @@ -3315,14 +3315,15 @@ void Executor::computeOffsets(KGEPInstruction *kgepi, TypeIt ib, TypeIt ie) { } void Executor::bindInstructionConstants(KInstruction *KI) { - KGEPInstruction *kgepi = static_cast<KGEPInstruction*>(KI); - if (GetElementPtrInst *gepi = dyn_cast<GetElementPtrInst>(KI->inst)) { + KGEPInstruction *kgepi = static_cast<KGEPInstruction *>(KI); computeOffsets(kgepi, gep_type_begin(gepi), gep_type_end(gepi)); } else if (InsertValueInst *ivi = dyn_cast<InsertValueInst>(KI->inst)) { + KGEPInstruction *kgepi = static_cast<KGEPInstruction *>(KI); computeOffsets(kgepi, iv_type_begin(ivi), iv_type_end(ivi)); assert(kgepi->indices.empty() && "InsertValue constant offset expected"); } else if (ExtractValueInst *evi = dyn_cast<ExtractValueInst>(KI->inst)) { + KGEPInstruction *kgepi = static_cast<KGEPInstruction *>(KI); computeOffsets(kgepi, ev_type_begin(evi), ev_type_end(evi)); assert(kgepi->indices.empty() && "ExtractValue constant offset expected"); } |