Factor out the constant generation into its own file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46386 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/CodeGen/CodeGenModule.h b/CodeGen/CodeGenModule.h
index b86ceba..87b9e9c 100644
--- a/CodeGen/CodeGenModule.h
+++ b/CodeGen/CodeGenModule.h
@@ -87,12 +87,14 @@
   void EmitFunction(const FunctionDecl *FD);
   void EmitGlobalVar(const FileVarDecl *D);
   void EmitGlobalVarDeclarator(const FileVarDecl *D);
-  llvm::Constant *EmitGlobalInit(const Expr *Expression);
-  
+  llvm::Constant *EmitGlobalInit(const Expr *E);
+  llvm::Constant *EmitConstantExpr(const Expr *E);
+    
   void PrintStats() {}
   
   /// WarnUnsupported - Print out a warning that codegen doesn't support the
   /// specified stmt yet.
+    
   void WarnUnsupported(const Stmt *S, const char *Type);
   
   /// WarnUnsupported - Print out a warning that codegen doesn't support the