From fd05ca03abdfb38f78b9535d996ecc9c39d3b0db Mon Sep 17 00:00:00 2001 From: Peter Collingbourne Date: Tue, 14 Jun 2011 04:02:39 +0000 Subject: [PATCH] Move GlobalDecl to AST git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132973 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../clang/AST}/GlobalDecl.h | 25 ++++++++----------- lib/CodeGen/CGDebugInfo.h | 2 +- lib/CodeGen/CGVTables.h | 2 +- lib/CodeGen/CodeGenModule.h | 2 +- lib/CodeGen/CodeGenTypes.h | 2 +- 5 files changed, 15 insertions(+), 18 deletions(-) rename {lib/CodeGen => include/clang/AST}/GlobalDecl.h (83%) diff --git a/lib/CodeGen/GlobalDecl.h b/include/clang/AST/GlobalDecl.h similarity index 83% rename from lib/CodeGen/GlobalDecl.h rename to include/clang/AST/GlobalDecl.h index c2f36d210b..c43e44c26f 100644 --- a/lib/CodeGen/GlobalDecl.h +++ b/include/clang/AST/GlobalDecl.h @@ -12,8 +12,8 @@ // //===----------------------------------------------------------------------===// -#ifndef CLANG_CODEGEN_GLOBALDECL_H -#define CLANG_CODEGEN_GLOBALDECL_H +#ifndef LLVM_CLANG_AST_GLOBALDECL_H +#define LLVM_CLANG_AST_GLOBALDECL_H #include "clang/AST/DeclCXX.h" #include "clang/AST/DeclObjC.h" @@ -21,8 +21,6 @@ namespace clang { -namespace CodeGen { - /// GlobalDecl - represents a global declaration. This can either be a /// CXXConstructorDecl and the constructor type (Base, Complete). /// a CXXDestructorDecl and the destructor type (Base, Complete) or @@ -89,28 +87,27 @@ public: } }; -} // end namespace CodeGen } // end namespace clang namespace llvm { template struct DenseMapInfo; - template<> struct DenseMapInfo { - static inline clang::CodeGen::GlobalDecl getEmptyKey() { - return clang::CodeGen::GlobalDecl(); + template<> struct DenseMapInfo { + static inline clang::GlobalDecl getEmptyKey() { + return clang::GlobalDecl(); } - static inline clang::CodeGen::GlobalDecl getTombstoneKey() { - return clang::CodeGen::GlobalDecl:: + static inline clang::GlobalDecl getTombstoneKey() { + return clang::GlobalDecl:: getFromOpaquePtr(reinterpret_cast(-1)); } - static unsigned getHashValue(clang::CodeGen::GlobalDecl GD) { + static unsigned getHashValue(clang::GlobalDecl GD) { return DenseMapInfo::getHashValue(GD.getAsOpaquePtr()); } - static bool isEqual(clang::CodeGen::GlobalDecl LHS, - clang::CodeGen::GlobalDecl RHS) { + static bool isEqual(clang::GlobalDecl LHS, + clang::GlobalDecl RHS) { return LHS == RHS; } @@ -119,7 +116,7 @@ namespace llvm { // GlobalDecl isn't *technically* a POD type. However, its copy constructor, // copy assignment operator, and destructor are all trivial. template <> - struct isPodLike { + struct isPodLike { static const bool value = true; }; } // end namespace llvm diff --git a/lib/CodeGen/CGDebugInfo.h b/lib/CodeGen/CGDebugInfo.h index 6ec6b65f5e..eb1b22d902 100644 --- a/lib/CodeGen/CGDebugInfo.h +++ b/lib/CodeGen/CGDebugInfo.h @@ -33,11 +33,11 @@ namespace clang { class VarDecl; class ObjCInterfaceDecl; class ClassTemplateSpecializationDecl; + class GlobalDecl; namespace CodeGen { class CodeGenModule; class CodeGenFunction; - class GlobalDecl; class CGBlockInfo; /// CGDebugInfo - This class gathers all debug information during compilation diff --git a/lib/CodeGen/CGVTables.h b/lib/CodeGen/CGVTables.h index e830e9a6fb..eff6e56c1f 100644 --- a/lib/CodeGen/CGVTables.h +++ b/lib/CodeGen/CGVTables.h @@ -18,7 +18,7 @@ #include "llvm/GlobalVariable.h" #include "clang/Basic/ABI.h" #include "clang/AST/CharUnits.h" -#include "GlobalDecl.h" +#include "clang/AST/GlobalDecl.h" namespace clang { class CXXRecordDecl; diff --git a/lib/CodeGen/CodeGenModule.h b/lib/CodeGen/CodeGenModule.h index 779a3523b7..09741dfada 100644 --- a/lib/CodeGen/CodeGenModule.h +++ b/lib/CodeGen/CodeGenModule.h @@ -19,10 +19,10 @@ #include "clang/AST/Attr.h" #include "clang/AST/DeclCXX.h" #include "clang/AST/DeclObjC.h" +#include "clang/AST/GlobalDecl.h" #include "clang/AST/Mangle.h" #include "CGVTables.h" #include "CodeGenTypes.h" -#include "GlobalDecl.h" #include "llvm/Module.h" #include "llvm/ADT/DenseMap.h" #include "llvm/ADT/StringMap.h" diff --git a/lib/CodeGen/CodeGenTypes.h b/lib/CodeGen/CodeGenTypes.h index ff1eb4c45b..b4a9aea21f 100644 --- a/lib/CodeGen/CodeGenTypes.h +++ b/lib/CodeGen/CodeGenTypes.h @@ -15,7 +15,7 @@ #define CLANG_CODEGEN_CODEGENTYPES_H #include "CGCall.h" -#include "GlobalDecl.h" +#include "clang/AST/GlobalDecl.h" #include "llvm/Module.h" #include "llvm/ADT/DenseMap.h" #include -- 2.50.1