/art/compiler/utils/ |
managed_register.h | 45 class ManagedRegister { 47 // ManagedRegister is a value class. There exists no method to change the 50 ManagedRegister(const ManagedRegister& other) : id_(other.id_) { } 52 ManagedRegister& operator=(const ManagedRegister& other) { 65 bool Equals(const ManagedRegister& other) const { 73 static ManagedRegister NoRegister() { 74 return ManagedRegister(); 78 explicit ManagedRegister(int reg_id) : id_(reg_id) { [all...] |
assembler.h | 376 virtual void BuildFrame(size_t frame_size, ManagedRegister method_reg, 377 const std::vector<ManagedRegister>& callee_save_regs, 382 const std::vector<ManagedRegister>& callee_save_regs) = 0; 388 virtual void Store(FrameOffset offs, ManagedRegister src, size_t size) = 0; 389 virtual void StoreRef(FrameOffset dest, ManagedRegister src) = 0; 390 virtual void StoreRawPtr(FrameOffset dest, ManagedRegister src) = 0; 393 ManagedRegister scratch) = 0; 396 ManagedRegister scratch); 398 ManagedRegister scratch); 402 ManagedRegister scratch) [all...] |
assembler.cc | 167 ManagedRegister scratch ATTRIBUTE_UNUSED) { 173 ManagedRegister scratch ATTRIBUTE_UNUSED) { 179 ManagedRegister scratch ATTRIBUTE_UNUSED) { 185 ManagedRegister scratch ATTRIBUTE_UNUSED) { 197 void Assembler::LoadFromThread32(ManagedRegister dest ATTRIBUTE_UNUSED, 203 void Assembler::LoadFromThread64(ManagedRegister dest ATTRIBUTE_UNUSED, 209 void Assembler::LoadRawPtrFromThread32(ManagedRegister dest ATTRIBUTE_UNUSED, 214 void Assembler::LoadRawPtrFromThread64(ManagedRegister dest ATTRIBUTE_UNUSED, 221 ManagedRegister scratch ATTRIBUTE_UNUSED) { 227 ManagedRegister scratch ATTRIBUTE_UNUSED) [all...] |
/art/compiler/jni/quick/x86/ |
calling_convention_x86.h | 34 ManagedRegister ReturnRegister() OVERRIDE; 35 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 37 ManagedRegister MethodRegister() OVERRIDE; 40 ManagedRegister CurrentParamRegister() OVERRIDE; 46 ManagedRegister CurrentParamHighLongRegister(); 56 ManagedRegister ReturnRegister() OVERRIDE; 57 ManagedRegister IntReturnRegister() OVERRIDE; 58 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 62 const std::vector<ManagedRegister>& CalleeSaveRegisters() const OVERRIDE { 65 ManagedRegister ReturnScratchRegister() const OVERRIDE [all...] |
calling_convention_x86.cc | 28 ManagedRegister X86ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 32 ManagedRegister X86JniCallingConvention::InterproceduralScratchRegister() { 36 ManagedRegister X86JniCallingConvention::ReturnScratchRegister() const { 37 return ManagedRegister::NoRegister(); // No free regs, so assembler uses push/pop 40 static ManagedRegister ReturnRegisterForShorty(const char* shorty, bool jni) { 50 return ManagedRegister::NoRegister(); 56 ManagedRegister X86ManagedRuntimeCallingConvention::ReturnRegister() { 60 ManagedRegister X86JniCallingConvention::ReturnRegister() { 64 ManagedRegister X86JniCallingConvention::IntReturnRegister() { 70 ManagedRegister X86ManagedRuntimeCallingConvention::MethodRegister() [all...] |
/art/compiler/jni/quick/arm/ |
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 { 64 ManagedRegister ReturnScratchRegister() const OVERRIDE; 69 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_arm.cc | 47 ManagedRegister ArmManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 51 ManagedRegister ArmJniCallingConvention::InterproceduralScratchRegister() { 55 ManagedRegister ArmManagedRuntimeCallingConvention::ReturnRegister() { 82 ManagedRegister ArmJniCallingConvention::ReturnRegister() { 94 ManagedRegister ArmJniCallingConvention::IntReturnRegister() { 100 ManagedRegister ArmManagedRuntimeCallingConvention::MethodRegister() { 112 ManagedRegister ArmManagedRuntimeCallingConvention::CurrentParamRegister() { 114 return ManagedRegister::NoRegister(); 158 entry_spills_.push_back(ManagedRegister::NoRegister(), 8); 169 entry_spills_.push_back(ManagedRegister::NoRegister(), 4) [all...] |
/art/compiler/jni/quick/arm64/ |
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 { 63 ManagedRegister ReturnScratchRegister() const OVERRIDE; 68 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_arm64.cc | 46 ManagedRegister Arm64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 50 ManagedRegister Arm64JniCallingConvention::InterproceduralScratchRegister() { 54 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { 68 ManagedRegister Arm64ManagedRuntimeCallingConvention::ReturnRegister() { 72 ManagedRegister Arm64JniCallingConvention::ReturnRegister() { 76 ManagedRegister Arm64JniCallingConvention::IntReturnRegister() { 82 ManagedRegister Arm64ManagedRuntimeCallingConvention::MethodRegister() { 94 ManagedRegister Arm64ManagedRuntimeCallingConvention::CurrentParamRegister() { 96 return ManagedRegister::NoRegister(); 129 entry_spills_.push_back(ManagedRegister::NoRegister(), 4) [all...] |
/art/compiler/jni/quick/mips/ |
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 { 64 ManagedRegister ReturnScratchRegister() const OVERRIDE; 71 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_mips.cc | 31 ManagedRegister MipsManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 35 ManagedRegister MipsJniCallingConvention::InterproceduralScratchRegister() { 39 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { 53 ManagedRegister MipsManagedRuntimeCallingConvention::ReturnRegister() { 57 ManagedRegister MipsJniCallingConvention::ReturnRegister() { 61 ManagedRegister MipsJniCallingConvention::IntReturnRegister() { 67 ManagedRegister MipsManagedRuntimeCallingConvention::MethodRegister() { 79 ManagedRegister MipsManagedRuntimeCallingConvention::CurrentParamRegister() { 81 return ManagedRegister::NoRegister(); 107 entry_spills_.push_back(ManagedRegister::NoRegister(), 8) [all...] |
/art/compiler/jni/quick/mips64/ |
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 { 63 ManagedRegister ReturnScratchRegister() const OVERRIDE; 70 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_mips64.cc | 35 ManagedRegister Mips64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 39 ManagedRegister Mips64JniCallingConvention::InterproceduralScratchRegister() { 43 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { 53 ManagedRegister Mips64ManagedRuntimeCallingConvention::ReturnRegister() { 57 ManagedRegister Mips64JniCallingConvention::ReturnRegister() { 61 ManagedRegister Mips64JniCallingConvention::IntReturnRegister() { 67 ManagedRegister Mips64ManagedRuntimeCallingConvention::MethodRegister() { 79 ManagedRegister Mips64ManagedRuntimeCallingConvention::CurrentParamRegister() { 81 return ManagedRegister::NoRegister(); 147 ManagedRegister Mips64JniCallingConvention::ReturnScratchRegister() const [all...] |
/art/compiler/jni/quick/x86_64/ |
calling_convention_x86_64.h | 33 ManagedRegister ReturnRegister() OVERRIDE; 34 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 36 ManagedRegister MethodRegister() OVERRIDE; 39 ManagedRegister CurrentParamRegister() OVERRIDE; 52 ManagedRegister ReturnRegister() OVERRIDE; 53 ManagedRegister IntReturnRegister() OVERRIDE; 54 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 58 const std::vector<ManagedRegister>& CalleeSaveRegisters() const OVERRIDE { 61 ManagedRegister ReturnScratchRegister() const OVERRIDE; 66 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_x86_64.cc | 29 ManagedRegister X86_64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 33 ManagedRegister X86_64JniCallingConvention::InterproceduralScratchRegister() { 37 ManagedRegister X86_64JniCallingConvention::ReturnScratchRegister() const { 38 return ManagedRegister::NoRegister(); // No free regs, so assembler uses push/pop 41 static ManagedRegister ReturnRegisterForShorty(const char* shorty, bool jni ATTRIBUTE_UNUSED) { 47 return ManagedRegister::NoRegister(); 53 ManagedRegister X86_64ManagedRuntimeCallingConvention::ReturnRegister() { 57 ManagedRegister X86_64JniCallingConvention::ReturnRegister() { 61 ManagedRegister X86_64JniCallingConvention::IntReturnRegister() { 67 ManagedRegister X86_64ManagedRuntimeCallingConvention::MethodRegister() [all...] |
/art/compiler/utils/arm64/ |
assembler_arm64.h | 112 void BuildFrame(size_t frame_size, ManagedRegister method_reg, 113 const std::vector<ManagedRegister>& callee_save_regs, 117 void RemoveFrame(size_t frame_size, const std::vector<ManagedRegister>& callee_save_regs) 124 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 125 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 126 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 127 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 128 void StoreImmediateToThread64(ThreadOffset<8> dest, uint32_t imm, ManagedRegister scratch) 131 ManagedRegister scratch) OVERRIDE; 133 void StoreSpanning(FrameOffset dest, ManagedRegister src, FrameOffset in_off [all...] |
assembler_arm64.cc | 55 void Arm64Assembler::GetCurrentThread(ManagedRegister tr) { 59 void Arm64Assembler::GetCurrentThread(FrameOffset offset, ManagedRegister /* scratch */) { 127 void Arm64Assembler::Store(FrameOffset offs, ManagedRegister m_src, size_t size) { 145 void Arm64Assembler::StoreRef(FrameOffset offs, ManagedRegister m_src) { 152 void Arm64Assembler::StoreRawPtr(FrameOffset offs, ManagedRegister m_src) { 159 ManagedRegister m_scratch) { 168 ManagedRegister m_scratch) { 177 ManagedRegister m_scratch) { 191 void Arm64Assembler::StoreSpanning(FrameOffset dest_off, ManagedRegister m_source, 192 FrameOffset in_off, ManagedRegister m_scratch) [all...] |
/art/compiler/utils/x86/ |
assembler_x86.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 StoreImmediateToThread32(ThreadOffset<4> dest, uint32_t imm, ManagedRegister scratch) 657 ManagedRegister scratch) OVERRIDE; 661 void StoreSpanning(FrameOffset dest, ManagedRegister src, FrameOffset in_off [all...] |
/art/compiler/utils/mips64/ |
managed_register_mips64.h | 36 // An instance of class 'ManagedRegister' represents a single GPU register (enum 38 // 'ManagedRegister::NoRegister()' provides an invalid register. 39 // There is a one-to-one mapping between ManagedRegister and register id. 40 class Mips64ManagedRegister : public ManagedRegister { 99 friend class ManagedRegister; 101 explicit Mips64ManagedRegister(int reg_id) : ManagedRegister(reg_id) {} 114 inline mips64::Mips64ManagedRegister ManagedRegister::AsMips64() const {
|
assembler_mips64.h | 354 void EmitLoad(ManagedRegister m_dst, GpuRegister src_register, int32_t src_offset, size_t size); 368 void BuildFrame(size_t frame_size, ManagedRegister method_reg, 369 const std::vector<ManagedRegister>& callee_save_regs, 374 const std::vector<ManagedRegister>& callee_save_regs) OVERRIDE; 380 void Store(FrameOffset offs, ManagedRegister msrc, size_t size) OVERRIDE; 381 void StoreRef(FrameOffset dest, ManagedRegister msrc) OVERRIDE; 382 void StoreRawPtr(FrameOffset dest, ManagedRegister msrc) OVERRIDE; 384 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister mscratch) OVERRIDE; 387 ManagedRegister mscratch) OVERRIDE; 391 void StoreSpanning(FrameOffset dest, ManagedRegister msrc, FrameOffset in_off [all...] |
/art/compiler/utils/arm/ |
assembler_arm.cc | 389 void ArmAssembler::BuildFrame(size_t frame_size, ManagedRegister method_reg, 390 const std::vector<ManagedRegister>& callee_save_regs, 399 for (const ManagedRegister& reg : callee_save_regs) { 445 const std::vector<ManagedRegister>& callee_save_regs) { 452 for (const ManagedRegister& reg : callee_save_regs) { 489 void ArmAssembler::Store(FrameOffset dest, ManagedRegister msrc, size_t size) { 509 void ArmAssembler::StoreRef(FrameOffset dest, ManagedRegister msrc) { 515 void ArmAssembler::StoreRawPtr(FrameOffset dest, ManagedRegister msrc) { 521 void ArmAssembler::StoreSpanning(FrameOffset dest, ManagedRegister msrc, 522 FrameOffset in_off, ManagedRegister mscratch) [all...] |
/art/compiler/utils/mips/ |
assembler_mips.h | 387 void EmitLoad(ManagedRegister m_dst, Register src_register, int32_t src_offset, size_t size); 416 ManagedRegister method_reg, 417 const std::vector<ManagedRegister>& callee_save_regs, 421 void RemoveFrame(size_t frame_size, const std::vector<ManagedRegister>& callee_save_regs) 428 void Store(FrameOffset offs, ManagedRegister msrc, size_t size) OVERRIDE; 429 void StoreRef(FrameOffset dest, ManagedRegister msrc) OVERRIDE; 430 void StoreRawPtr(FrameOffset dest, ManagedRegister msrc) OVERRIDE; 432 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister mscratch) OVERRIDE; 436 ManagedRegister mscratch) OVERRIDE; 440 ManagedRegister mscratch) OVERRIDE [all...] |
/art/compiler/utils/x86_64/ |
assembler_x86_64.h | 706 void BuildFrame(size_t frame_size, ManagedRegister method_reg, 707 const std::vector<ManagedRegister>& callee_save_regs, 711 void RemoveFrame(size_t frame_size, const std::vector<ManagedRegister>& callee_save_regs) 718 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 719 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 720 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 722 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 724 void StoreImmediateToThread64(ThreadOffset<8> dest, uint32_t imm, ManagedRegister scratch) 728 ManagedRegister scratch) OVERRIDE; 732 void StoreSpanning(FrameOffset dest, ManagedRegister src, FrameOffset in_off [all...] |
managed_register_x86_64.h | 84 // An instance of class 'ManagedRegister' represents a single cpu register (enum 87 // 'ManagedRegister::NoRegister()' provides an invalid register. 88 // There is a one-to-one mapping between ManagedRegister and register id. 89 class X86_64ManagedRegister : public ManagedRegister { 189 friend class ManagedRegister; 191 explicit X86_64ManagedRegister(int reg_id) : ManagedRegister(reg_id) {} 204 inline x86_64::X86_64ManagedRegister ManagedRegister::AsX86_64() const {
|
/art/compiler/jni/quick/ |
calling_convention.h | 48 virtual ManagedRegister ReturnRegister() = 0; 50 virtual ManagedRegister InterproceduralScratchRegister() = 0; 233 virtual ManagedRegister MethodRegister() = 0; 247 virtual ManagedRegister CurrentParamRegister() = 0; 299 virtual ManagedRegister IntReturnRegister() = 0; 304 virtual const std::vector<ManagedRegister>& CalleeSaveRegisters() const = 0; 311 virtual ManagedRegister ReturnScratchRegister() const = 0; 324 virtual ManagedRegister CurrentParamRegister() = 0;
|