Revision: 123566 Author: jlaskey Date: 2007-02-07 17:49:59 -0800 (Wed, 07 Feb 2007)
Log Message: ----------- Use getDeclaration to simplify code. Modified Paths: -------------- apple-local/branches/llvm/gcc/llvm-debug.cpp Modified: apple-local/branches/llvm/gcc/llvm-debug.cpp =================================================================== --- apple-local/branches/llvm/gcc/llvm-debug.cpp 2007-02-08 01:42:33 UTC (rev 123565) +++ apple-local/branches/llvm/gcc/llvm-debug.cpp 2007-02-08 01:49:59 UTC (rev 123566) @@ -31,6 +31,7 @@ #include "llvm/Constants.h" #include "llvm/DerivedTypes.h" #include "llvm/Instructions.h" +#include "llvm/Intrinsics.h" #include "llvm/Module.h" #include "llvm/Support/Dwarf.h" #include "llvm/Target/TargetMachine.h" @@ -273,12 +274,8 @@ Subprogram->setIsDefinition(true); // Lazily construct llvm.dbg.func.start. - if (!FuncStartFn) { - FuncStartFn = - cast<Function>(M->getOrInsertFunction("llvm.dbg.func.start", - Type::VoidTy, - SR.getEmptyStructPtrType(), NULL)); - } + if (!FuncStartFn) + FuncStartFn = Intrinsic::getDeclaration(M, Intrinsic::dbg_func_start); // Call llvm.dbg.func.start. new CallInst(FuncStartFn, getCastValueFor(Subprogram), "", CurBB); @@ -298,12 +295,8 @@ RegionStack.push_back(Block); // Lazily construct llvm.dbg.region.start function. - if (!RegionStartFn) { - const PointerType *EmpPtr = SR.getEmptyStructPtrType(); - RegionStartFn = - cast<Function>(M->getOrInsertFunction("llvm.dbg.region.start", - Type::VoidTy, EmpPtr, NULL)); - } + if (!RegionStartFn) + RegionStartFn = Intrinsic::getDeclaration(M, Intrinsic::dbg_region_start); // Call llvm.dbg.func.start. new CallInst(RegionStartFn, getCastValueFor(Block), "", CurBB); @@ -313,12 +306,8 @@ /// region - "llvm.dbg.region.end." void DebugInfo::EmitRegionEnd(Function *Fn, BasicBlock *CurBB) { // Lazily construct llvm.dbg.region.end function. - if (!RegionEndFn) { - const PointerType *EmpPtr = SR.getEmptyStructPtrType(); - RegionEndFn = - cast<Function>(M->getOrInsertFunction("llvm.dbg.region.end", Type::VoidTy, - EmpPtr, NULL)); - } + if (!RegionEndFn) + RegionEndFn = Intrinsic::getDeclaration(M, Intrinsic::dbg_region_end); // Provide an region stop point. EmitStopPoint(Fn, CurBB); @@ -334,11 +323,8 @@ tree type, Value *AI, BasicBlock *CurBB) { // Lazily construct llvm.dbg.declare function. const PointerType *EmpPtr = SR.getEmptyStructPtrType(); - if (!DeclareFn) { - DeclareFn = - cast<Function>(M->getOrInsertFunction("llvm.dbg.declare", - Type::VoidTy, EmpPtr, EmpPtr,NULL)); - } + if (!DeclareFn) + DeclareFn = Intrinsic::getDeclaration(M, Intrinsic::dbg_declare); // Get type information. CompileUnitDesc *Unit = getOrCreateCompileUnit(CurFullPath); @@ -382,13 +368,8 @@ CompileUnitDesc *Unit = getOrCreateCompileUnit(CurFullPath); // Lazily construct llvm.dbg.stoppoint function. - if (!StopPointFn) { - StopPointFn = - cast<Function>(M->getOrInsertFunction("llvm.dbg.stoppoint", - Type::VoidTy, Type::Int32Ty, - Type::Int32Ty, - SR.getEmptyStructPtrType(), NULL)); - } + if (!StopPointFn) + StopPointFn = Intrinsic::getDeclaration(M, Intrinsic::dbg_stoppoint); // Invoke llvm.dbg.stoppoint std::vector<Value*> Args; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits