diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2010-05-20 23:34:56 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2010-05-20 23:34:56 +0000 |
commit | 2792f30f1378ca249a6fafbc56fade5ad9216d25 (patch) | |
tree | 1c16a3b491396a9bbd85da6d9b6625fb9b59bded /clang/test/CodeGenObjC | |
parent | fd8fb3c4cd64fb82bc7b0ae3ba6b8b40964e785a (diff) | |
download | bcm5719-llvm-2792f30f1378ca249a6fafbc56fade5ad9216d25.tar.gz bcm5719-llvm-2792f30f1378ca249a6fafbc56fade5ad9216d25.zip |
Generate objc_memmove_collectable write-barrier for
classes whose base class have GC'able object pointers.
llvm-svn: 104296
Diffstat (limited to 'clang/test/CodeGenObjC')
-rw-r--r-- | clang/test/CodeGenObjC/objc-gc-aggr-assign.m | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/clang/test/CodeGenObjC/objc-gc-aggr-assign.m b/clang/test/CodeGenObjC/objc-gc-aggr-assign.m index 1d726d4354a..88516727752 100644 --- a/clang/test/CodeGenObjC/objc-gc-aggr-assign.m +++ b/clang/test/CodeGenObjC/objc-gc-aggr-assign.m @@ -1,7 +1,7 @@ // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fobjc-gc -emit-llvm -o %t %s // RUN: grep objc_memmove_collectable %t | grep call | count 3 // RUN: %clang_cc1 -x objective-c++ -triple x86_64-apple-darwin10 -fobjc-gc -emit-llvm -o %t %s -// RUN: grep objc_memmove_collectable %t | grep call | count 3 +// RUN: grep objc_memmove_collectable %t | grep call | count 4 static int count; @@ -46,3 +46,12 @@ void f(const struct type_s *in, struct type_s *out) { *out = *in; } +#ifdef __cplusplus +struct Derived : type_s { }; + +void foo(Derived* src, Derived* dest) { + *dest = *src; +} + +#endif + |