/art/compiler/utils/ |
managed_register.h | 48 class ManagedRegister : public ValueObject { 50 // ManagedRegister is a value class. There exists no method to change the 53 constexpr ManagedRegister(const ManagedRegister& other) = default; 55 ManagedRegister& operator=(const ManagedRegister& other) = default; 65 constexpr bool Equals(const ManagedRegister& other) const { 73 static constexpr ManagedRegister NoRegister() { 74 return ManagedRegister(); 78 explicit constexpr ManagedRegister(int reg_id) : id_(reg_id) { [all...] |
jni_macro_assembler.h | 64 ManagedRegister method_reg, 65 ArrayRef<const ManagedRegister> callee_save_regs, 69 virtual void RemoveFrame(size_t frame_size, ArrayRef<const ManagedRegister> callee_save_regs) = 0; 75 virtual void Store(FrameOffset offs, ManagedRegister src, size_t size) = 0; 76 virtual void StoreRef(FrameOffset dest, ManagedRegister src) = 0; 77 virtual void StoreRawPtr(FrameOffset dest, ManagedRegister src) = 0; 79 virtual void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) = 0; 83 ManagedRegister scratch) = 0; 88 ManagedRegister src, 90 ManagedRegister scratch) = 0 [all...] |
/art/compiler/utils/arm/ |
jni_macro_assembler_arm_vixl.h | 51 ManagedRegister method_reg, 52 ArrayRef<const ManagedRegister> callee_save_regs, 57 ArrayRef<const ManagedRegister> callee_save_regs) OVERRIDE; 63 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 64 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 65 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 67 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 71 ManagedRegister scratch) OVERRIDE; 76 ManagedRegister src, 78 ManagedRegister scratch) OVERRIDE [all...] |
jni_macro_assembler_arm_vixl.cc | 58 ManagedRegister method_reg, 59 ArrayRef<const ManagedRegister> callee_save_regs, 67 for (const ManagedRegister& reg : callee_save_regs) { 119 ArrayRef<const ManagedRegister> callee_save_regs) { 126 for (const ManagedRegister& reg : callee_save_regs) { 178 void ArmVIXLJNIMacroAssembler::Store(FrameOffset dest, ManagedRegister m_src, size_t size) { 201 void ArmVIXLJNIMacroAssembler::StoreRef(FrameOffset dest, ManagedRegister msrc) { 209 void ArmVIXLJNIMacroAssembler::StoreRawPtr(FrameOffset dest, ManagedRegister msrc) { 218 ManagedRegister msrc, 220 ManagedRegister mscratch) [all...] |
/art/compiler/utils/x86/ |
jni_macro_assembler_x86.h | 46 ManagedRegister method_reg, 47 ArrayRef<const ManagedRegister> callee_save_regs, 51 void RemoveFrame(size_t frame_size, ArrayRef<const ManagedRegister> callee_save_regs) 58 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 59 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 60 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 62 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 66 ManagedRegister scratch) OVERRIDE; 70 void StoreSpanning(FrameOffset dest, ManagedRegister src, FrameOffset in_off, 71 ManagedRegister scratch) OVERRIDE [all...] |
jni_macro_assembler_x86.cc | 45 ManagedRegister method_reg, 46 ArrayRef<const ManagedRegister> spill_regs, 88 ArrayRef<const ManagedRegister> spill_regs) { 123 void X86JNIMacroAssembler::Store(FrameOffset offs, ManagedRegister msrc, size_t size) { 150 void X86JNIMacroAssembler::StoreRef(FrameOffset dest, ManagedRegister msrc) { 156 void X86JNIMacroAssembler::StoreRawPtr(FrameOffset dest, ManagedRegister msrc) { 162 void X86JNIMacroAssembler::StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister) { 168 ManagedRegister mscratch) { 180 ManagedRegister /*src*/, 182 ManagedRegister /*scratch*/) [all...] |
/art/compiler/utils/x86_64/ |
jni_macro_assembler_x86_64.h | 47 ManagedRegister method_reg, 48 ArrayRef<const ManagedRegister> callee_save_regs, 52 void RemoveFrame(size_t frame_size, ArrayRef<const ManagedRegister> callee_save_regs) 59 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 60 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 61 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 63 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 67 ManagedRegister scratch) OVERRIDE; 72 ManagedRegister src, 74 ManagedRegister scratch) OVERRIDE [all...] |
jni_macro_assembler_x86_64.cc | 39 ManagedRegister method_reg, 40 ArrayRef<const ManagedRegister> spill_regs, 103 ArrayRef<const ManagedRegister> spill_regs) { 154 void X86_64JNIMacroAssembler::Store(FrameOffset offs, ManagedRegister msrc, size_t size) { 187 void X86_64JNIMacroAssembler::StoreRef(FrameOffset dest, ManagedRegister msrc) { 193 void X86_64JNIMacroAssembler::StoreRawPtr(FrameOffset dest, ManagedRegister msrc) { 201 ManagedRegister) { 207 ManagedRegister mscratch) { 219 ManagedRegister /*src*/, 221 ManagedRegister /*scratch*/) [all...] |
/art/compiler/jni/quick/x86/ |
calling_convention_x86.h | 38 ManagedRegister ReturnRegister() OVERRIDE; 39 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 41 ManagedRegister MethodRegister() OVERRIDE; 44 ManagedRegister CurrentParamRegister() OVERRIDE; 50 ManagedRegister CurrentParamHighLongRegister(); 64 ManagedRegister ReturnRegister() OVERRIDE; 65 ManagedRegister IntReturnRegister() OVERRIDE; 66 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 70 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const OVERRIDE; 71 ManagedRegister ReturnScratchRegister() const OVERRIDE [all...] |
calling_convention_x86.cc | 29 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 53 ManagedRegister X86ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 57 ManagedRegister X86JniCallingConvention::InterproceduralScratchRegister() { 61 ManagedRegister X86JniCallingConvention::ReturnScratchRegister() const { 62 return ManagedRegister::NoRegister(); // No free regs, so assembler uses push/pop 65 static ManagedRegister ReturnRegisterForShorty(const char* shorty, bool jni) { 75 return ManagedRegister::NoRegister(); 81 ManagedRegister X86ManagedRuntimeCallingConvention::ReturnRegister() { 85 ManagedRegister X86JniCallingConvention::ReturnRegister() { 89 ManagedRegister X86JniCallingConvention::IntReturnRegister() [all...] |
/art/compiler/jni/quick/arm/ |
calling_convention_arm.h | 37 ManagedRegister ReturnRegister() OVERRIDE; 38 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 40 ManagedRegister MethodRegister() OVERRIDE; 43 ManagedRegister CurrentParamRegister() OVERRIDE; 61 ManagedRegister ReturnRegister() OVERRIDE; 62 ManagedRegister IntReturnRegister() OVERRIDE; 63 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 68 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const OVERRIDE; 69 ManagedRegister ReturnScratchRegister() const OVERRIDE; 74 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_arm.cc | 65 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 118 ManagedRegister ArmManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 122 ManagedRegister ArmJniCallingConvention::InterproceduralScratchRegister() { 126 ManagedRegister ArmManagedRuntimeCallingConvention::ReturnRegister() { 153 ManagedRegister ArmJniCallingConvention::ReturnRegister() { 165 ManagedRegister ArmJniCallingConvention::IntReturnRegister() { 171 ManagedRegister ArmManagedRuntimeCallingConvention::MethodRegister() { 183 ManagedRegister ArmManagedRuntimeCallingConvention::CurrentParamRegister() { 185 return ManagedRegister::NoRegister(); 229 entry_spills_.push_back(ManagedRegister::NoRegister(), 8) [all...] |
/art/compiler/jni/quick/arm64/ |
calling_convention_arm64.h | 37 ManagedRegister ReturnRegister() OVERRIDE; 38 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 40 ManagedRegister MethodRegister() OVERRIDE; 43 ManagedRegister CurrentParamRegister() OVERRIDE; 61 ManagedRegister ReturnRegister() OVERRIDE; 62 ManagedRegister IntReturnRegister() OVERRIDE; 63 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 67 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const OVERRIDE; 68 ManagedRegister ReturnScratchRegister() const OVERRIDE; 73 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_arm64.cc | 50 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 110 ManagedRegister Arm64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 121 ManagedRegister Arm64JniCallingConvention::InterproceduralScratchRegister() { 132 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { 146 ManagedRegister Arm64ManagedRuntimeCallingConvention::ReturnRegister() { 150 ManagedRegister Arm64JniCallingConvention::ReturnRegister() { 154 ManagedRegister Arm64JniCallingConvention::IntReturnRegister() { 160 ManagedRegister Arm64ManagedRuntimeCallingConvention::MethodRegister() { 172 ManagedRegister Arm64ManagedRuntimeCallingConvention::CurrentParamRegister() { 174 return ManagedRegister::NoRegister() [all...] |
/art/compiler/jni/quick/mips/ |
calling_convention_mips.h | 39 ManagedRegister ReturnRegister() OVERRIDE; 40 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 42 ManagedRegister MethodRegister() OVERRIDE; 45 ManagedRegister CurrentParamRegister() OVERRIDE; 63 ManagedRegister ReturnRegister() OVERRIDE; 64 ManagedRegister IntReturnRegister() OVERRIDE; 65 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 70 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const OVERRIDE; 71 ManagedRegister ReturnScratchRegister() const OVERRIDE; 76 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_mips.cc | 49 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 76 ManagedRegister MipsManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 80 ManagedRegister MipsJniCallingConvention::InterproceduralScratchRegister() { 84 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { 98 ManagedRegister MipsManagedRuntimeCallingConvention::ReturnRegister() { 102 ManagedRegister MipsJniCallingConvention::ReturnRegister() { 106 ManagedRegister MipsJniCallingConvention::IntReturnRegister() { 112 ManagedRegister MipsManagedRuntimeCallingConvention::MethodRegister() { 124 ManagedRegister MipsManagedRuntimeCallingConvention::CurrentParamRegister() { 126 return ManagedRegister::NoRegister() [all...] |
/art/compiler/jni/quick/mips64/ |
calling_convention_mips64.h | 39 ManagedRegister ReturnRegister() OVERRIDE; 40 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 42 ManagedRegister MethodRegister() OVERRIDE; 45 ManagedRegister CurrentParamRegister() OVERRIDE; 63 ManagedRegister ReturnRegister() OVERRIDE; 64 ManagedRegister IntReturnRegister() OVERRIDE; 65 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 69 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const OVERRIDE; 70 ManagedRegister ReturnScratchRegister() const OVERRIDE; 75 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_mips64.cc | 37 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 65 ManagedRegister Mips64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 69 ManagedRegister Mips64JniCallingConvention::InterproceduralScratchRegister() { 73 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { 83 ManagedRegister Mips64ManagedRuntimeCallingConvention::ReturnRegister() { 87 ManagedRegister Mips64JniCallingConvention::ReturnRegister() { 91 ManagedRegister Mips64JniCallingConvention::IntReturnRegister() { 97 ManagedRegister Mips64ManagedRuntimeCallingConvention::MethodRegister() { 109 ManagedRegister Mips64ManagedRuntimeCallingConvention::CurrentParamRegister() { 111 return ManagedRegister::NoRegister() [all...] |
/art/compiler/jni/quick/x86_64/ |
calling_convention_x86_64.h | 35 ManagedRegister ReturnRegister() OVERRIDE; 36 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 38 ManagedRegister MethodRegister() OVERRIDE; 41 ManagedRegister CurrentParamRegister() OVERRIDE; 57 ManagedRegister ReturnRegister() OVERRIDE; 58 ManagedRegister IntReturnRegister() OVERRIDE; 59 ManagedRegister InterproceduralScratchRegister() OVERRIDE; 63 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const OVERRIDE; 64 ManagedRegister ReturnScratchRegister() const OVERRIDE; 69 ManagedRegister CurrentParamRegister() OVERRIDE [all...] |
calling_convention_x86_64.cc | 39 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 80 ManagedRegister X86_64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() { 84 ManagedRegister X86_64JniCallingConvention::InterproceduralScratchRegister() { 88 ManagedRegister X86_64JniCallingConvention::ReturnScratchRegister() const { 89 return ManagedRegister::NoRegister(); // No free regs, so assembler uses push/pop 92 static ManagedRegister ReturnRegisterForShorty(const char* shorty, bool jni ATTRIBUTE_UNUSED) { 98 return ManagedRegister::NoRegister(); 104 ManagedRegister X86_64ManagedRuntimeCallingConvention::ReturnRegister() { 108 ManagedRegister X86_64JniCallingConvention::ReturnRegister() { 112 ManagedRegister X86_64JniCallingConvention::IntReturnRegister() [all...] |
/art/compiler/utils/arm64/ |
jni_macro_assembler_arm64.h | 54 ManagedRegister method_reg, 55 ArrayRef<const ManagedRegister> callee_save_regs, 59 void RemoveFrame(size_t frame_size, ArrayRef<const ManagedRegister> callee_save_regs) 66 void Store(FrameOffset offs, ManagedRegister src, size_t size) OVERRIDE; 67 void StoreRef(FrameOffset dest, ManagedRegister src) OVERRIDE; 68 void StoreRawPtr(FrameOffset dest, ManagedRegister src) OVERRIDE; 69 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE; 72 ManagedRegister scratch) OVERRIDE; 75 ManagedRegister src, 77 ManagedRegister scratch) OVERRIDE [all...] |
jni_macro_assembler_arm64.cc | 51 void Arm64JNIMacroAssembler::GetCurrentThread(ManagedRegister tr) { 55 void Arm64JNIMacroAssembler::GetCurrentThread(FrameOffset offset, ManagedRegister /* scratch */) { 127 void Arm64JNIMacroAssembler::Store(FrameOffset offs, ManagedRegister m_src, size_t size) { 145 void Arm64JNIMacroAssembler::StoreRef(FrameOffset offs, ManagedRegister m_src) { 152 void Arm64JNIMacroAssembler::StoreRawPtr(FrameOffset offs, ManagedRegister m_src) { 160 ManagedRegister m_scratch) { 170 ManagedRegister m_scratch) { 185 ManagedRegister m_source, 187 ManagedRegister m_scratch) { 282 void Arm64JNIMacroAssembler::Load(ManagedRegister m_dst, FrameOffset src, size_t size) [all...] |
assembler_arm64.h | 80 void LoadRawPtr(ManagedRegister dest, ManagedRegister base, Offset offs); 86 void JumpTo(ManagedRegister m_base, Offset offs, ManagedRegister m_scratch);
|
/art/compiler/utils/mips64/ |
managed_register_mips64.h | 48 // An instance of class 'ManagedRegister' represents a single Mips64 register. 54 // 'ManagedRegister::NoRegister()' provides an invalid register. 55 // There is a one-to-one mapping between ManagedRegister and register id. 56 class Mips64ManagedRegister : public ManagedRegister { 141 friend class ManagedRegister; 143 explicit constexpr Mips64ManagedRegister(int reg_id) : ManagedRegister(reg_id) {} 156 constexpr inline mips64::Mips64ManagedRegister ManagedRegister::AsMips64() const {
|
/art/compiler/jni/quick/ |
calling_convention.h | 48 virtual ManagedRegister ReturnRegister() = 0; 50 virtual ManagedRegister InterproceduralScratchRegister() = 0; 241 virtual ManagedRegister MethodRegister() = 0; 255 virtual ManagedRegister CurrentParamRegister() = 0; 309 virtual ManagedRegister IntReturnRegister() = 0; 314 virtual ArrayRef<const ManagedRegister> CalleeSaveRegisters() const = 0; 321 virtual ManagedRegister ReturnScratchRegister() const = 0; 337 virtual ManagedRegister CurrentParamRegister() = 0;
|