aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.h
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-08-09 15:54:21 +0000
committerDouglas Gregor <dgregor@apple.com>2011-08-09 15:54:21 +0000
commitabf4e0dfcdd8447bc377a93eea61dd3142f10516 (patch)
tree7903eda3a90388974f37f6614c808bb38399bcd0 /clang/lib/CodeGen/CodeGenModule.h
parenteda8e12e86706b694e6f7a0b744d7683a167798a (diff)
downloadllvm-abf4e0dfcdd8447bc377a93eea61dd3142f10516.zip
llvm-abf4e0dfcdd8447bc377a93eea61dd3142f10516.tar.gz
llvm-abf4e0dfcdd8447bc377a93eea61dd3142f10516.tar.bz2
Move the construction of the RecordDecl representing the runtime
layout of a constant NSString from the ASTContext over to CodeGen, since this is solely CodeGen's responsibility. Eliminates one of the unnecessary "special" types that we serialize. llvm-svn: 137121
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.h')
-rw-r--r--clang/lib/CodeGen/CodeGenModule.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.h b/clang/lib/CodeGen/CodeGenModule.h
index ca72230..56ff68c 100644
--- a/clang/lib/CodeGen/CodeGenModule.h
+++ b/clang/lib/CodeGen/CodeGenModule.h
@@ -286,6 +286,9 @@ class CodeGenModule : public CodeGenTypeCache {
/// run on termination.
std::vector<std::pair<llvm::WeakVH,llvm::Constant*> > CXXGlobalDtors;
+ /// @name Cache for Objective-C runtime types
+ /// @{
+
/// CFConstantStringClassRef - Cached reference to the class for constant
/// strings. This value has type int * but is actually an Obj-C class pointer.
llvm::Constant *CFConstantStringClassRef;
@@ -294,6 +297,11 @@ class CodeGenModule : public CodeGenTypeCache {
/// strings. This value has type int * but is actually an Obj-C class pointer.
llvm::Constant *ConstantStringClassRef;
+ /// \brief The LLVM type corresponding to NSConstantString.
+ llvm::StructType *NSConstantStringType;
+
+ /// @}
+
/// Lazily create the Objective-C runtime
void createObjCRuntime();