| /llvm-project-15.0.7/llvm/lib/Target/ARC/ |
| H A D | ARCFrameLowering.cpp | 66 AdjOp = Positive ? ARC::ADD_rru6 : ARC::SUB_rru6; in generateStackAdjustment() 68 AdjOp = Positive ? ARC::ADD_rrs12 : ARC::SUB_rrs12; in generateStackAdjustment() 70 AdjOp = Positive ? ARC::ADD_rrlimm : ARC::SUB_rrlimm; in generateStackAdjustment() 80 assert(Reg.getReg() >= ARC::R13 && Reg.getReg() <= ARC::R25 && in determineLastCalleeSave() 143 .addReg(ARC::SP) in emitPrologue() 150 .addReg(ARC::FP) in emitPrologue() 151 .addReg(ARC::SP) in emitPrologue() 189 ARC::FP) in emitPrologue() 456 Opc = IsAdd ? ARC::ADD_rru6 : ARC::SUB_rru6; in emitRegUpdate() 458 Opc = IsAdd ? ARC::ADD_rrs12 : ARC::SUB_rrs12; in emitRegUpdate() [all …]
|
| H A D | ARCRegisterInfo.cpp | 74 unsigned AddOpc = isUInt<6>(Offset) ? ARC::ADD_rru6 : ARC::ADD_rrlimm; in replaceFrameIndex() 83 case ARC::LD_rs9: in replaceFrameIndex() 86 case ARC::LDH_rs9: in replaceFrameIndex() 87 case ARC::LDH_X_rs9: in replaceFrameIndex() 90 case ARC::LDB_rs9: in replaceFrameIndex() 98 case ARC::ST_rs9: in replaceFrameIndex() 101 case ARC::STH_rs9: in replaceFrameIndex() 104 case ARC::STB_rs9: in replaceFrameIndex() 112 case ARC::GETFI: in replaceFrameIndex() 115 TII.get(isUInt<6>(Offset) ? ARC::ADD_rru6 : ARC::ADD_rrlimm)) in replaceFrameIndex() [all …]
|
| H A D | ARCExpandPseudos.cpp | 51 case ARC::ST_FAR: in getMappedOp() 52 return ARC::ST_rs9; in getMappedOp() 53 case ARC::STH_FAR: in getMappedOp() 54 return ARC::STH_rs9; in getMappedOp() 55 case ARC::STB_FAR: in getMappedOp() 56 return ARC::STB_rs9; in getMappedOp() 67 isUInt<6>(SI.getOperand(2).getImm()) ? ARC::ADD_rru6 : ARC::ADD_rrlimm; in expandStore() 140 case ARC::ST_FAR: in runOnMachineFunction() 141 case ARC::STH_FAR: in runOnMachineFunction() 146 case ARC::CTLZ: in runOnMachineFunction() [all …]
|
| H A D | ARCInstrInfo.cpp | 47 : ARCGenInstrInfo(ARC::ADJCALLSTACKDOWN, ARC::ADJCALLSTACKUP), RI(ST) {} in ARCInstrInfo() 54 return Opcode == ARC::LD_rs9 || Opcode == ARC::LDH_rs9 || in isLoad() 55 Opcode == ARC::LDB_rs9; in isLoad() 59 return Opcode == ARC::ST_rs9 || Opcode == ARC::STH_rs9 || in isStore() 60 Opcode == ARC::STB_rs9; in isStore() 140 return Opc == ARC::BRcc_rr_p || Opc == ARC::BRcc_ru6_p; in isCondBranchOpcode() 285 assert(ARC::GPR32RegClass.contains(SrcReg) && in copyPhysReg() 315 BuildMI(MBB, I, DL, get(ARC::ST_rs9)) in storeRegToStackSlot() 342 BuildMI(MBB, I, DL, get(ARC::LD_rs9)) in loadRegFromStackSlot() 386 int BccOpc = Cond[1].isImm() ? ARC::BRcc_ru6_p : ARC::BRcc_rr_p; in insertBranch() [all …]
|
| H A D | ARCBranchFinalize.cpp | 96 return !(MI->getOpcode() != ARC::BRcc_rr_p && in isBRccPseudo() 97 MI->getOpcode() != ARC::BRcc_ru6_p); in isBRccPseudo() 102 if (MI->getOpcode() == ARC::BRcc_rr_p) in getBRccForPseudo() 103 return ARC::BRcc_rr; in getBRccForPseudo() 104 return ARC::BRcc_ru6; in getBRccForPseudo() 109 if (MI->getOpcode() == ARC::BRcc_rr_p) in getCmpForPseudo() 110 return ARC::CMP_rr; in getCmpForPseudo() 111 return ARC::CMP_ru6; in getCmpForPseudo() 137 BuildMI(*MI->getParent(), MI, MI->getDebugLoc(), TII->get(ARC::Bcc)) in replaceWithCmpBcc()
|
| H A D | ARCRegisterInfo.td | 1 //===- ARCRegisterInfo.td - ARC Register defs --------------*- tablegen -*-===// 10 // Declarations that describe the ARC register file 15 let Namespace = "ARC"; 60 def STATUS32 : Aux<10, "status32">; // No DwarfRegNum defined in the ARC ABI 63 def GPR32: RegisterClass<"ARC", [i32], 32, 75 def SREG : RegisterClass<"ARC", [i32], 1, (add STATUS32)>; 77 def GPR_S : RegisterClass<"ARC", [i32], 8,
|
| H A D | ARC.td | 1 //===- ARC.td - Describe the ARC Target Machine ------------*- tablegen -*-===// 12 // ARC Subtarget features 34 def ARC : Target {
|
| /llvm-project-15.0.7/clang/test/CodeGenObjCXX/ |
| H A D | lambda-expressions.mm | 7 // ARC: %[[LAMBDACLASS:.*]] = type { i32 } 19 // ARC-LABEL: define{{.*}} i32 ()* @_Z1fv( 23 // ARC: call i8* @llvm.objc.retainBlock 38 // ARC: call i8* @llvm.objc.retainBlock 39 // ARC: call void @llvm.objc.release 41 // ARC: call noundef i32 @"_ZZ2f2vENK3$_1clEv 67 // ARC: store i32 %{{.*}}, i32* %[[CAPTURE0]] 75 // ARC-NOT: @llvm.objc.storeStrong( 76 // ARC: ret void 109 // ARC-NEXT: ret i32 [[YVAL]] [all …]
|
| /llvm-project-15.0.7/clang/test/SemaObjC/ |
| H A D | warn-retain-block-property.m | 35 // CHECK-ARC: @property (retain) void (^aBlock)(void); 36 // CHECK-ARC: ^ 38 // CHECK-ARC: @property (weak, retain) void (^aBlockW)(void); 39 // CHECK-ARC: ^ 41 // CHECK-ARC: @property (copy, retain) void (^aBlockC)(void); 42 // CHECK-ARC: ^ 44 // CHECK-ARC: @property (assign, retain) void (^aBlockA)(void); 45 // CHECK-ARC: ^ 47 // CHECK-ARC: t.aBlockW = ^{ doSomething(); }; 48 // CHECK-ARC: ^ ~~~~~~~~~~~~~~~~~~~ [all …]
|
| H A D | arc-system-header.m | 8 cp = test0(op); // expected-error {{'test0' is unavailable in ARC}} 9 cp = *test1(&op); // expected-error {{'test1' is unavailable in ARC}} 10 …[email protected]:1 {{inline function performs a conversion which is forbidden in ARC}} 11 …[email protected]:5 {{inline function performs a conversion which is forbidden in ARC}} 15 p->field = 0; // expected-error {{'field' is unavailable in ARC}} 20 p->field1 = 0; // expected-error {{'field1' is unavailable in ARC}} 41 *p.prop = 0; // expected-error {{'prop' is unavailable in ARC}} 42 p.prop = 0; // expected-error {{'prop' is unavailable in ARC}} 43 *[p prop] = 0; // expected-error {{'prop' is unavailable in ARC}} 44 [p setProp: 0]; // expected-error {{'setProp:' is unavailable in ARC}} [all …]
|
| H A D | externally-retained.m | 18 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} 19 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} 26 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} 36 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} 45 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} 51 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} 61 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} 68 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} 81 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} 85 …0; // expected-error{{variable declared with 'objc_externally_retained' cannot be modified in ARC}} [all …]
|
| H A D | arc-type-conversion.m | 10 …d)(int*)arg; // expected-error {{cast of an Objective-C pointer to 'int *' is disallowed with ARC}} 12 … expected-error {{cast of an Objective-C pointer to '__autoreleasing id *' is disallowed with ARC}} 13 …arg; // expected-error {{cast of an Objective-C pointer to '__strong id *' is disallowed with ARC}} 17 …oid**)arg; // expected-error {{cast of an Objective-C pointer to 'void **' is disallowed with ARC}} 21 … // expected-note {{use CFBridgingRetain call to make an ARC object available as a +1 'void *'}} \ 22 … // expected-note {{use CFBridgingRelease call to transfer ownership of a +1 'void *' into ARC}} 27 … // expected-note {{use CFBridgingRetain call to make an ARC object available as a +1 'void *'}} 58 …t conversion of a non-Objective-C pointer type 'void *' to '__strong id *' is disallowed with ARC}} 59 …cit conversion of a non-Objective-C pointer type 'void *' to '__weak id *' is disallowed with ARC}} 96 … expected-error {{operands to conditional of types 'id' and 'void *' are incompatible in ARC mode}} [all …]
|
| H A D | objcbridge-attribute-arc.m | 87 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 91 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 95 …ridge_transfer to transfer ownership of a +1 'CFErrorRef2' (aka 'struct __CFErrorRef *') into ARC}} 99 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 106 …bridge_transfer to transfer ownership of a +1 'CFErrorRef' (aka 'struct __CFErrorRef *') into ARC}} 109 …bridge_transfer to transfer ownership of a +1 'CFErrorRef' (aka 'struct __CFErrorRef *') into ARC}} 113 …bridge_transfer to transfer ownership of a +1 'CFErrorRef' (aka 'struct __CFErrorRef *') into ARC}} 138 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 141 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 144 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/ARC/Disassembler/ |
| H A D | ARCDisassembler.cpp | 125 ARC::R0, ARC::R1, ARC::R2, ARC::R3, ARC::R4, ARC::R5, ARC::R6, 126 ARC::R7, ARC::R8, ARC::R9, ARC::R10, ARC::R11, ARC::R12, ARC::R13, 127 ARC::R14, ARC::R15, ARC::R16, ARC::R17, ARC::R18, ARC::R19, ARC::R20, 128 ARC::R21, ARC::R22, ARC::R23, ARC::R24, ARC::R25, ARC::GP, ARC::FP, 129 ARC::SP, ARC::ILINK, ARC::R30, ARC::BLINK};
|
| /llvm-project-15.0.7/clang/test/Index/ |
| H A D | complete-property-flags.m | 31 // CHECK-CC1-ARC: {TypedText assign} 32 // CHECK-CC1-ARC-NEXT: {TypedText atomic} 33 // CHECK-CC1-ARC-NEXT: {TypedText copy} 35 // CHECK-CC1-ARC-NEXT: {TypedText nonatomic} 36 // CHECK-CC1-ARC-NEXT: {TypedText nonnull} 39 // CHECK-CC1-ARC-NEXT: {TypedText nullable} 40 // CHECK-CC1-ARC-NEXT: {TypedText readonly} 41 // CHECK-CC1-ARC-NEXT: {TypedText readwrite} 42 // CHECK-CC1-ARC-NEXT: {TypedText retain} 44 // CHECK-CC1-ARC-NEXT: {TypedText strong} [all …]
|
| /llvm-project-15.0.7/llvm/test/Bitcode/ |
| H A D | upgrade-arc-runtime-calls.ll | 1 ; Test that calls to ARC runtime functions are converted to intrinsic calls if 59 // ARC: %[[V0:.*]] = tail call i8* @llvm.objc.autorelease(i8* %[[A]]) 60 // ARC-NEXT: tail call void @llvm.objc.autoreleasePoolPop(i8* %[[A]]) 64 // ARC-NEXT: tail call void @llvm.objc.destroyWeak(i8** %[[B]]) 65 // ARC-NEXT: %[[V100:.*]] = bitcast i32** %[[E]] to i8** 66 // ARC-NEXT: %[[V101:.*]] = bitcast i32* %[[D]] to i8* 68 // ARC-NEXT: %[[V103:.*]] = bitcast i8* %[[V102]] to i32* 72 // ARC-NEXT: tail call void @llvm.objc.release(i8* %[[A]]) 73 // ARC-NEXT: %[[V6:.*]] = tail call i8* @llvm.objc.retain(i8* %[[A]]) 87 // ARC-NEXT: %[[V18:.*]] = tail call i32 @objc_sync.exit(i8* %[[A]]) [all …]
|
| /llvm-project-15.0.7/clang/test/Driver/ |
| H A D | objc-weak.m | 3 …6_64-apple-macosx10.7 -S -### %s -fobjc-arc -fobjc-weak 2>&1 | FileCheck %s --check-prefix ARC-WEAK 4 …x10.7 -S -### %s -fno-objc-weak -fobjc-weak -fobjc-arc 2>&1 | FileCheck %s --check-prefix ARC-WEAK 5 // ARC-WEAK: -fobjc-arc 6 // ARC-WEAK: -fobjc-weak 8 …apple-macos10.7 -S -### %s -fobjc-arc -fno-objc-weak 2>&1 | FileCheck %s --check-prefix ARC-NO-WEAK 9 ….7 -S -### %s -fobjc-weak -fno-objc-weak -fobjc-arc 2>&1 | FileCheck %s --check-prefix ARC-NO-WEAK 10 // ARC-NO-WEAK: -fobjc-arc 11 // ARC-NO-WEAK: -fno-objc-weak 13 …cosx10.5 -S -### %s -fobjc-arc -fobjc-weak 2>&1 | FileCheck %s --check-prefix ARC-WEAK-NOTSUPPORTED 14 … %s -fno-objc-weak -fobjc-weak -fobjc-arc 2>&1 | FileCheck %s --check-prefix ARC-WEAK-NOTSUPPORTED [all …]
|
| /llvm-project-15.0.7/clang/test/CodeGenObjC/ |
| H A D | stret-lifetime.m | 3 …-fobjc-arc -S -emit-llvm -o - -O2 -disable-llvm-passes %s | FileCheck %s --check-prefixes=CHECK,ARC 4 …-fobjc-arc -S -emit-llvm -o - -O2 -disable-llvm-passes %s | FileCheck %s --check-prefixes=CHECK,ARC 22 // ARC: [[T0:%.*]] = icmp eq i8* 23 // ARC: br i1 [[T0]] 28 // ARC: br label 30 // ARC: call void @llvm.objc.release 31 // ARC: br label
|
| H A D | arc-linetable-autorelease.m | 3 // ARC cleanups should be at the closing '}'. 32 // CHECK: call void @llvm.objc.storeStrong{{.*}} !dbg ![[ARC:[0-9]+]] 33 // CHECK: call {{.*}} @llvm.objc.autoreleaseReturnValue{{.*}} !dbg ![[ARC]] 34 // CHECK: ret {{.*}} !dbg ![[ARC]] 37 // CHECK: ![[ARC]] = !DILocation(line: [[@LINE+1]], column: 1, scope: !{{.*}})
|
| H A D | noescape.m | 96 // CHECK-ARC: store i8* null, i8** %[[B_ADDR]], align 8 97 // CHECK-ARC: call void @llvm.objc.storeStrong(i8** %[[B_ADDR]], i8* %[[B]]) 107 // CHECK-ARC: %[[V2:.*]] = load i8*, i8** %[[B_ADDR]], align 8 108 // CHECK-ARC: %[[V3:.*]] = call i8* @llvm.objc.retain(i8* %[[V2]]) 109 // CHECK-ARC: store i8* %[[V3]], i8** %[[BLOCK_CAPTURED]], align 8 111 // CHECK-ARC: call void @llvm.objc.storeStrong(i8** %[[BLOCK_CAPTURED]], i8* null) 112 // CHECK-ARC: call void @llvm.objc.storeStrong(i8** %[[B_ADDR]], i8* null) 135 // CHECK-ARC-NOT: define internal void @__Block_byref_object_copy_ 136 // CHECK-ARC-NOT: define internal void @__Block_byref_object_dispose_ 155 // CHECK-ARC: define internal void @__Block_byref_object_copy_ [all …]
|
| /llvm-project-15.0.7/clang/test/SemaObjCXX/ |
| H A D | objcbridge-attribute-arc.mm | 72 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 76 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 80 …use __bridge_transfer to transfer ownership of a +1 'CFErrorRef2' (aka '__CFErrorRef *') into ARC}} 84 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 91 …{use __bridge_transfer to transfer ownership of a +1 'CFErrorRef' (aka '__CFErrorRef *') into ARC}} 94 …{use __bridge_transfer to transfer ownership of a +1 'CFErrorRef' (aka '__CFErrorRef *') into ARC}} 98 …{use __bridge_transfer to transfer ownership of a +1 'CFErrorRef' (aka '__CFErrorRef *') into ARC}} 123 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 126 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 129 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… [all …]
|
| H A D | objcbridge-attribute.mm | 72 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 76 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 80 …use __bridge_transfer to transfer ownership of a +1 'CFErrorRef2' (aka '__CFErrorRef *') into ARC}} 84 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 91 …{use __bridge_transfer to transfer ownership of a +1 'CFErrorRef' (aka '__CFErrorRef *') into ARC}} 94 …{use __bridge_transfer to transfer ownership of a +1 'CFErrorRef' (aka '__CFErrorRef *') into ARC}} 98 …{use __bridge_transfer to transfer ownership of a +1 'CFErrorRef' (aka '__CFErrorRef *') into ARC}} 123 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 126 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… 129 …// expected-note {{use __bridge_retained to make an ARC object available as a +1 'CFErrorRef' (aka… [all …]
|
| H A D | objcbridge-static-cast.mm | 72 …// expected-note {{use __bridge_retained with C-style cast to make an ARC object available as a +1… 76 …// expected-note {{use __bridge_retained with C-style cast to make an ARC object available as a +1… 80 …fer with C-style cast to transfer ownership of a +1 'CFErrorRef2' (aka '__CFErrorRef *') into ARC}} 84 …// expected-note {{use __bridge_retained with C-style cast to make an ARC object available as a +1… 91 …sfer with C-style cast to transfer ownership of a +1 'CFErrorRef' (aka '__CFErrorRef *') into ARC}} 94 …sfer with C-style cast to transfer ownership of a +1 'CFErrorRef' (aka '__CFErrorRef *') into ARC}} 98 …sfer with C-style cast to transfer ownership of a +1 'CFErrorRef' (aka '__CFErrorRef *') into ARC}} 123 …// expected-note {{use __bridge_retained with C-style cast to make an ARC object available as a +1… 126 …// expected-note {{use __bridge_retained with C-style cast to make an ARC object available as a +1… 129 …// expected-note {{use __bridge_retained with C-style cast to make an ARC object available as a +1… [all …]
|
| /llvm-project-15.0.7/clang/test/Lexer/ |
| H A D | has_feature_objc_arc.m | 1 …riple" "x86_64-apple-macosx10.7.0" -fobjc-runtime-has-weak | FileCheck --check-prefix=CHECK-ARC %s 22 // CHECK-ARC: void has_objc_arc_feature(); 23 // CHECK-ARC: void has_objc_arc_weak_feature(); 24 // CHECK-ARC: void has_objc_arc_fields();
|
| /llvm-project-15.0.7/llvm/unittests/Analysis/ |
| H A D | LazyCallGraphTest.cpp | 656 EXPECT_TRUE(DRC.isChildOf(ARC)); in TEST() 677 EXPECT_TRUE(DRC.isChildOf(ARC)); in TEST() 698 EXPECT_TRUE(DRC.isChildOf(ARC)); in TEST() 711 ARC.removeOutgoingEdge(A, D); in TEST() 990 EXPECT_EQ(4, ARC.size()); in TEST() 991 EXPECT_EQ(&DC, &ARC[0]); in TEST() 992 EXPECT_EQ(&CC, &ARC[1]); in TEST() 993 EXPECT_EQ(&BC, &ARC[2]); in TEST() 994 EXPECT_EQ(&AC, &ARC[3]); in TEST() 1368 EXPECT_EQ(1, std::distance(ARC.begin(), ARC.end())); in TEST() [all …]
|