mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-01-07 08:34:59 +00:00
e68b8f4dcc
combination of a load+objc_release; this is generally better for tools that try to track why values are retained and released. Also use objc_storeStrong when copying a block (again, only at -O0), which requires us to do a preliminary store of null in order to compensate for objc_storeStrong's assign semantics. llvm-svn: 166085
14 lines
395 B
Objective-C
14 lines
395 B
Objective-C
// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fobjc-arc -emit-llvm %s -o - | FileCheck %s
|
|
|
|
// rdar://problem/9224855
|
|
id make(void) __attribute__((ns_returns_retained));
|
|
void test0() {
|
|
make();
|
|
id x = 0;
|
|
// CHECK: call void @objc_release(
|
|
// CHECK: call void @objc_storeStrong(
|
|
}
|
|
|
|
// CHECK: declare extern_weak void @objc_release(
|
|
// CHECK: declare extern_weak void @objc_storeStrong(
|