diff options
author | Mike Stump <mrs@apple.com> | 2009-03-04 15:32:52 +0000 |
---|---|---|
committer | Mike Stump <mrs@apple.com> | 2009-03-04 15:32:52 +0000 |
commit | edb252aebae308d3fa413d3be33427d5540fc3af (patch) | |
tree | b11fc75b7312af8b29b415fa9c0e621ee16eec53 /clang/lib/CodeGen/CodeGenModule.h | |
parent | 3f49feeed533e334dad7acbd7ac5c55fca359742 (diff) | |
download | bcm5719-llvm-edb252aebae308d3fa413d3be33427d5540fc3af.tar.gz bcm5719-llvm-edb252aebae308d3fa413d3be33427d5540fc3af.zip |
Start the migration of more of the blocks code out of sight for most
people. De-duplicates BLOCK_NEEDS_FREE and friends.
llvm-svn: 66034
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenModule.h | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.h b/clang/lib/CodeGen/CodeGenModule.h index 21faaa6a09a..05591a5112c 100644 --- a/clang/lib/CodeGen/CodeGenModule.h +++ b/clang/lib/CodeGen/CodeGenModule.h @@ -20,6 +20,7 @@ #include "llvm/ADT/StringMap.h" #include "llvm/ADT/StringSet.h" +#include "CGBlocks.h" #include "CGCall.h" #include <list> @@ -62,7 +63,7 @@ namespace CodeGen { /// CodeGenModule - This class organizes the cross-function state that is used /// while generating LLVM code. -class CodeGenModule { + class CodeGenModule : public BlockModule { CodeGenModule(const CodeGenModule&); // DO NOT IMPLEMENT void operator=(const CodeGenModule&); // DO NOT IMPLEMENT @@ -139,15 +140,6 @@ class CodeGenModule { /// strings. This value has type int * but is actually an Obj-C class pointer. llvm::Constant *CFConstantStringClassRef; - enum { - BLOCK_NEEDS_FREE = (1 << 24), - BLOCK_HAS_COPY_DISPOSE = (1 << 25), - BLOCK_HAS_CXX_OBJ = (1 << 26), - BLOCK_IS_GC = (1 << 27), - BLOCK_IS_GLOBAL = (1 << 28), - BLOCK_HAS_DESCRIPTOR = (1 << 29) - }; - /// NSConcreteGlobalBlock - Cached reference to the class pointer for global /// blocks. llvm::Constant *NSConcreteGlobalBlock; |