/art/compiler/utils/arm64/ |
D | assembler_arm64.h | 89 void BuildFrame(size_t frame_size, ManagedRegister method_reg, 90 const std::vector<ManagedRegister>& callee_save_regs, 94 void RemoveFrame(size_t frame_size, const std::vector<ManagedRegister>& callee_save_regs) 101 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 102 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 103 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 104 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 105 void StoreImmediateToThread64(ThreadOffset<8> dest, uint32_t imm, ManagedRegister scratch) 108 ManagedRegister scratch) OVERRIDE; 110 void StoreSpanning(FrameOffset dest, ManagedRegister src, FrameOffset in_off, [all …]
|
D | assembler_arm64.cc | 53 void Arm64Assembler::GetCurrentThread(ManagedRegister tr) { in GetCurrentThread() 57 void Arm64Assembler::GetCurrentThread(FrameOffset offset, ManagedRegister /* scratch */) { in GetCurrentThread() argument 125 void Arm64Assembler::Store(FrameOffset offs, ManagedRegister m_src, size_t size) { in Store() 143 void Arm64Assembler::StoreRef(FrameOffset offs, ManagedRegister m_src) { in StoreRef() 150 void Arm64Assembler::StoreRawPtr(FrameOffset offs, ManagedRegister m_src) { in StoreRawPtr() 157 ManagedRegister m_scratch) { in StoreImmediateToFrame() 166 ManagedRegister m_scratch) { in StoreImmediateToThread64() 175 ManagedRegister m_scratch) { in StoreStackOffsetToThread64() 189 void Arm64Assembler::StoreSpanning(FrameOffset dest_off, ManagedRegister m_source, in StoreSpanning() 190 FrameOffset in_off, ManagedRegister m_scratch) { in StoreSpanning() [all …]
|
/art/compiler/utils/ |
D | managed_register.h | 45 class ManagedRegister { 50 ManagedRegister(const ManagedRegister& other) : id_(other.id_) { } in ManagedRegister() function 52 ManagedRegister& operator=(const ManagedRegister& other) { 65 bool Equals(const ManagedRegister& other) const { in Equals() 73 static ManagedRegister NoRegister() { in NoRegister() 74 return ManagedRegister(); in NoRegister() 78 explicit ManagedRegister(int reg_id) : id_(reg_id) { } in ManagedRegister() function 83 ManagedRegister() : id_(kNoRegister) { } in ManagedRegister() function 88 class ManagedRegisterSpill : public ManagedRegister { 92 ManagedRegisterSpill(const ManagedRegister& other, uint32_t size, uint32_t spill_offset) in ManagedRegisterSpill() [all …]
|
D | assembler.h | 394 virtual void BuildFrame(size_t frame_size, ManagedRegister method_reg, 395 const std::vector<ManagedRegister>& callee_save_regs, 400 const std::vector<ManagedRegister>& callee_save_regs) = 0; 406 virtual void Store(FrameOffset offs, ManagedRegister src, size_t size) = 0; 407 virtual void StoreRef(FrameOffset dest, ManagedRegister src) = 0; 408 virtual void StoreRawPtr(FrameOffset dest, ManagedRegister src) = 0; 411 ManagedRegister scratch) = 0; 414 ManagedRegister scratch); 416 ManagedRegister scratch); 420 ManagedRegister scratch); [all …]
|
D | assembler.cc | 136 ManagedRegister scratch ATTRIBUTE_UNUSED) { in StoreImmediateToThread32() 142 ManagedRegister scratch ATTRIBUTE_UNUSED) { in StoreImmediateToThread64() 148 ManagedRegister scratch ATTRIBUTE_UNUSED) { in StoreStackOffsetToThread32() 154 ManagedRegister scratch ATTRIBUTE_UNUSED) { in StoreStackOffsetToThread64() 166 void Assembler::LoadFromThread32(ManagedRegister dest ATTRIBUTE_UNUSED, in LoadFromThread32() 172 void Assembler::LoadFromThread64(ManagedRegister dest ATTRIBUTE_UNUSED, in LoadFromThread64() 178 void Assembler::LoadRawPtrFromThread32(ManagedRegister dest ATTRIBUTE_UNUSED, in LoadRawPtrFromThread32() 183 void Assembler::LoadRawPtrFromThread64(ManagedRegister dest ATTRIBUTE_UNUSED, in LoadRawPtrFromThread64() 190 ManagedRegister scratch ATTRIBUTE_UNUSED) { in CopyRawPtrFromThread32() 196 ManagedRegister scratch ATTRIBUTE_UNUSED) { in CopyRawPtrFromThread64() [all …]
|
/art/compiler/jni/quick/x86/ |
D | calling_convention_x86.cc | 28 ManagedRegister X86ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 32 ManagedRegister X86JniCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 36 ManagedRegister X86JniCallingConvention::ReturnScratchRegister() const { in ReturnScratchRegister() 37 return ManagedRegister::NoRegister(); // No free regs, so assembler uses push/pop in ReturnScratchRegister() 40 static ManagedRegister ReturnRegisterForShorty(const char* shorty, bool jni) { in ReturnRegisterForShorty() 50 return ManagedRegister::NoRegister(); in ReturnRegisterForShorty() 56 ManagedRegister X86ManagedRuntimeCallingConvention::ReturnRegister() { in ReturnRegister() 60 ManagedRegister X86JniCallingConvention::ReturnRegister() { in ReturnRegister() 64 ManagedRegister X86JniCallingConvention::IntReturnRegister() { in IntReturnRegister() 70 ManagedRegister X86ManagedRuntimeCallingConvention::MethodRegister() { in MethodRegister() [all …]
|
D | calling_convention_x86.h | 35 ManagedRegister ReturnRegister() OVERRIDE; 36 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 38 ManagedRegister MethodRegister() OVERRIDE; 41 ManagedRegister CurrentParamRegister() OVERRIDE; 47 ManagedRegister CurrentParamHighLongRegister(); 57 ManagedRegister ReturnRegister() OVERRIDE; 58 ManagedRegister IntReturnRegister() OVERRIDE; 59 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 63 const std::vector<ManagedRegister>& CalleeSaveRegisters() const OVERRIDE { in CalleeSaveRegisters() 66 ManagedRegister ReturnScratchRegister() const OVERRIDE; [all …]
|
/art/compiler/utils/mips/ |
D | assembler_mips.h | 139 void EmitLoad(ManagedRegister m_dst, Register src_register, int32_t src_offset, size_t size); 158 void BuildFrame(size_t frame_size, ManagedRegister method_reg, 159 const std::vector<ManagedRegister>& callee_save_regs, 163 void RemoveFrame(size_t frame_size, const std::vector<ManagedRegister>& callee_save_regs) 170 void Store(FrameOffset offs, ManagedRegister msrc, size_t size) OVERRIDE; 171 void StoreRef(FrameOffset dest, ManagedRegister msrc) OVERRIDE; 172 void StoreRawPtr(FrameOffset dest, ManagedRegister msrc) OVERRIDE; 174 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister mscratch) OVERRIDE; 176 void StoreImmediateToThread32(ThreadOffset<4> dest, uint32_t imm, ManagedRegister mscratch) 180 ManagedRegister mscratch) OVERRIDE; [all …]
|
D | assembler_mips.cc | 458 void MipsAssembler::EmitLoad(ManagedRegister m_dst, Register src_register, int32_t src_offset, in EmitLoad() 546 void MipsAssembler::BuildFrame(size_t frame_size, ManagedRegister method_reg, in BuildFrame() 547 const std::vector<ManagedRegister>& callee_save_regs, in BuildFrame() 576 const std::vector<ManagedRegister>& callee_save_regs) { in RemoveFrame() 614 void MipsAssembler::Store(FrameOffset dest, ManagedRegister msrc, size_t size) { in Store() 634 void MipsAssembler::StoreRef(FrameOffset dest, ManagedRegister msrc) { in StoreRef() 640 void MipsAssembler::StoreRawPtr(FrameOffset dest, ManagedRegister msrc) { in StoreRawPtr() 647 ManagedRegister mscratch) { in StoreImmediateToFrame() 655 ManagedRegister mscratch) { in StoreImmediateToThread32() 664 ManagedRegister mscratch) { in StoreStackOffsetToThread32() [all …]
|
/art/compiler/jni/quick/mips64/ |
D | calling_convention_mips64.h | 33 ManagedRegister ReturnRegister() OVERRIDE; 34 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 36 ManagedRegister MethodRegister() OVERRIDE; 39 ManagedRegister CurrentParamRegister() OVERRIDE; 54 ManagedRegister ReturnRegister() OVERRIDE; 55 ManagedRegister IntReturnRegister() OVERRIDE; 56 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 60 const std::vector<ManagedRegister>& CalleeSaveRegisters() const OVERRIDE { in CalleeSaveRegisters() 63 ManagedRegister ReturnScratchRegister() const OVERRIDE; 70 ManagedRegister CurrentParamRegister() OVERRIDE; [all …]
|
D | calling_convention_mips64.cc | 35 ManagedRegister Mips64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 39 ManagedRegister Mips64JniCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 43 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { in ReturnRegisterForShorty() 53 ManagedRegister Mips64ManagedRuntimeCallingConvention::ReturnRegister() { in ReturnRegister() 57 ManagedRegister Mips64JniCallingConvention::ReturnRegister() { in ReturnRegister() 61 ManagedRegister Mips64JniCallingConvention::IntReturnRegister() { in IntReturnRegister() 67 ManagedRegister Mips64ManagedRuntimeCallingConvention::MethodRegister() { in MethodRegister() 79 ManagedRegister Mips64ManagedRuntimeCallingConvention::CurrentParamRegister() { in CurrentParamRegister() 81 return ManagedRegister::NoRegister(); in CurrentParamRegister() 146 ManagedRegister Mips64JniCallingConvention::ReturnScratchRegister() const { in ReturnScratchRegister() [all …]
|
/art/compiler/jni/quick/arm64/ |
D | calling_convention_arm64.h | 33 ManagedRegister ReturnRegister() OVERRIDE; 34 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 36 ManagedRegister MethodRegister() OVERRIDE; 39 ManagedRegister CurrentParamRegister() OVERRIDE; 54 ManagedRegister ReturnRegister() OVERRIDE; 55 ManagedRegister IntReturnRegister() OVERRIDE; 56 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 60 const std::vector<ManagedRegister>& CalleeSaveRegisters() const OVERRIDE { in CalleeSaveRegisters() 63 ManagedRegister ReturnScratchRegister() const OVERRIDE; 68 ManagedRegister CurrentParamRegister() OVERRIDE; [all …]
|
D | calling_convention_arm64.cc | 46 ManagedRegister Arm64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 50 ManagedRegister Arm64JniCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 54 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { in ReturnRegisterForShorty() 68 ManagedRegister Arm64ManagedRuntimeCallingConvention::ReturnRegister() { in ReturnRegister() 72 ManagedRegister Arm64JniCallingConvention::ReturnRegister() { in ReturnRegister() 76 ManagedRegister Arm64JniCallingConvention::IntReturnRegister() { in IntReturnRegister() 82 ManagedRegister Arm64ManagedRuntimeCallingConvention::MethodRegister() { in MethodRegister() 94 ManagedRegister Arm64ManagedRuntimeCallingConvention::CurrentParamRegister() { in CurrentParamRegister() 96 return ManagedRegister::NoRegister(); in CurrentParamRegister() 129 entry_spills_.push_back(ManagedRegister::NoRegister(), 4); in EntrySpills() [all …]
|
/art/compiler/jni/quick/arm/ |
D | calling_convention_arm.h | 33 ManagedRegister ReturnRegister() OVERRIDE; 34 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 36 ManagedRegister MethodRegister() OVERRIDE; 39 ManagedRegister CurrentParamRegister() OVERRIDE; 54 ManagedRegister ReturnRegister() OVERRIDE; 55 ManagedRegister IntReturnRegister() OVERRIDE; 56 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 61 const std::vector<ManagedRegister>& CalleeSaveRegisters() const OVERRIDE { in CalleeSaveRegisters() 64 ManagedRegister ReturnScratchRegister() const OVERRIDE; 69 ManagedRegister CurrentParamRegister() OVERRIDE; [all …]
|
D | calling_convention_arm.cc | 47 ManagedRegister ArmManagedRuntimeCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 51 ManagedRegister ArmJniCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 55 ManagedRegister ArmManagedRuntimeCallingConvention::ReturnRegister() { in ReturnRegister() 82 ManagedRegister ArmJniCallingConvention::ReturnRegister() { in ReturnRegister() 94 ManagedRegister ArmJniCallingConvention::IntReturnRegister() { in IntReturnRegister() 100 ManagedRegister ArmManagedRuntimeCallingConvention::MethodRegister() { in MethodRegister() 112 ManagedRegister ArmManagedRuntimeCallingConvention::CurrentParamRegister() { in CurrentParamRegister() 114 return ManagedRegister::NoRegister(); in CurrentParamRegister() 158 entry_spills_.push_back(ManagedRegister::NoRegister(), 8); in EntrySpills() 169 entry_spills_.push_back(ManagedRegister::NoRegister(), 4); in EntrySpills() [all …]
|
/art/compiler/jni/quick/x86_64/ |
D | calling_convention_x86_64.h | 34 ManagedRegister ReturnRegister() OVERRIDE; 35 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 37 ManagedRegister MethodRegister() OVERRIDE; 40 ManagedRegister CurrentParamRegister() OVERRIDE; 53 ManagedRegister ReturnRegister() OVERRIDE; 54 ManagedRegister IntReturnRegister() OVERRIDE; 55 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 59 const std::vector<ManagedRegister>& CalleeSaveRegisters() const OVERRIDE { in CalleeSaveRegisters() 62 ManagedRegister ReturnScratchRegister() const OVERRIDE; 67 ManagedRegister CurrentParamRegister() OVERRIDE; [all …]
|
D | calling_convention_x86_64.cc | 29 ManagedRegister X86_64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 33 ManagedRegister X86_64JniCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 37 ManagedRegister X86_64JniCallingConvention::ReturnScratchRegister() const { in ReturnScratchRegister() 38 return ManagedRegister::NoRegister(); // No free regs, so assembler uses push/pop in ReturnScratchRegister() 41 static ManagedRegister ReturnRegisterForShorty(const char* shorty, bool jni) { in ReturnRegisterForShorty() 48 return ManagedRegister::NoRegister(); in ReturnRegisterForShorty() 54 ManagedRegister X86_64ManagedRuntimeCallingConvention::ReturnRegister() { in ReturnRegister() 58 ManagedRegister X86_64JniCallingConvention::ReturnRegister() { in ReturnRegister() 62 ManagedRegister X86_64JniCallingConvention::IntReturnRegister() { in IntReturnRegister() 68 ManagedRegister X86_64ManagedRuntimeCallingConvention::MethodRegister() { in MethodRegister() [all …]
|
/art/compiler/jni/quick/mips/ |
D | calling_convention_mips.h | 33 ManagedRegister ReturnRegister() OVERRIDE; 34 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 36 ManagedRegister MethodRegister() OVERRIDE; 39 ManagedRegister CurrentParamRegister() OVERRIDE; 54 ManagedRegister ReturnRegister() OVERRIDE; 55 ManagedRegister IntReturnRegister() OVERRIDE; 56 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 61 const std::vector<ManagedRegister>& CalleeSaveRegisters() const OVERRIDE { in CalleeSaveRegisters() 64 ManagedRegister ReturnScratchRegister() const OVERRIDE; 71 ManagedRegister CurrentParamRegister() OVERRIDE; [all …]
|
D | calling_convention_mips.cc | 27 ManagedRegister MipsManagedRuntimeCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 31 ManagedRegister MipsJniCallingConvention::InterproceduralScratchRegister() { in InterproceduralScratchRegister() 35 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { in ReturnRegisterForShorty() 49 ManagedRegister MipsManagedRuntimeCallingConvention::ReturnRegister() { in ReturnRegister() 53 ManagedRegister MipsJniCallingConvention::ReturnRegister() { in ReturnRegister() 57 ManagedRegister MipsJniCallingConvention::IntReturnRegister() { in IntReturnRegister() 63 ManagedRegister MipsManagedRuntimeCallingConvention::MethodRegister() { in MethodRegister() 75 ManagedRegister MipsManagedRuntimeCallingConvention::CurrentParamRegister() { in CurrentParamRegister() 77 return ManagedRegister::NoRegister(); in CurrentParamRegister() 145 ManagedRegister MipsJniCallingConvention::ReturnScratchRegister() const { in ReturnScratchRegister() [all …]
|
/art/compiler/utils/mips64/ |
D | assembler_mips64.h | 217 void EmitLoad(ManagedRegister m_dst, GpuRegister src_register, int32_t src_offset, size_t size); 231 void BuildFrame(size_t frame_size, ManagedRegister method_reg, 232 const std::vector<ManagedRegister>& callee_save_regs, 237 const std::vector<ManagedRegister>& callee_save_regs) OVERRIDE; 243 void Store(FrameOffset offs, ManagedRegister msrc, size_t size) OVERRIDE; 244 void StoreRef(FrameOffset dest, ManagedRegister msrc) OVERRIDE; 245 void StoreRawPtr(FrameOffset dest, ManagedRegister msrc) OVERRIDE; 247 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister mscratch) OVERRIDE; 250 ManagedRegister mscratch) OVERRIDE; 253 ManagedRegister mscratch) OVERRIDE; [all …]
|
/art/compiler/utils/x86/ |
D | assembler_x86.h | 507 void BuildFrame(size_t frame_size, ManagedRegister method_reg, 508 const std::vector<ManagedRegister>& callee_save_regs, 512 void RemoveFrame(size_t frame_size, const std::vector<ManagedRegister>& callee_save_regs) 519 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 520 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 521 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 523 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 525 void StoreImmediateToThread32(ThreadOffset<4> dest, uint32_t imm, ManagedRegister scratch) 529 ManagedRegister scratch) OVERRIDE; 533 void StoreSpanning(FrameOffset dest, ManagedRegister src, FrameOffset in_off, [all …]
|
/art/compiler/utils/arm/ |
D | assembler_arm.cc | 383 void ArmAssembler::BuildFrame(size_t frame_size, ManagedRegister method_reg, in BuildFrame() 384 const std::vector<ManagedRegister>& callee_save_regs, in BuildFrame() 393 for (const ManagedRegister& reg : callee_save_regs) { in BuildFrame() 439 const std::vector<ManagedRegister>& callee_save_regs) { in RemoveFrame() 446 for (const ManagedRegister& reg : callee_save_regs) { in RemoveFrame() 483 void ArmAssembler::Store(FrameOffset dest, ManagedRegister msrc, size_t size) { in Store() 503 void ArmAssembler::StoreRef(FrameOffset dest, ManagedRegister msrc) { in StoreRef() 509 void ArmAssembler::StoreRawPtr(FrameOffset dest, ManagedRegister msrc) { in StoreRawPtr() 515 void ArmAssembler::StoreSpanning(FrameOffset dest, ManagedRegister msrc, in StoreSpanning() 516 FrameOffset in_off, ManagedRegister mscratch) { in StoreSpanning() [all …]
|
D | assembler_arm.h | 662 void BuildFrame(size_t frame_size, ManagedRegister method_reg, 663 const std::vector<ManagedRegister>& callee_save_regs, 667 void RemoveFrame(size_t frame_size, const std::vector<ManagedRegister>& callee_save_regs) 674 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 675 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 676 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 678 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 680 void StoreImmediateToThread32(ThreadOffset<4> dest, uint32_t imm, ManagedRegister scratch) 684 ManagedRegister scratch) OVERRIDE; 688 void StoreSpanning(FrameOffset dest, ManagedRegister src, FrameOffset in_off, [all …]
|
/art/compiler/utils/x86_64/ |
D | assembler_x86_64.h | 635 void BuildFrame(size_t frame_size, ManagedRegister method_reg, 636 const std::vector<ManagedRegister>& callee_save_regs, 640 void RemoveFrame(size_t frame_size, const std::vector<ManagedRegister>& callee_save_regs) 647 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 648 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 649 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 651 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 653 void StoreImmediateToThread64(ThreadOffset<8> dest, uint32_t imm, ManagedRegister scratch) 657 ManagedRegister scratch) OVERRIDE; 661 void StoreSpanning(FrameOffset dest, ManagedRegister src, FrameOffset in_off, [all …]
|
/art/compiler/jni/quick/ |
D | calling_convention.h | 46 virtual ManagedRegister ReturnRegister() = 0; 48 virtual ManagedRegister InterproceduralScratchRegister() = 0; 229 virtual ManagedRegister MethodRegister() = 0; 243 virtual ManagedRegister CurrentParamRegister() = 0; 290 virtual ManagedRegister IntReturnRegister() = 0; 295 virtual const std::vector<ManagedRegister>& CalleeSaveRegisters() const = 0; 302 virtual ManagedRegister ReturnScratchRegister() const = 0; 315 virtual ManagedRegister CurrentParamRegister() = 0;
|