Home
last modified time | relevance | path

Searched refs:stack_offset (Results 1 – 17 of 17) sorted by relevance

/art/compiler/utils/arm/
Dassembler_arm_vixl.cc363 void ArmVIXLAssembler::StoreRegisterList(RegList regs, size_t stack_offset) { in StoreRegisterList() argument
369 if (stack_offset != 0) { in StoreRegisterList()
372 ___ Add(base, sp, Operand::From(stack_offset)); in StoreRegisterList()
377 ___ Str(vixl32::Register(i), MemOperand(sp, stack_offset)); in StoreRegisterList()
378 stack_offset += kRegSizeInBytes; in StoreRegisterList()
384 void ArmVIXLAssembler::LoadRegisterList(RegList regs, size_t stack_offset) { in LoadRegisterList() argument
390 if (stack_offset != 0) { in LoadRegisterList()
392 ___ Add(base, sp, Operand::From(stack_offset)); in LoadRegisterList()
397 ___ Ldr(vixl32::Register(i), MemOperand(sp, stack_offset)); in LoadRegisterList()
398 stack_offset += kRegSizeInBytes; in LoadRegisterList()
Dassembler_arm_vixl.h205 void LoadRegisterList(RegList regs, size_t stack_offset);
206 void StoreRegisterList(RegList regs, size_t stack_offset);
Dassembler_arm.h760 virtual void StoreList(RegList regs, size_t stack_offset) = 0;
761 virtual void LoadList(RegList regs, size_t stack_offset) = 0;
Dassembler_thumb2.h296 void StoreList(RegList regs, size_t stack_offset) OVERRIDE;
297 void LoadList(RegList regs, size_t stack_offset) OVERRIDE;
Dassembler_thumb2.cc3353 void Thumb2Assembler::StoreList(RegList regs, size_t stack_offset) { in StoreList() argument
3358 str(reg, Address(SP, stack_offset)); in StoreList()
3360 add(IP, SP, ShifterOperand(stack_offset)); in StoreList()
3365 void Thumb2Assembler::LoadList(RegList regs, size_t stack_offset) { in LoadList() argument
3370 ldr(reg, Address(SP, stack_offset)); in LoadList()
3373 add(lowest_reg, SP, ShifterOperand(stack_offset)); in LoadList()
/art/compiler/debug/dwarf/
Dexpression.h69 void WriteOpFbreg(int32_t stack_offset) { in WriteOpFbreg() argument
71 PushSleb128(stack_offset); in WriteOpFbreg()
/art/compiler/optimizing/
Dcode_generator.cc1309 size_t stack_offset = codegen->GetFirstRegisterSlotInSlowPath(); in SaveLiveRegisters() local
1315 locations->SetStackBit(stack_offset / kVRegSize); in SaveLiveRegisters()
1317 DCHECK_LT(stack_offset, codegen->GetFrameSize() - codegen->FrameEntrySpillSize()); in SaveLiveRegisters()
1319 saved_core_stack_offsets_[i] = stack_offset; in SaveLiveRegisters()
1320 stack_offset += codegen->SaveCoreRegister(stack_offset, i); in SaveLiveRegisters()
1325 DCHECK_LT(stack_offset, codegen->GetFrameSize() - codegen->FrameEntrySpillSize()); in SaveLiveRegisters()
1327 saved_fpu_stack_offsets_[i] = stack_offset; in SaveLiveRegisters()
1328 stack_offset += codegen->SaveFloatingPointRegister(stack_offset, i); in SaveLiveRegisters()
1333 size_t stack_offset = codegen->GetFirstRegisterSlotInSlowPath(); in RestoreLiveRegisters() local
1337 DCHECK_LT(stack_offset, codegen->GetFrameSize() - codegen->FrameEntrySpillSize()); in RestoreLiveRegisters()
[all …]
Dcode_generator_arm.cc89 size_t stack_offset) { in SaveContiguousSRegisterList() argument
92 stack_offset += codegen->SaveFloatingPointRegister(stack_offset, first); in SaveContiguousSRegisterList()
93 return stack_offset; in SaveContiguousSRegisterList()
96 stack_offset += codegen->SaveFloatingPointRegister(stack_offset, first++); in SaveContiguousSRegisterList()
111 __ StoreDToOffset(d_reg, SP, stack_offset); in SaveContiguousSRegisterList()
113 __ add(IP, SP, ShifterOperand(stack_offset)); in SaveContiguousSRegisterList()
116 stack_offset += number_of_d_regs * kArmWordSize * 2; in SaveContiguousSRegisterList()
120 stack_offset += codegen->SaveFloatingPointRegister(stack_offset, last + 1); in SaveContiguousSRegisterList()
123 return stack_offset; in SaveContiguousSRegisterList()
129 size_t stack_offset) { in RestoreContiguousSRegisterList() argument
[all …]
Dcode_generator_arm_vixl.cc114 size_t stack_offset) { in SaveContiguousSRegisterList() argument
119 __ Vstr(vixl32::SRegister(first), MemOperand(sp, stack_offset)); in SaveContiguousSRegisterList()
120 return stack_offset + kSRegSizeInBytes; in SaveContiguousSRegisterList()
123 __ Vstr(vixl32::SRegister(first++), MemOperand(sp, stack_offset)); in SaveContiguousSRegisterList()
124 stack_offset += kSRegSizeInBytes; in SaveContiguousSRegisterList()
139 __ Vstr(d_reg, MemOperand(sp, stack_offset)); in SaveContiguousSRegisterList()
143 if (stack_offset != 0) { in SaveContiguousSRegisterList()
145 __ Add(base, sp, Operand::From(stack_offset)); in SaveContiguousSRegisterList()
149 stack_offset += number_of_d_regs * kDRegSizeInBytes; in SaveContiguousSRegisterList()
153 __ Vstr(vixl32::SRegister(last + 1), MemOperand(sp, stack_offset)); in SaveContiguousSRegisterList()
[all …]
Dcode_generator_x86.cc4515 int stack_offset = slow_path->GetStackOffsetOfCoreRegister(location.AsRegister<Register>()); in GetInvokeStaticOrDirectExtraParameter() local
4516 __ movl(temp, Address(ESP, stack_offset)); in GetInvokeStaticOrDirectExtraParameter()
5778 int stack_offset = ensure_scratch.IsSpilled() ? kX86WordSize : 0; in MoveMemoryToMemory32() local
5779 __ movl(temp_reg, Address(ESP, src + stack_offset)); in MoveMemoryToMemory32()
5780 __ movl(Address(ESP, dst + stack_offset), temp_reg); in MoveMemoryToMemory32()
5787 int stack_offset = ensure_scratch.IsSpilled() ? kX86WordSize : 0; in MoveMemoryToMemory64() local
5788 __ movl(temp_reg, Address(ESP, src + stack_offset)); in MoveMemoryToMemory64()
5789 __ movl(Address(ESP, dst + stack_offset), temp_reg); in MoveMemoryToMemory64()
5790 __ movl(temp_reg, Address(ESP, src + stack_offset + kX86WordSize)); in MoveMemoryToMemory64()
5791 __ movl(Address(ESP, dst + stack_offset + kX86WordSize), temp_reg); in MoveMemoryToMemory64()
[all …]
Dcode_generator_arm64.cc214 size_t stack_offset = codegen->GetFirstRegisterSlotInSlowPath(); in SaveLiveRegisters() local
219 locations->SetStackBit(stack_offset / kVRegSize); in SaveLiveRegisters()
221 DCHECK_LT(stack_offset, codegen->GetFrameSize() - codegen->FrameEntrySpillSize()); in SaveLiveRegisters()
223 saved_core_stack_offsets_[i] = stack_offset; in SaveLiveRegisters()
224 stack_offset += kXRegSizeInBytes; in SaveLiveRegisters()
229 DCHECK_LT(stack_offset, codegen->GetFrameSize() - codegen->FrameEntrySpillSize()); in SaveLiveRegisters()
231 saved_fpu_stack_offsets_[i] = stack_offset; in SaveLiveRegisters()
232 stack_offset += kDRegSizeInBytes; in SaveLiveRegisters()
1401 size_t stack_offset = calling_convention.GetStackOffsetOf(stack_index_); in GetNextLocation() local
1402 next_location = Primitive::Is64BitType(type) ? Location::DoubleStackSlot(stack_offset) in GetNextLocation()
[all …]
Dcode_generator_mips.cc92 size_t stack_offset = calling_convention.GetStackOffsetOf(stack_index_); in GetNextLocation() local
93 next_location = Location::StackSlot(stack_offset); in GetNextLocation()
112 size_t stack_offset = calling_convention.GetStackOffsetOf(stack_index_); in GetNextLocation() local
113 next_location = Location::DoubleStackSlot(stack_offset); in GetNextLocation()
128 size_t stack_offset = calling_convention.GetStackOffsetOf(stack_index_); in GetNextLocation() local
129 next_location = Primitive::Is64BitType(type) ? Location::DoubleStackSlot(stack_offset) in GetNextLocation()
130 : Location::StackSlot(stack_offset); in GetNextLocation()
1216 int stack_offset = ensure_scratch.IsSpilled() ? kMipsWordSize : 0; in Exchange() local
1217 for (int i = 0; i <= (double_slot ? 1 : 0); i++, stack_offset += kMipsWordSize) { in Exchange()
1221 index1 + stack_offset); in Exchange()
[all …]
Dcode_generator_x86_64.cc5343 int stack_offset = ensure_scratch.IsSpilled() ? kX86_64WordSize : 0; in Exchange32() local
5344 __ movl(CpuRegister(TMP), Address(CpuRegister(RSP), mem1 + stack_offset)); in Exchange32()
5346 Address(CpuRegister(RSP), mem2 + stack_offset)); in Exchange32()
5347 __ movl(Address(CpuRegister(RSP), mem2 + stack_offset), CpuRegister(TMP)); in Exchange32()
5348 __ movl(Address(CpuRegister(RSP), mem1 + stack_offset), in Exchange32()
5368 int stack_offset = ensure_scratch.IsSpilled() ? kX86_64WordSize : 0; in Exchange64() local
5369 __ movq(CpuRegister(TMP), Address(CpuRegister(RSP), mem1 + stack_offset)); in Exchange64()
5371 Address(CpuRegister(RSP), mem2 + stack_offset)); in Exchange64()
5372 __ movq(Address(CpuRegister(RSP), mem2 + stack_offset), CpuRegister(TMP)); in Exchange64()
5373 __ movq(Address(CpuRegister(RSP), mem1 + stack_offset), in Exchange64()
Dcode_generator_mips64.cc86 size_t stack_offset = calling_convention.GetStackOffsetOf(stack_index_); in GetNextLocation() local
87 next_location = Primitive::Is64BitType(type) ? Location::DoubleStackSlot(stack_offset) in GetNextLocation()
88 : Location::StackSlot(stack_offset); in GetNextLocation()
1047 int stack_offset = ensure_scratch.IsSpilled() ? kMips64DoublewordSize : 0; in Exchange() local
1051 index1 + stack_offset); in Exchange()
1055 index2 + stack_offset); in Exchange()
1059 index2 + stack_offset); in Exchange()
1060 __ StoreToOffset(store_type, TMP, SP, index1 + stack_offset); in Exchange()
/art/compiler/utils/mips64/
Dassembler_mips64.cc2777 int stack_offset = frame_size - kFramePointerSize; in BuildFrame() local
2778 StoreToOffset(kStoreDoubleword, RA, SP, stack_offset); in BuildFrame()
2779 cfi_.RelOffset(DWARFReg(RA), stack_offset); in BuildFrame()
2781 stack_offset -= kFramePointerSize; in BuildFrame()
2783 StoreToOffset(kStoreDoubleword, reg, SP, stack_offset); in BuildFrame()
2784 cfi_.RelOffset(DWARFReg(reg), stack_offset); in BuildFrame()
2818 int stack_offset = frame_size - (callee_save_regs.size() * kFramePointerSize) - kFramePointerSize; in RemoveFrame() local
2821 LoadFromOffset(kLoadDoubleword, reg, SP, stack_offset); in RemoveFrame()
2823 stack_offset += kFramePointerSize; in RemoveFrame()
2825 LoadFromOffset(kLoadDoubleword, RA, SP, stack_offset); in RemoveFrame()
/art/compiler/utils/mips/
Dassembler_mips.cc3319 int stack_offset = frame_size - kFramePointerSize; in BuildFrame() local
3320 StoreToOffset(kStoreWord, RA, SP, stack_offset); in BuildFrame()
3321 cfi_.RelOffset(DWARFReg(RA), stack_offset); in BuildFrame()
3323 stack_offset -= kFramePointerSize; in BuildFrame()
3325 StoreToOffset(kStoreWord, reg, SP, stack_offset); in BuildFrame()
3326 cfi_.RelOffset(DWARFReg(reg), stack_offset); in BuildFrame()
3359 int stack_offset = frame_size - (callee_save_regs.size() * kFramePointerSize) - kFramePointerSize; in RemoveFrame() local
3362 LoadFromOffset(kLoadWord, reg, SP, stack_offset); in RemoveFrame()
3364 stack_offset += kFramePointerSize; in RemoveFrame()
3366 LoadFromOffset(kLoadWord, RA, SP, stack_offset); in RemoveFrame()
/art/runtime/
Dthread.cc3320 const size_t stack_offset = stack_index * kFrameSlotSize; in VisitQuickFramePrecise() local
3321 FindWithType(stack_offset, in VisitQuickFramePrecise()