Backout r66408, we don't want handling of globals to rely on the
module symbol table. The root problem inspiring this was fixed in
r66316 (and again in r66506).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66512 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/CodeGenModule.h b/lib/CodeGen/CodeGenModule.h
index 039579f..c3a84af 100644
--- a/lib/CodeGen/CodeGenModule.h
+++ b/lib/CodeGen/CodeGenModule.h
@@ -312,17 +312,14 @@
void EmitGlobalDefinition(const ValueDecl *D);
- /// EmitForwardFunctionDefinition - Create a new function for the given decl
- /// and set attributes as appropriate if ReplaceExisting is true, or if the
- /// same named declaration doesn't already exist in the module table,
- /// otherwise return the existing function from the module table.
+ /// EmitForwardFunctionDefinition - Create a new function for the
+ /// given decl and set attributes as appropriate.
///
- /// \arg Ty - If non-null the LLVM function type to use for the decl; it is
- /// the callers responsibility to make sure this is compatible with the
- /// correct type.
+ /// \arg Ty - If non-null the LLVM function type to use for the
+ /// decl; it is the callers responsibility to make sure this is
+ /// compatible with the correct type.
llvm::GlobalValue *EmitForwardFunctionDefinition(const FunctionDecl *D,
- const llvm::Type *Ty,
- bool ReplaceExisting=false);
+ const llvm::Type *Ty);
void EmitGlobalFunctionDefinition(const FunctionDecl *D);
void EmitGlobalVarDefinition(const VarDecl *D);
@@ -340,19 +337,19 @@
void EmitAliases(void);
void EmitAnnotations(void);
- /// EmitDeferred - Emit any needed decls for which code generation was
- /// deferred.
+ /// EmitDeferred - Emit any needed decls for which code generation
+ /// was deferred.
void EmitDeferred(void);
- /// EmitLLVMUsed - Emit the llvm.used metadata used to force references to
- /// global which may otherwise be optimized out.
+ /// EmitLLVMUsed - Emit the llvm.used metadata used to force
+ /// references to global which may otherwise be optimized out.
void EmitLLVMUsed(void);
void BindRuntimeGlobals();
- /// MayDeferGeneration - Determine if the given decl can be emitted lazily;
- /// this is only relevant for definitions. The given decl must be either a
- /// function or var decl.
+ /// MayDeferGeneration - Determine if the given decl can be emitted
+ /// lazily; this is only relevant for definitions. The given decl
+ /// must be either a function or var decl.
bool MayDeferGeneration(const ValueDecl *D);
};
} // end namespace CodeGen