//===--- CodeGenModule.cpp - Emit LLVM Code from ASTs for a Module --------===////// The LLVM Compiler Infrastructure//// This file is distributed under the University of Illinois Open Source// License. See LICENSE.TXT for details.////===----------------------------------------------------------------------===////// This coordinates the per-module state used while generating code.////===----------------------------------------------------------------------===//#include"CodeGenModule.h"#include"CGDebugInfo.h"#include"CodeGenFunction.h"#include"CGCall.h"#include"CGObjCRuntime.h"#include"Mangle.h"#include"clang/Frontend/CompileOptions.h"#include"clang/AST/ASTContext.h"#include"clang/AST/DeclObjC.h"#include"clang/AST/DeclCXX.h"#include"clang/Basic/Diagnostic.h"#include"clang/Basic/SourceManager.h"#include"clang/Basic/TargetInfo.h"#include"clang/Basic/ConvertUTF.h"#include"llvm/CallingConv.h"#include"llvm/Module.h"#include"llvm/Intrinsics.h"#include"llvm/Target/TargetData.h"usingnamespaceclang;usingnamespaceCodeGen;CodeGenModule::CodeGenModule(ASTContext&C,const