Home
last modified time | relevance | path

Searched refs:sp (Results 1 – 25 of 48) sorted by relevance

12

/art/runtime/arch/arm64/
Djni_entrypoints_arm64.S27 stp x29, x30, [sp, #-16]!
31 mov x29, sp
32 stp d6, d7, [sp, #-16]!
34 stp d4, d5, [sp, #-16]!
36 stp d2, d3, [sp, #-16]!
38 stp d0, d1, [sp, #-16]!
40 stp x6, x7, [sp, #-16]!
42 stp x4, x5, [sp, #-16]!
44 stp x2, x3, [sp, #-16]!
46 stp x0, x1, [sp, #-16]!
[all …]
Dquick_entrypoints_arm64.S23 str \reg, [sp, #-(\frame_adjustment)]!
29 ldr \reg, [sp], #(\frame_adjustment)
35 stp \reg1, \reg2, [sp, #-(\frame_adjustment)]!
42 ldp \reg1, \reg2, [sp], #(\frame_adjustment)
67 SETUP_SAVE_REFS_AND_ARGS_FRAME_INTERNAL sp
69 str xIP0, [sp] // Store ArtMethod* Runtime::callee_save_methods_[kSaveRefsAndArgs].
71 mov xIP0, sp
77 SETUP_SAVE_REFS_AND_ARGS_FRAME_INTERNAL sp
78 str x0, [sp, #0] // Store ArtMethod* to bottom of stack.
80 mov xIP0, sp
[all …]
Dasm_support_arm64.S114 sub sp, sp, #(\frame_adjustment)
119 add sp, sp, #(\frame_adjustment)
124 str \reg, [sp, #(\offset)]
134 RESTORE_REG_BASE sp, \reg, \offset
144 SAVE_TWO_REGS_BASE sp, \reg1, \reg2, \offset
154 RESTORE_TWO_REGS_BASE sp, \reg1, \reg2, \offset
208 stp xIP0, x20, [sp]
212 mov xIP0, sp
293 RESTORE_SAVE_REFS_AND_ARGS_FRAME_INTERNAL sp
299 stp d8, d9, [sp, #(0 + \offset)]
[all …]
Dfault_handler_arm64.cc49 *out_sp = static_cast<uintptr_t>(sc->sp); in GetMethodAndReturnPcAndSp()
89 sc->sp -= sizeof(uintptr_t); in Action()
90 *reinterpret_cast<uintptr_t*>(sc->sp) = sc->pc + 4; in Action()
165 uintptr_t sp = sc->sp; in Action() local
166 VLOG(signals) << "sp: " << std::hex << sp; in Action()
170 VLOG(signals) << "checking for stack overflow, sp: " << std::hex << sp << in Action()
173 uintptr_t overflow_addr = sp - GetStackOverflowReservedBytes(InstructionSet::kArm64); in Action()
/art/compiler/utils/
Dassembler_thumb_test_expected.cc.inc4 " 8: 89 b0 sub sp, #36\n"
5 " a: 00 90 str r0, [sp]\n"
6 " c: 21 91 str r1, [sp, #132]\n"
7 " e: 8d ed 22 0a vstr s0, [sp, #136]\n"
8 " 12: 23 92 str r2, [sp, #140]\n"
9 " 14: 24 93 str r3, [sp, #144]\n"
10 " 16: 88 b0 sub sp, #32\n"
11 " 18: ad f5 80 5d sub.w sp, sp, #4096\n"
12 " 1c: 08 98 ldr r0, [sp, #32]\n"
13 " 1e: 1f 98 ldr r0, [sp, #124]\n"
[all …]
/art/compiler/jni/
Djni_cfi_test_expected.inc48 // 0x00000008: sub sp, #36
50 // 0x0000000a: str r0, [sp]
51 // 0x0000000c: str r1, [sp, #132]
52 // 0x0000000e: vstr s0, [sp, #136]
53 // 0x00000012: str r2, [sp, #140]
54 // 0x00000014: str r3, [sp, #144]
55 // 0x00000016: sub sp, #32
57 // 0x00000018: add sp, #32
60 // 0x0000001a: add sp, #36
111 // 0x00000000: sub sp, sp, #0xc0 (192)
[all …]
/art/runtime/entrypoints/quick/
Dquick_trampoline_entrypoints.cc228 static StackReference<mirror::Object>* GetProxyThisObjectReference(ArtMethod** sp) in GetProxyThisObjectReference() argument
230 CHECK((*sp)->IsProxyMethod()); in GetProxyThisObjectReference()
235 uint8_t* this_arg_address = reinterpret_cast<uint8_t*>(sp) + this_arg_offset; in GetProxyThisObjectReference()
239 static ArtMethod* GetCallingMethod(ArtMethod** sp) REQUIRES_SHARED(Locks::mutator_lock_) { in GetCallingMethod() argument
240 DCHECK((*sp)->IsCalleeSaveMethod()); in GetCallingMethod()
241 return GetCalleeSaveMethodCaller(sp, CalleeSaveType::kSaveRefsAndArgs); in GetCallingMethod()
244 static ArtMethod* GetOuterMethod(ArtMethod** sp) REQUIRES_SHARED(Locks::mutator_lock_) { in GetOuterMethod() argument
245 DCHECK((*sp)->IsCalleeSaveMethod()); in GetOuterMethod()
247 reinterpret_cast<uint8_t*>(sp) + kQuickCalleeSaveFrame_RefAndArgs_FrameSize; in GetOuterMethod()
251 static uint32_t GetCallingDexPc(ArtMethod** sp) REQUIRES_SHARED(Locks::mutator_lock_) { in GetCallingDexPc() argument
[all …]
/art/runtime/
Dmanaged_stack.h131 static TaggedTopQuickFrame CreateNotTagged(ArtMethod** sp) { in CreateNotTagged() argument
132 DCHECK_ALIGNED(sp, 4u); in CreateNotTagged()
133 return TaggedTopQuickFrame(reinterpret_cast<uintptr_t>(sp)); in CreateNotTagged()
136 static TaggedTopQuickFrame CreateTagged(ArtMethod** sp) { in CreateTagged() argument
137 DCHECK_ALIGNED(sp, 4u); in CreateTagged()
138 return TaggedTopQuickFrame(reinterpret_cast<uintptr_t>(sp) | 1u); in CreateTagged()
Dfault_handler.cc293 uintptr_t sp = 0; in IsInGeneratedCode() local
298 GetMethodAndReturnPcAndSp(siginfo, context, &method_obj, &return_pc, &sp, &is_stack_overflow); in IsInGeneratedCode()
346 CHECK_EQ(*reinterpret_cast<ArtMethod**>(sp), method_obj); in IsInGeneratedCode()
347 dexpc = method_header->ToDexPc(reinterpret_cast<ArtMethod**>(sp), return_pc, false); in IsInGeneratedCode()
391 uintptr_t sp = 0; in Action() local
396 siginfo, context, &method, &return_pc, &sp, &is_stack_overflow); in Action()
398 self->SetTopOfStack(reinterpret_cast<ArtMethod**>(sp)); in Action()
/art/runtime/arch/arm/
Dquick_entrypoints_arm.S44 sub sp, #4 @ bottom word will hold Method*
49 str \rTemp, [sp, #0] @ Place Method* at bottom of stack.
50 … str sp, [rSELF, #THREAD_TOP_QUICK_FRAME_OFFSET] @ Place sp in Thread::Current()->top_quick_frame.
59 add sp, #4 @ bottom word holds Method*
80 str \rTemp, [sp, #0] @ Place Method* at bottom of stack.
81 … str sp, [rSELF, #THREAD_TOP_QUICK_FRAME_OFFSET] @ Place sp in Thread::Current()->top_quick_frame.
86 str r0, [sp, #0] @ Store ArtMethod* to bottom of stack.
87 … str sp, [rSELF, #THREAD_TOP_QUICK_FRAME_OFFSET] @ Place sp in Thread::Current()->top_quick_frame.
99 sub sp, #8 @ 2 words of space, alignment padding and Method*
104 str \rTemp, [sp, #0] @ Place Method* at bottom of stack.
[all …]
Dasm_support_arm.S164 sub sp, sp, #(\frame_adjustment)
169 add sp, sp, #(\frame_adjustment)
206 sub sp, #8 @ 2 words of space, alignment padding and Method*
215 add sp, #8 @ rewind sp
261 sub sp, #12 @ 3 words of space, bottom word will hold Method*
266 str \rTemp, [sp, #0] @ Place Method* at bottom of stack.
267 … str sp, [rSELF, #THREAD_TOP_QUICK_FRAME_OFFSET] @ Place sp in Thread::Current()->top_quick_frame.
Djni_entrypoints_arm.S28 sub sp, #12 @ pad stack pointer to align frame
47 add sp, #12 @ restore stack pointer
84 ldr lr, [sp, #20]
87 add r4, sp, #24
186 cmp sp, r4
190 add r0, sp, #16
207 .cfi_def_cfa sp, FRAME_SIZE_SAVE_REFS_AND_ARGS
Dfault_handler_arm.cc210 uintptr_t sp = sc->arm_sp; in Action() local
211 VLOG(signals) << "sp: " << std::hex << sp; in Action()
215 VLOG(signals) << "checking for stack overflow, sp: " << std::hex << sp << in Action()
218 uintptr_t overflow_addr = sp - GetStackOverflowReservedBytes(InstructionSet::kArm); in Action()
/art/compiler/utils/arm/
Djni_macro_assembler_arm_vixl.cc126 asm_.StoreToOffset(kStoreWord, r0, sp, 0); in BuildFrame()
206 asm_.AddConstant(sp, -adjust); in IncreaseFrameSize()
213 asm_.AddConstant(sp, adjust); in DecreaseFrameSize()
226 asm_.StoreToOffset(kStoreWord, AsVIXLRegister(src), sp, dest.Int32Value()); in Store()
231 MemOperand(sp, dest.Int32Value())); in Store()
234 asm_.StoreSToOffset(AsVIXLSRegister(src), sp, dest.Int32Value()); in Store()
238 asm_.StoreDToOffset(AsVIXLDRegister(src), sp, dest.Int32Value()); in Store()
246 asm_.StoreToOffset(kStoreWord, src, sp, dest.Int32Value()); in StoreRef()
253 asm_.StoreToOffset(kStoreWord, src, sp, dest.Int32Value()); in StoreRawPtr()
260 asm_.StoreToOffset(kStoreWord, src, sp, dest.Int32Value()); in StoreSpanning()
[all …]
Dassembler_arm_vixl.cc389 vixl32::Register base = sp; in StoreRegisterList()
393 ___ Add(base, sp, Operand::From(stack_offset)); in StoreRegisterList()
398 ___ Str(vixl32::Register(i), MemOperand(sp, stack_offset)); in StoreRegisterList()
410 vixl32::Register base = sp; in LoadRegisterList()
413 ___ Add(base, sp, Operand::From(stack_offset)); in LoadRegisterList()
418 ___ Ldr(vixl32::Register(i), MemOperand(sp, stack_offset)); in LoadRegisterList()
/art/compiler/optimizing/
Doptimizing_cfi_test_expected.inc20 // 0x00000006: sub sp, sp, #44
23 // 0x00000008: add sp, sp, #44
43 // 0x00000000: sub sp, sp, #0x40 (64)
45 // 0x00000004: str x21, [sp, #40]
47 // 0x00000008: stp x22, lr, [sp, #48]
50 // 0x0000000c: stp d8, d9, [sp, #24]
54 // 0x00000010: ldp d8, d9, [sp, #24]
57 // 0x00000014: ldr x21, [sp, #40]
59 // 0x00000018: ldp x22, lr, [sp, #48]
62 // 0x0000001c: add sp, sp, #0x40 (64)
[all …]
/art/compiler/utils/arm64/
Dassembler_arm64.cc109 const Register sp = vixl_masm_.StackPointer(); in SpillRegisters() local
115 ___ Str(dst0, MemOperand(sp, offset)); in SpillRegisters()
122 ___ Stp(dst0, dst1, MemOperand(sp, offset)); in SpillRegisters()
129 ___ Str(dst0, MemOperand(sp, offset)); in SpillRegisters()
137 const Register sp = vixl_masm_.StackPointer(); in UnspillRegisters() local
141 ___ Ldr(dst0, MemOperand(sp, offset)); in UnspillRegisters()
148 ___ Ldp(dst0, dst1, MemOperand(sp, offset)); in UnspillRegisters()
155 ___ Ldr(dst0, MemOperand(sp, offset)); in UnspillRegisters()
/art/runtime/arch/x86/
Dfault_handler_x86.cc334 uint8_t* sp = reinterpret_cast<uint8_t*>(uc->CTX_ESP); in Action() local
349 uintptr_t* next_sp = reinterpret_cast<uintptr_t*>(sp - 2 * sizeof(uintptr_t)); in Action()
390 uint8_t* sp = reinterpret_cast<uint8_t*>(uc->CTX_ESP); in Action() local
421 uintptr_t* next_sp = reinterpret_cast<uintptr_t*>(sp - sizeof(uintptr_t)); in Action()
445 uintptr_t sp = static_cast<uintptr_t>(uc->CTX_ESP); in Action() local
449 VLOG(signals) << "checking for stack overflow, sp: " << std::hex << sp << in Action()
453 uintptr_t overflow_addr = sp - GetStackOverflowReservedBytes(InstructionSet::kX86_64); in Action()
455 uintptr_t overflow_addr = sp - GetStackOverflowReservedBytes(InstructionSet::kX86); in Action()
/art/test/510-checker-try-catch/smali/
DRegisterAllocator.smali23 ## CHECK-DAG: Phi reg:0 is_catch_phi:true locations:{{\[.*\]}}-><<SlotA1:\d+>>(sp)
24 ## CHECK-DAG: Phi reg:0 is_catch_phi:true locations:{{\[.*\]}}-><<SlotA2:\d+>>(sp)
25 ## CHECK-DAG: Phi reg:1 is_catch_phi:true locations:{{\[.*\]}}-><<SlotB:\d+>>(sp)
61 ## CHECK-DAG: Phi reg:0 is_catch_phi:true locations:{{\[.*\]}}->2x<<SlotB1:\d+>>(sp)
62 ## CHECK-DAG: Phi reg:0 is_catch_phi:true locations:{{\[.*\]}}->2x<<SlotB2:\d+>>(sp)
63 ## CHECK-DAG: Phi reg:2 is_catch_phi:true locations:{{\[.*\]}}-><<SlotA:\d+>>(sp)
/art/runtime/interpreter/mterp/arm64ng/
Dmain.S312 ldr x0, [sp]
350 sub x14, sp, x14
361 mov x13, sp
363 mov sp, x14
376 str x0, [sp]
381 ldr x0, [sp]
416 ldp d8, d9, [sp, #0]
417 ldp d10, d11, [sp, #16]
418 ldp d12, d13, [sp, #32]
419 ldp d14, d15, [sp, #48]
[all …]
Dinvoke.S26 ldr x1, [sp]
90 ldr x1, [sp]
115 ldr x1, [sp]
143 ldr x1, [sp]
/art/runtime/entrypoints/
Dentrypoint_utils.cc186 ArtMethod** sp, CalleeSaveType type) REQUIRES_SHARED(Locks::mutator_lock_) { in DoGetCalleeSaveMethodOuterCallerAndPc() argument
187 DCHECK_EQ(*sp, Runtime::Current()->GetCalleeSaveMethod(type)); in DoGetCalleeSaveMethodOuterCallerAndPc()
191 reinterpret_cast<uintptr_t>(sp) + callee_frame_size); in DoGetCalleeSaveMethodOuterCallerAndPc()
194 (reinterpret_cast<uint8_t*>(sp) + callee_return_pc_offset)); in DoGetCalleeSaveMethodOuterCallerAndPc()
237 ArtMethod* GetCalleeSaveMethodCaller(ArtMethod** sp, CalleeSaveType type, bool do_caller_check) in GetCalleeSaveMethodCaller() argument
240 auto outer_caller_and_pc = DoGetCalleeSaveMethodOuterCallerAndPc(sp, type); in GetCalleeSaveMethodCaller()
250 ArtMethod** sp = self->GetManagedStack()->GetTopQuickFrameKnownNotTagged(); in GetCalleeSaveMethodCallerAndOuterMethod() local
251 auto outer_caller_and_pc = DoGetCalleeSaveMethodOuterCallerAndPc(sp, type); in GetCalleeSaveMethodCallerAndOuterMethod()
261 ArtMethod** sp = self->GetManagedStack()->GetTopQuickFrameKnownNotTagged(); in GetCalleeSaveOuterMethod() local
262 return DoGetCalleeSaveMethodOuterCallerAndPc(sp, type).first; in GetCalleeSaveOuterMethod()
/art/build/
Dcodegen.go88 sp := &sourceProps{}
90 sp.Target.Host = p
92 sp.Target.Android = p
94 ctx.AppendProperties(sp)
/art/runtime/entrypoints/jni/
Djni_entrypoints.cc86 ArtMethod** sp = self->GetManagedStack()->GetTopQuickFrameKnownNotTagged(); in artFindNativeMethodRunnable() local
87 DCHECK(*sp == Runtime::Current()->GetCalleeSaveMethod(CalleeSaveType::kSaveRefsAndArgs)); in artFindNativeMethodRunnable()
88 *sp = target_method; in artFindNativeMethodRunnable()
89 self->SetTopOfStackTagged(sp); // Fake GenericJNI frame. in artFindNativeMethodRunnable()
/art/test/626-checker-arm64-scratch-register/smali/
DMain2.smali124sp)->d0,24(sp)->32(sp),28(sp)->36(sp),d0->d3,d3->d4,d2->d5,d4->d6,d5->d7,d6->d18,d7->d19,d18->d20,…
141 ## CHECK: ldr s2, [sp, #36]
142 ## CHECK: ldr w16, [sp, #16]
143 ## CHECK: str w16, [sp, #36]
144 ## CHECK: str s14, [sp, #16]
145 ## CHECK: ldr s14, [sp, #28]
146 ## CHECK: str s1, [sp, #28]
147 ## CHECK: ldr s1, [sp, #32]
148 ## CHECK: str s31, [sp, #32]
149 ## CHECK: ldr s31, [sp, #20]
[all …]

12