| /llvm-project-15.0.7/llvm/test/Transforms/ObjCARC/ |
| H A D | intrinsic-use.ll | 1 ; RUN: opt -basic-aa -objc-arc -S < %s | FileCheck %s 5 declare i8* @llvm.objc.retain(i8*) 6 declare i8* @llvm.objc.retainAutorelease(i8*) 7 declare void @llvm.objc.release(i8*) 8 declare i8* @llvm.objc.autorelease(i8*) 10 declare void @llvm.objc.clang.arc.use(...) 20 ; CHECK: @llvm.objc.retain(i8* %x) 22 ; CHECK-NEXT: @llvm.objc.retain(i8* %y) 27 ; CHECK-NEXT: @llvm.objc.release(i8* %y) 36 ; CHECK-NEXT: @llvm.objc.retain(i8* %x) [all …]
|
| H A D | allocas.ll | 1 ; RUN: opt -objc-arc -S < %s | FileCheck %s 3 declare i8* @llvm.objc.retain(i8*) 5 declare void @llvm.objc.release(i8*) 348 ; CHECK: @llvm.objc.retain 349 ; CHECK: @llvm.objc.retain 350 ; CHECK: @llvm.objc.retain 351 ; CHECK: @llvm.objc.retain 361 ; CHECK: @llvm.objc.release 426 ; CHECK: @llvm.objc.retain 427 ; CHECK: @llvm.objc.retain [all …]
|
| H A D | rv.ll | 1 ; RUN: opt -objc-arc -S < %s | FileCheck %s 5 declare i8* @llvm.objc.retain(i8*) 7 declare void @llvm.objc.release(i8*) 8 declare i8* @llvm.objc.autorelease(i8*) 12 declare void @llvm.objc.autoreleasePoolPush() 13 declare i8* @llvm.objc.retainBlock(i8*) 37 ; CHECK-NOT: @llvm.objc. 61 ; CHECK-NOT: @llvm.objc. 283 call i8* @llvm.objc.retain(i8* %p) 295 call i8* @llvm.objc.retain(i8* %p) [all …]
|
| H A D | basic.ll | 36 ; CHECK: @llvm.objc.retain 62 ; CHECK-NOT: @llvm.objc. 157 ; CHECK-NOT: @llvm.objc. 1091 ; CHECK-NOT: @objc 1130 ; CHECK-NOT: @objc 1171 ; CHECK-NOT: @objc 1210 ; CHECK: @llvm.objc 2200 ; CHECK: @llvm.objc. 2228 ; CHECK-NOT: @objc 2245 ; CHECK-NOT: @objc [all …]
|
| H A D | tail-call-invariant-enforcement.ll | 1 ; RUN: opt -objc-arc -S < %s | FileCheck %s 3 declare void @llvm.objc.release(i8* %x) 4 declare i8* @llvm.objc.retain(i8* %x) 5 declare i8* @llvm.objc.autorelease(i8* %x) 6 declare i8* @llvm.objc.autoreleaseReturnValue(i8* %x) 19 %tmp0 = call i8* @llvm.objc.autorelease(i8* %x) 20 %tmp1 = tail call i8* @llvm.objc.autorelease(i8* %x) 46 %tmp0 = call i8* @llvm.objc.retain(i8* %x) 47 %tmp1 = tail call i8* @llvm.objc.retain(i8* %x) 77 call void @llvm.objc.release(i8* %x) [all …]
|
| H A D | cfg-hazards.ll | 8 declare i8* @llvm.objc.retain(i8*) 16 ; CHECK-NOT: @objc 41 ; CHECK-NOT: @objc 66 ; CHECK-NOT: @objc 94 ; CHECK-NOT: @llvm.objc. 120 ; CHECK-NOT: @llvm.objc. 151 ; CHECK-NOT: @llvm.objc. 184 ; CHECK-NOT: @llvm.objc. 218 ; CHECK-NOT: @llvm.objc. 250 ; CHECK-NOT: @llvm.objc. [all …]
|
| H A D | inlined-autorelease-return-value.ll | 1 ; RUN: opt -basic-aa -objc-arc -S < %s | FileCheck %s 5 declare i8* @llvm.objc.retain(i8*) 6 declare i8* @llvm.objc.autoreleaseReturnValue(i8*) 7 declare i8* @llvm.objc.retainAutoreleasedReturnValue(i8*) 8 declare i8* @llvm.objc.unsafeClaimAutoreleasedReturnValue(i8*) 64 %c = call i8* @llvm.objc.retain(i8* %x) nounwind 101 ; CHECK-NEXT: call void @llvm.objc.release(i8* %x) 115 ; CHECK-NEXT: tail call i8* @llvm.objc.retain( 145 %a = call i8* @llvm.objc.retain(i8* %x) nounwind 205 %c = call i8* @llvm.objc.retain(i8* %x) nounwind [all …]
|
| H A D | rle-s2l.ll | 1 ; RUN: opt -S -basic-aa -objc-arc < %s | FileCheck %s 3 declare i8* @llvm.objc.loadWeak(i8**) 4 declare i8* @llvm.objc.loadWeakRetained(i8**) 5 declare i8* @llvm.objc.storeWeak(i8**, i8*) 6 declare i8* @llvm.objc.initWeak(i8**, i8*) 18 %x = call i8* @llvm.objc.loadWeak(i8** %p) 19 %y = call i8* @llvm.objc.loadWeak(i8** %p) 24 ; DCE the @llvm.objc.loadWeak. 32 %x = call i8* @llvm.objc.loadWeak(i8** %p) 48 %x = call i8* @llvm.objc.loadWeak(i8** %p) [all …]
|
| H A D | clang-arc-use-barrier.ll | 1 ; RUN: opt -objc-arc -S %s | FileCheck %s 7 ; CHECK: call i8* @llvm.objc.retain 8 ; CHECK: call void (...) @llvm.objc.clang.arc.use( 9 ; CHECK: call i8* @llvm.objc.retain 10 ; CHECK: call void (...) @llvm.objc.clang.arc.use( 22 %8 = call i8* @llvm.objc.retain(i8* %7) 23 call void (...) @llvm.objc.clang.arc.use(%0* %3) 24 call void @llvm.objc.release(i8* %4) 29 %11 = call i8* @llvm.objc.retain(i8* %10) 32 call void @llvm.objc.release(i8* %7) [all …]
|
| H A D | weak.ll | 2 ; RUN: opt -objc-arc -S < %s | FileCheck %s 4 declare i8* @llvm.objc.initWeak(i8**, i8*) 5 declare i8* @llvm.objc.storeWeak(i8**, i8*) 6 declare i8* @llvm.objc.loadWeak(i8**) 7 declare void @llvm.objc.destroyWeak(i8**) 8 declare i8* @llvm.objc.loadWeakRetained(i8**) 9 declare void @llvm.objc.moveWeak(i8**, i8**) 10 declare void @llvm.objc.copyWeak(i8**, i8**) 42 call i8* @llvm.objc.loadWeak(i8** null) 43 call i8* @llvm.objc.loadWeak(i8** undef) [all …]
|
| H A D | contract.ll | 1 ; RUN: opt -objc-arc-contract -S < %s | FileCheck %s 2 ; RUN: opt -passes=objc-arc-contract -S < %s | FileCheck %s 6 declare i8* @llvm.objc.retain(i8*) 7 declare void @llvm.objc.release(i8*) 8 declare i8* @llvm.objc.autorelease(i8*) 9 declare i8* @llvm.objc.autoreleaseReturnValue(i8*) 21 %0 = call i8* @llvm.objc.retain(i8* %x) nounwind 44 call i8* @llvm.objc.autorelease(i8* %0) nounwind 82 ; CHECK-NEXT: @llvm.objc.release 144 %1 = tail call i8* @llvm.objc.retain(i8* %p) [all …]
|
| H A D | retain-not-declared.ll | 1 ; RUN: opt -S -objc-arc -objc-arc-contract < %s | FileCheck %s 4 declare i8* @llvm.objc.unretainedObject(i8*) 5 declare i8* @llvm.objc.retainAutoreleasedReturnValue(i8*) 6 declare i8* @llvm.objc.autoreleaseReturnValue(i8*) 8 declare void @llvm.objc.release(i8*) 22 %call = tail call i8* @llvm.objc.unretainedObject(i8* %p) 32 ; CHECK: @llvm.objc.retain 33 ; CHECK: @llvm.objc.retainAutoreleasedReturnValue( 34 ; CHECK: @llvm.objc.release 35 ; CHECK: @llvm.objc.release [all …]
|
| H A D | weak-dce.ll | 1 ; RUN: opt -S -basic-aa -objc-arc < %s | FileCheck %s 7 ; CHECK-NEXT: call i8* @llvm.objc.retain(i8* %p) 14 call void @llvm.objc.destroyWeak(i8** %weakBlock) nounwind 19 ; CHECK-NEXT: call i8* @llvm.objc.retain(i8* %p) 26 call void @llvm.objc.destroyWeak(i8** %weakBlock) nounwind 31 ; CHECK-NEXT: call i8* @llvm.objc.retain(i8* %q) 39 call void @llvm.objc.destroyWeak(i8** %weakBlock) nounwind 43 declare i8* @llvm.objc.initWeak(i8**, i8*) 44 declare void @llvm.objc.destroyWeak(i8**) 45 declare i8* @llvm.objc.loadWeakRetained(i8**) [all …]
|
| H A D | expand.ll | 1 ; RUN: opt -objc-arc-expand -S < %s | FileCheck %s 2 ; RUN: opt -passes=objc-arc-expand -S < %s | FileCheck %s 6 declare i8* @llvm.objc.retain(i8*) 7 declare i8* @llvm.objc.autorelease(i8*) 9 declare i8* @llvm.objc.autoreleaseReturnValue(i8*) 10 declare i8* @llvm.objc.retainAutorelease(i8*) 12 declare i8* @llvm.objc.retainBlock(i8*) 17 ; CHECK: call i8* @llvm.objc.retain(i8* %x) 22 %0 = call i8* @llvm.objc.retain(i8* %x) nounwind 61 ; CHECK: call i8* @llvm.objc.autorelease(i8* %x) [all …]
|
| H A D | empty-block.ll | 1 ; RUN: opt -S -objc-arc < %s | FileCheck %s 6 declare i8* @llvm.objc.retain(i8*) 8 declare void @llvm.objc.release(i8*) 10 declare i8* @llvm.objc.autoreleaseReturnValue(i8*) 15 ; CHECK: @llvm.objc.retain 17 ; CHECK-NOT: @llvm.objc.r 18 ; CHECK: @llvm.objc.autoreleaseReturnValue 19 ; CHECK-NOT: @llvm.objc. 23 %2 = tail call i8* @llvm.objc.retain(i8* %1) nounwind 30 %3 = tail call i8* @llvm.objc.retain(i8* %1) nounwind [all …]
|
| H A D | opt-max-ptr-states.ll | 6 ; CHECK: call i8* @llvm.objc.retain 7 ; ENABLE-NOT: call i8* @llvm.objc.retain 8 ; DISABLE: call i8* @llvm.objc.retain 9 ; CHECK: call void @llvm.objc.release 10 ; ENABLE-NOT: call void @llvm.objc.release 11 ; DISABLE: call void @llvm.objc.release 14 %1 = tail call i8* @llvm.objc.retain(i8* %a) 15 %2 = tail call i8* @llvm.objc.retain(i8* %a) 18 tail call void @llvm.objc.release(i8* %3) 23 declare i8* @llvm.objc.retain(i8*) [all …]
|
| H A D | invoke-2.ll | 9 declare dllimport i8* @llvm.objc.retain(i8* returned) local_unnamed_addr 10 declare dllimport void @llvm.objc.release(i8*) local_unnamed_addr 13 declare dllimport i8* @llvm.objc.begin_catch(i8*) local_unnamed_addr 14 declare dllimport void @llvm.objc.end_catch() local_unnamed_addr 21 %0 = tail call i8* @llvm.objc.retain(i8* %i) 30 %3 = tail call i8* @llvm.objc.retainAutoreleasedReturnValue(i8* %call) 31 tail call void @llvm.objc.release(i8* %3) #0, !clang.imprecise_release !0 40 %exn.adjusted = tail call i8* @llvm.objc.begin_catch(i8* undef) 47 ; CHECK-NOT: tail call i8* @llvm.objc.retain(i8* %i) 48 ; CHECK: load i8*, i8** @llvm.objc.SELECTOR_REFERENCES_, align 8 [all …]
|
| H A D | contract-storestrong.ll | 1 ; RUN: opt -objc-arc-contract -S < %s | FileCheck %s 5 declare i8* @llvm.objc.retain(i8*) 6 declare void @llvm.objc.release(i8*) 21 tail call void @llvm.objc.release(i8* %tmp) nounwind 179 ; CHECK-NOT: llvm.objc.storeStrong 194 ; CHECK-NOT: llvm.objc.storeStrong 209 ; CHECK: llvm.objc.storeStrong 253 call void @llvm.objc.release(i8* %old) 271 %v1 = call i8* @llvm.objc.retain(i8* %p) 273 %v2 = call i8* @llvm.objc.retain(i8* %v0) [all …]
|
| H A D | unsafe-claim-rv.ll | 1 ; RUN: opt -objc-arc -S < %s | FileCheck %s 18 declare i8* @llvm.objc.autoreleaseReturnValue(i8*) 19 declare i8* @llvm.objc.unsafeClaimAutoreleasedReturnValue(i8*) 20 declare i8* @llvm.objc.retain(i8*) 21 declare void @llvm.objc.release(i8*) 25 %0 = tail call i8* @llvm.objc.retain(i8* %X) 30 %1 = tail call i8* @llvm.objc.retain(i8* nonnull %0) 37 tail call void @llvm.objc.release(i8* %0) 42 ; CHECK: tail call i8* @llvm.objc.retain 44 ; CHECK-NEXT: tail call void @llvm.objc.release [all …]
|
| /llvm-project-15.0.7/llvm/test/Transforms/PreISelIntrinsicLowering/ |
| H A D | objc-arc.ll | 15 %0 = call i8* @llvm.objc.autorelease(i8* %arg0) 115 call void @llvm.objc.release(i8* %arg0) 125 %0 = call i8* @llvm.objc.retain(i8* %arg0) 290 declare i8* @llvm.objc.autorelease(i8*) 295 declare void @llvm.objc.destroyWeak(i8**) 297 declare i8* @llvm.objc.loadWeak(i8**) 300 declare void @llvm.objc.release(i8*) 301 declare i8* @llvm.objc.retain(i8*) 305 declare i8* @llvm.objc.retainBlock(i8*) 313 declare i32 @llvm.objc.sync.enter(i8*) [all …]
|
| /llvm-project-15.0.7/llvm/test/Transforms/Inline/ |
| H A D | inline-retainRV-call.ll | 8 %1 = tail call i8* @llvm.objc.autoreleaseReturnValue(i8* %call) 22 ; CHECK: call void @llvm.objc.release(i8* %[[CALL]]) 49 ; CHECK: call void @llvm.objc.release(i8* %[[INVOKE]]) 116 ; CHECK-NEXT: call i8* @llvm.objc.retain(i8* %[[V0]]) 143 ; CHECK-NEXT: call i8* @llvm.objc.retain(i8* %[[V0]]) 157 %1 = tail call i8* @llvm.objc.autoreleaseReturnValue(i8* %call) 164 ; CHECK: call i8* @llvm.objc.autoreleaseReturnValue(i8* %[[V0]]) 166 ; CHECK: call i8* @llvm.objc.retain(i8* %[[V0]]) 174 declare i8* @llvm.objc.retainAutoreleasedReturnValue(i8*) 175 declare i8* @llvm.objc.unsafeClaimAutoreleasedReturnValue(i8*) [all …]
|
| /llvm-project-15.0.7/clang/test/Index/Core/ |
| H A D | index-source.m | 8 // CHECK-NEXT: RelChild | Base | c:objc(cs)Base 202 // CHECK-NEXT: RelChild | I3 | c:objc(cs)I3 206 // CHECK-NEXT: RelChild | I3 | c:objc(cs)I3 215 // CHECK-NEXT: RelChild | I3 | c:objc(cs)I3 276 // CHECK-NEXT: RelChild | I4 | c:objc(cs)I4 279 // CHECK-NEXT: RelChild | I4 | c:objc(cs)I4 281 // CHECK-NEXT: RelChild | I4 | c:objc(cs)I4 297 // CHECK-NEXT: RelChild | I5 | c:objc(cs)I5 300 // CHECK-NEXT: RelChild | I5 | c:objc(cs)I5 302 // CHECK-NEXT: RelChild | I5 | c:objc(cs)I5 [all …]
|
| /llvm-project-15.0.7/clang/test/Index/ |
| H A D | index-decls.m | 60 // CHECK: [indexDeclaration]: kind: objc-class | name: I | {{.*}} | loc: 1:12 61 // CHECK: [indexDeclaration]: kind: objc-instance-method | name: prop | {{.*}} | loc: 3:7 62 // CHECK: [indexDeclaration]: kind: objc-property | name: prop | {{.*}} | loc: 2:25 63 // CHECK: [indexDeclaration]: kind: objc-category | name: | {{.*}} | loc: 6:12 65 // CHECK: [indexDeclaration]: kind: objc-property | name: prop | {{.*}} | loc: 7:33 69 // CHECK: [indexDeclaration]: kind: objc-ivar | name: _prop | {{.*}} | loc: 11:20 71 // CHECK: [indexDeclaration]: kind: objc-ivar | name: _auto_prop | {{.*}} | loc: 20:33 80 // CHECK: [indexDeclaration]: kind: objc-class | name: I4 | {{.*}} | loc: 36:12 82 // CHECK-NOT: [indexDeclaration]: kind: objc-instance-method {{.*}} loc: 37: 83 // CHECK-NOT: [indexDeclaration]: kind: objc-instance-method {{.*}} loc: 43: [all …]
|
| H A D | index-suppress-refs.m | 22 // CHECK: [indexDeclaration]: kind: objc-class | name: I 24 // CHECK-NEXT: [indexDeclaration]: kind: objc-class | name: B 26 // CHECK-NEXT: [indexDeclaration]: kind: objc-protocol | name: P 30 // CHECK-NEXT: [indexDeclaration]: kind: objc-class | name: I 32 // CHECK-NEXT: [indexDeclaration]: kind: objc-category | name: cat 36 // CHECK-NOT: [indexEntityReference]: kind: objc-class | name: I 37 // CHECK-NOT: [indexDeclaration]: kind: objc-class | name: I 38 // CHECK-NEXT: [indexDeclaration]: kind: objc-class | name: S 40 // CHECK-NEXT: <base>: kind: objc-class | name: B 41 // CHECK-NEXT: <protocol>: kind: objc-protocol | name: P [all …]
|
| /llvm-project-15.0.7/clang/test/CodeGenObjC/ |
| H A D | arc-literals.m | 25 // CHECK: call void @llvm.objc.release 27 // CHECK: call void @llvm.objc.release 29 // CHECK: call void @llvm.objc.release 31 // CHECK: call void @llvm.objc.release 42 // CHECK: call i8* @llvm.objc.retain(i8* 43 // CHECK: call i8* @llvm.objc.retain(i8* 61 // CHECK: call void @llvm.objc.release 62 // CHECK: call void @llvm.objc.release 63 // CHECK: call void @llvm.objc.release 106 // CHECK: call void @llvm.objc.release [all …]
|