/art/compiler/optimizing/ |
D | locations.h | 247 static uintptr_t EncodeStackIndex(intptr_t stack_index) { in EncodeStackIndex() argument 248 DCHECK(-kStackIndexBias <= stack_index); in EncodeStackIndex() 249 DCHECK(stack_index < kStackIndexBias); in EncodeStackIndex() 250 return static_cast<uintptr_t>(kStackIndexBias + stack_index); in EncodeStackIndex() 253 static Location StackSlot(intptr_t stack_index) { in StackSlot() argument 254 uintptr_t payload = EncodeStackIndex(stack_index); in StackSlot() 257 DCHECK_EQ(loc.GetStackIndex(), stack_index); in StackSlot() 265 static Location DoubleStackSlot(intptr_t stack_index) { in DoubleStackSlot() argument 266 uintptr_t payload = EncodeStackIndex(stack_index); in DoubleStackSlot() 269 DCHECK_EQ(loc.GetStackIndex(), stack_index); in DoubleStackSlot() [all …]
|
D | code_generator_x86_64.h | 400 size_t SaveCoreRegister(size_t stack_index, uint32_t reg_id) override; 401 size_t RestoreCoreRegister(size_t stack_index, uint32_t reg_id) override; 402 size_t SaveFloatingPointRegister(size_t stack_index, uint32_t reg_id) override; 403 size_t RestoreFloatingPointRegister(size_t stack_index, uint32_t reg_id) override;
|
D | code_generator_x86.h | 422 size_t SaveCoreRegister(size_t stack_index, uint32_t reg_id) override; 423 size_t RestoreCoreRegister(size_t stack_index, uint32_t reg_id) override; 424 size_t SaveFloatingPointRegister(size_t stack_index, uint32_t reg_id) override; 425 size_t RestoreFloatingPointRegister(size_t stack_index, uint32_t reg_id) override;
|
D | code_generator_riscv64.h | 488 size_t SaveCoreRegister(size_t stack_index, uint32_t reg_id) override; 489 size_t RestoreCoreRegister(size_t stack_index, uint32_t reg_id) override; 490 size_t SaveFloatingPointRegister(size_t stack_index, uint32_t reg_id) override; 491 size_t RestoreFloatingPointRegister(size_t stack_index, uint32_t reg_id) override;
|
D | code_generator.h | 276 virtual size_t SaveCoreRegister(size_t stack_index, uint32_t reg_id) = 0; 278 virtual size_t RestoreCoreRegister(size_t stack_index, uint32_t reg_id) = 0; 280 virtual size_t SaveFloatingPointRegister(size_t stack_index, uint32_t reg_id) = 0; 281 virtual size_t RestoreFloatingPointRegister(size_t stack_index, uint32_t reg_id) = 0;
|
D | code_generator_arm_vixl.h | 547 size_t SaveCoreRegister(size_t stack_index, uint32_t reg_id) override; 548 size_t RestoreCoreRegister(size_t stack_index, uint32_t reg_id) override; 549 size_t SaveFloatingPointRegister(size_t stack_index, uint32_t reg_id) override; 550 size_t RestoreFloatingPointRegister(size_t stack_index, uint32_t reg_id) override;
|
D | code_generator_arm64.h | 684 size_t SaveCoreRegister(size_t stack_index, uint32_t reg_id) override; 685 size_t RestoreCoreRegister(size_t stack_index, uint32_t reg_id) override; 686 size_t SaveFloatingPointRegister(size_t stack_index, uint32_t reg_id) override; 687 size_t RestoreFloatingPointRegister(size_t stack_index, uint32_t reg_id) override;
|
D | code_generator_x86_64.cc | 1518 size_t CodeGeneratorX86_64::SaveCoreRegister(size_t stack_index, uint32_t reg_id) { in SaveCoreRegister() argument 1519 __ movq(Address(CpuRegister(RSP), stack_index), CpuRegister(reg_id)); in SaveCoreRegister() 1523 size_t CodeGeneratorX86_64::RestoreCoreRegister(size_t stack_index, uint32_t reg_id) { in RestoreCoreRegister() argument 1524 __ movq(CpuRegister(reg_id), Address(CpuRegister(RSP), stack_index)); in RestoreCoreRegister() 1528 size_t CodeGeneratorX86_64::SaveFloatingPointRegister(size_t stack_index, uint32_t reg_id) { in SaveFloatingPointRegister() argument 1530 __ movups(Address(CpuRegister(RSP), stack_index), XmmRegister(reg_id)); in SaveFloatingPointRegister() 1532 __ movsd(Address(CpuRegister(RSP), stack_index), XmmRegister(reg_id)); in SaveFloatingPointRegister() 1537 size_t CodeGeneratorX86_64::RestoreFloatingPointRegister(size_t stack_index, uint32_t reg_id) { in RestoreFloatingPointRegister() argument 1539 __ movups(XmmRegister(reg_id), Address(CpuRegister(RSP), stack_index)); in RestoreFloatingPointRegister() 1541 __ movsd(XmmRegister(reg_id), Address(CpuRegister(RSP), stack_index)); in RestoreFloatingPointRegister()
|
D | code_generator_arm_vixl.cc | 1097 size_t CodeGeneratorARMVIXL::SaveCoreRegister([[maybe_unused]] size_t stack_index, in SaveCoreRegister() argument 1104 size_t CodeGeneratorARMVIXL::RestoreCoreRegister([[maybe_unused]] size_t stack_index, in RestoreCoreRegister() argument 1110 size_t CodeGeneratorARMVIXL::SaveFloatingPointRegister([[maybe_unused]] size_t stack_index, in SaveFloatingPointRegister() argument 1116 size_t CodeGeneratorARMVIXL::RestoreFloatingPointRegister([[maybe_unused]] size_t stack_index, in RestoreFloatingPointRegister() argument 2568 uint32_t stack_index = stack_index_++; in GetNextLocation() local 2572 return Location::StackSlot(calling_convention.GetStackOffsetOf(stack_index)); in GetNextLocation() 2578 uint32_t stack_index = stack_index_; in GetNextLocation() local 2595 return Location::DoubleStackSlot(calling_convention.GetStackOffsetOf(stack_index)); in GetNextLocation() 2600 uint32_t stack_index = stack_index_++; in GetNextLocation() local 2607 return Location::StackSlot(calling_convention.GetStackOffsetOf(stack_index)); in GetNextLocation() [all …]
|
D | code_generator_riscv64.cc | 6313 size_t CodeGeneratorRISCV64::SaveCoreRegister(size_t stack_index, uint32_t reg_id) { in SaveCoreRegister() argument 6314 __ Stored(XRegister(reg_id), SP, stack_index); in SaveCoreRegister() 6318 size_t CodeGeneratorRISCV64::RestoreCoreRegister(size_t stack_index, uint32_t reg_id) { in RestoreCoreRegister() argument 6319 __ Loadd(XRegister(reg_id), SP, stack_index); in RestoreCoreRegister() 6323 size_t CodeGeneratorRISCV64::SaveFloatingPointRegister(size_t stack_index, uint32_t reg_id) { in SaveFloatingPointRegister() argument 6329 __ FStored(FRegister(reg_id), SP, stack_index); in SaveFloatingPointRegister() 6333 size_t CodeGeneratorRISCV64::RestoreFloatingPointRegister(size_t stack_index, uint32_t reg_id) { in RestoreFloatingPointRegister() argument 6339 __ FLoadd(FRegister(reg_id), SP, stack_index); in RestoreFloatingPointRegister()
|
D | code_generator_x86.cc | 1078 size_t CodeGeneratorX86::SaveCoreRegister(size_t stack_index, uint32_t reg_id) { in SaveCoreRegister() argument 1079 __ movl(Address(ESP, stack_index), static_cast<Register>(reg_id)); in SaveCoreRegister() 1083 size_t CodeGeneratorX86::RestoreCoreRegister(size_t stack_index, uint32_t reg_id) { in RestoreCoreRegister() argument 1084 __ movl(static_cast<Register>(reg_id), Address(ESP, stack_index)); in RestoreCoreRegister() 1088 size_t CodeGeneratorX86::SaveFloatingPointRegister(size_t stack_index, uint32_t reg_id) { in SaveFloatingPointRegister() argument 1090 __ movups(Address(ESP, stack_index), XmmRegister(reg_id)); in SaveFloatingPointRegister() 1092 __ movsd(Address(ESP, stack_index), XmmRegister(reg_id)); in SaveFloatingPointRegister() 1097 size_t CodeGeneratorX86::RestoreFloatingPointRegister(size_t stack_index, uint32_t reg_id) { in RestoreFloatingPointRegister() argument 1099 __ movups(XmmRegister(reg_id), Address(ESP, stack_index)); in RestoreFloatingPointRegister() 1101 __ movsd(XmmRegister(reg_id), Address(ESP, stack_index)); in RestoreFloatingPointRegister()
|
D | code_generator_arm64.cc | 1603 size_t CodeGeneratorARM64::SaveCoreRegister(size_t stack_index, uint32_t reg_id) { in SaveCoreRegister() argument 1605 __ Str(reg, MemOperand(sp, stack_index)); in SaveCoreRegister() 1609 size_t CodeGeneratorARM64::RestoreCoreRegister(size_t stack_index, uint32_t reg_id) { in RestoreCoreRegister() argument 1611 __ Ldr(reg, MemOperand(sp, stack_index)); in RestoreCoreRegister() 1615 size_t CodeGeneratorARM64::SaveFloatingPointRegister([[maybe_unused]] size_t stack_index, in SaveFloatingPointRegister() argument 1622 size_t CodeGeneratorARM64::RestoreFloatingPointRegister([[maybe_unused]] size_t stack_index, in RestoreFloatingPointRegister() argument
|
/art/runtime/interpreter/mterp/arm64ng/ |
D | main.S | 1064 .macro LOOP_RANGE_OVER_SHORTY_LOADING_FPS dreg, sreg, shorty, arg_index, stack_index, finished 1073 add \stack_index, \stack_index, #1 1078 add \stack_index, \stack_index, #1 1083 add \stack_index, \stack_index, #2 1088 add \stack_index, \stack_index, #1 1101 .macro LOOP_RANGE_OVER_FPs shorty, arg_index, stack_index, finished 1110 add \stack_index, \stack_index, #1 1115 add \stack_index, \stack_index, #1 1119 add ip2, sp, \stack_index, uxtw #2 1122 add \stack_index, \stack_index, #2 [all …]
|
/art/runtime/interpreter/mterp/armng/ |
D | main.S | 1159 .macro LOOP_RANGE_OVER_SHORTY_LOADING_GPRS reg32, shorty, arg_index, stack_index, finished, if_long… 1172 add \stack_index, \stack_index, #1 1181 add \stack_index, \stack_index, #1 1184 add \stack_index, \stack_index, #1 1189 add \stack_index, \stack_index, #1 1193 add \stack_index, \stack_index, #2 1201 .macro LOOP_RANGE_OVER_INTs shorty, arg_index, stack_index, finished 1213 str ip, [sp, \stack_index, lsl #2] 1215 add \stack_index, \stack_index, #1 1219 str ip, [sp, \stack_index, lsl #2] [all …]
|
/art/runtime/interpreter/mterp/x86_64ng/ |
D | main.S | 534 .macro LOOP_RANGE_OVER_SHORTY_LOADING_XMMS xmm_reg, shorty, arg_index, stack_index, finished 545 addq MACRO_LITERAL(1), REG_VAR(stack_index) 550 addq MACRO_LITERAL(1), REG_VAR(stack_index) 555 addq MACRO_LITERAL(2), REG_VAR(stack_index) 560 addq MACRO_LITERAL(1), REG_VAR(stack_index) 573 .macro LOOP_RANGE_OVER_FPs shorty, arg_index, stack_index, finished 584 addq MACRO_LITERAL(1), REG_VAR(stack_index) 589 addq MACRO_LITERAL(1), REG_VAR(stack_index) 593 movq %rax, 8(%rsp, REG_VAR(stack_index), 4) 595 addq MACRO_LITERAL(2), REG_VAR(stack_index) [all …]
|
/art/runtime/interpreter/mterp/x86ng/ |
D | main.S | 673 .macro LOOP_RANGE_OVER_SHORTY_LOADING_XMMS xmm_reg, shorty, arg_index, stack_index, finished 684 addl MACRO_LITERAL(1), REG_VAR(stack_index) 689 addl MACRO_LITERAL(1), REG_VAR(stack_index) 694 addl MACRO_LITERAL(2), REG_VAR(stack_index) 699 add MACRO_LITERAL(1), REG_VAR(stack_index) 712 .macro LOOP_RANGE_OVER_FPs shorty, arg_index, stack_index, finished 723 addl MACRO_LITERAL(1), REG_VAR(stack_index) 728 addl MACRO_LITERAL(1), REG_VAR(stack_index) 732 movq %xmm4, 4(%esp, REG_VAR(stack_index), 4) 734 addl MACRO_LITERAL(2), REG_VAR(stack_index) [all …]
|
/art/runtime/interpreter/mterp/ |
D | nterp.cc | 191 uint32_t stack_index, in NterpSetupArm32Fprs() argument 208 stack_index += 2; in NterpSetupArm32Fprs() 210 stack_args[stack_index++] = registers[dex_register++]; in NterpSetupArm32Fprs() 211 stack_args[stack_index++] = registers[dex_register++]; in NterpSetupArm32Fprs() 221 stack_index++; in NterpSetupArm32Fprs() 223 stack_args[stack_index++] = registers[dex_register++]; in NterpSetupArm32Fprs() 228 stack_index += 2; in NterpSetupArm32Fprs() 233 stack_index++; in NterpSetupArm32Fprs()
|
/art/runtime/ |
D | thread.cc | 4322 [[maybe_unused]] size_t stack_index, in VisitQuickFrameNonPrecise() 4374 void VisitStack(mirror::Object** ref, size_t stack_index, const StackVisitor* stack_visitor) in VisitQuickFramePrecise() 4376 const size_t stack_offset = stack_index * kFrameSlotSize; in VisitQuickFramePrecise()
|