diff options
author | Mike Stump <mrs@apple.com> | 2009-03-04 03:23:46 +0000 |
---|---|---|
committer | Mike Stump <mrs@apple.com> | 2009-03-04 03:23:46 +0000 |
commit | 97d01d50d9407f8781fc6ae7c8d6d14f16f81c23 (patch) | |
tree | 7ddd8ab6b5d53072268cf902f43005780a75293a /clang/lib/CodeGen/CodeGenModule.h | |
parent | e08f4cb9a1489f004423c402e66e28c793e5404b (diff) | |
download | bcm5719-llvm-97d01d50d9407f8781fc6ae7c8d6d14f16f81c23.tar.gz bcm5719-llvm-97d01d50d9407f8781fc6ae7c8d6d14f16f81c23.zip |
Improved ABI compliance for __block variables. No testcases yet as we
still give an unsupported error for them due to the fact this is a
work in progress.
llvm-svn: 66007
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenModule.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.h b/clang/lib/CodeGen/CodeGenModule.h index 093a9b12f76..21faaa6a09a 100644 --- a/clang/lib/CodeGen/CodeGenModule.h +++ b/clang/lib/CodeGen/CodeGenModule.h @@ -139,6 +139,15 @@ 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; |