From: Chris Lattner Date: Tue, 31 Mar 2009 22:17:44 +0000 (+0000) Subject: remove some obsolete comments, use an AssertingVH. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=481769b5dc102b0256b35581e787909ad5edfab5;p=clang remove some obsolete comments, use an AssertingVH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68151 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CodeGenFunction.cpp b/lib/CodeGen/CodeGenFunction.cpp index 68d10ff56e..dc00a76ff9 100644 --- a/lib/CodeGen/CodeGenFunction.cpp +++ b/lib/CodeGen/CodeGenFunction.cpp @@ -133,8 +133,9 @@ void CodeGenFunction::FinishFunction(SourceLocation EndLoc) { EmitFunctionEpilog(*CurFnInfo, ReturnValue); // Remove the AllocaInsertPt instruction, which is just a convenience for us. - AllocaInsertPt->eraseFromParent(); + llvm::Instruction *Ptr = AllocaInsertPt; AllocaInsertPt = 0; + Ptr->eraseFromParent(); } void CodeGenFunction::StartFunction(const Decl *D, QualType RetTy, diff --git a/lib/CodeGen/CodeGenFunction.h b/lib/CodeGen/CodeGenFunction.h index f850cfdc5b..9dbbb25b22 100644 --- a/lib/CodeGen/CodeGenFunction.h +++ b/lib/CodeGen/CodeGenFunction.h @@ -15,16 +15,13 @@ #define CLANG_CODEGEN_CODEGENFUNCTION_H #include "clang/AST/Type.h" -#include "llvm/ADT/DenseMap.h" -#include "llvm/ADT/SmallVector.h" -#include "clang/Basic/TargetInfo.h" -#include "clang/AST/Expr.h" #include "clang/AST/ExprCXX.h" #include "clang/AST/ExprObjC.h" - -#include +#include "clang/Basic/TargetInfo.h" +#include "llvm/ADT/DenseMap.h" +#include "llvm/ADT/SmallVector.h" +#include "llvm/Support/ValueHandle.h" #include - #include "CGBlocks.h" #include "CGBuilder.h" #include "CGCall.h" @@ -87,7 +84,7 @@ public: /// AllocaInsertPoint - This is an instruction in the entry block before which /// we prefer to insert allocas. - llvm::Instruction *AllocaInsertPt; + llvm::AssertingVH AllocaInsertPt; const llvm::Type *LLVMIntTy; uint32_t LLVMPointerWidth; diff --git a/lib/CodeGen/CodeGenModule.cpp b/lib/CodeGen/CodeGenModule.cpp index 907ade569b..3de8156fe5 100644 --- a/lib/CodeGen/CodeGenModule.cpp +++ b/lib/CodeGen/CodeGenModule.cpp @@ -118,17 +118,6 @@ static void setGlobalVisibility(llvm::GlobalValue *GV, /// const char* containing the mangled name. Otherwise, returns /// the unmangled name. /// -/// FIXME: Returning an IdentifierInfo* here is a total hack. We -/// really need some kind of string abstraction that either stores a -/// mangled name or stores an IdentifierInfo*. This will require -/// changes to the GlobalDeclMap, too. (I disagree, I think what we -/// actually need is for Sema to provide some notion of which Decls -/// refer to the same semantic decl. We shouldn't need to mangle the -/// names and see what comes out the same to figure this out. - DWD) -/// -/// FIXME: Performance here is going to be terribly until we start -/// caching mangled names. However, we should fix the problem above -/// first. const char *CodeGenModule::getMangledName(const NamedDecl *ND) { // In C, functions with no attributes never need to be mangled. Fastpath them. if (!getLangOptions().CPlusPlus && !ND->hasAttrs()) {