From 85e74acfcfb0c835a2e6c1adab314e997917039a Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Wed, 28 Oct 2009 20:36:47 +0000 Subject: [PATCH] factor a creation of Int32Ty. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85422 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/CodeGenFunction.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/CodeGen/CodeGenFunction.cpp b/lib/CodeGen/CodeGenFunction.cpp index ba93e5d0eb..c6111fac19 100644 --- a/lib/CodeGen/CodeGenFunction.cpp +++ b/lib/CodeGen/CodeGenFunction.cpp @@ -496,9 +496,10 @@ llvm::BasicBlock *CodeGenFunction::GetIndirectGotoBlock() { EmitBlock(createBasicBlock("indirectgoto")); + const llvm::IntegerType *Int32Ty = llvm::Type::getInt32Ty(VMContext); + // Create the PHI node that indirect gotos will add entries to. - llvm::Value *DestVal = - Builder.CreatePHI(llvm::Type::getInt32Ty(VMContext), "indirect.goto.dest"); + llvm::Value *DestVal = Builder.CreatePHI(Int32Ty, "indirect.goto.dest"); // Create the switch instruction. For now, set the insert block to this block // which will be fixed as labels are added. @@ -524,8 +525,6 @@ llvm::BasicBlock *CodeGenFunction::GetIndirectGotoBlock() { IndirectGotoSwitch->setSuccessor(0, getBasicBlockForLabel(AddrTakenLabelsByID[0])); - const llvm::IntegerType *Int32Ty = llvm::Type::getInt32Ty(VMContext); - // FIXME: The iteration order of this is nondeterminstic! for (unsigned i = 1, e = AddrTakenLabelsByID.size(); i != e; ++i) IndirectGotoSwitch->addCase(llvm::ConstantInt::get(Int32Ty, i+1), -- 2.40.0