Home
last modified time | relevance | path

Searched refs:ARC (Results 1 – 25 of 142) sorted by relevance

123456

/llvm-project-15.0.7/llvm/lib/Target/ARC/
H A DARCFrameLowering.cpp66 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 DARCRegisterInfo.cpp74 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 DARCExpandPseudos.cpp51 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 DARCInstrInfo.cpp47 : 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 DARCBranchFinalize.cpp96 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 DARCRegisterInfo.td1 //===- 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 DARC.td1 //===- 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 Dlambda-expressions.mm7 // 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 Dwarn-retain-block-property.m35 // 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 Darc-system-header.m8 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 Dexternally-retained.m18 …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 Darc-type-conversion.m10 …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 Dobjcbridge-attribute-arc.m87 …// 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 DARCDisassembler.cpp125 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 Dcomplete-property-flags.m31 // 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 Dupgrade-arc-runtime-calls.ll1 ; 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 Dobjc-weak.m3 …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 Dstret-lifetime.m3 …-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 Darc-linetable-autorelease.m3 // 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 Dnoescape.m96 // 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 Dobjcbridge-attribute-arc.mm72 …// 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 Dobjcbridge-attribute.mm72 …// 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 Dobjcbridge-static-cast.mm72 …// 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 Dhas_feature_objc_arc.m1 …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 DLazyCallGraphTest.cpp656 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 …]

123456