/art/compiler/utils/x86/ |
D | jni_macro_assembler_x86.h | 46 ManagedRegister method_reg, 47 ArrayRef<const ManagedRegister> callee_save_regs, 52 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; 71 void StoreSpanning(FrameOffset dest, ManagedRegister src, FrameOffset in_off, 72 ManagedRegister scratch) override; [all …]
|
D | jni_macro_assembler_x86.cc | 48 ManagedRegister method_reg, in BuildFrame() 49 ArrayRef<const ManagedRegister> spill_regs, in BuildFrame() 102 ArrayRef<const ManagedRegister> spill_regs, in RemoveFrame() 144 void X86JNIMacroAssembler::Store(FrameOffset offs, ManagedRegister msrc, size_t size) { in Store() 171 void X86JNIMacroAssembler::StoreRef(FrameOffset dest, ManagedRegister msrc) { in StoreRef() 177 void X86JNIMacroAssembler::StoreRawPtr(FrameOffset dest, ManagedRegister msrc) { in StoreRawPtr() 183 void X86JNIMacroAssembler::StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister) { in StoreImmediateToFrame() argument 189 ManagedRegister mscratch) { in StoreStackOffsetToThread() 201 ManagedRegister /*src*/, in StoreSpanning() argument 203 ManagedRegister /*scratch*/) { in StoreSpanning() [all …]
|
D | managed_register_x86.h | 89 class X86ManagedRegister : public ManagedRegister { 202 friend class ManagedRegister; variable 204 explicit constexpr X86ManagedRegister(int reg_id) : ManagedRegister(reg_id) {} in X86ManagedRegister() 217 constexpr inline x86::X86ManagedRegister ManagedRegister::AsX86() const { in AsX86()
|
/art/compiler/utils/x86_64/ |
D | jni_macro_assembler_x86_64.h | 47 ManagedRegister method_reg, 48 ArrayRef<const ManagedRegister> callee_save_regs, 53 ArrayRef<const ManagedRegister> callee_save_regs, 60 void Store(FrameOffset offs, ManagedRegister src, size_t size) override; 61 void StoreRef(FrameOffset dest, ManagedRegister src) override; 62 void StoreRawPtr(FrameOffset dest, ManagedRegister src) override; 64 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) override; 68 ManagedRegister scratch) override; 73 ManagedRegister src, 75 ManagedRegister scratch) override; [all …]
|
D | jni_macro_assembler_x86_64.cc | 42 ManagedRegister method_reg, in BuildFrame() 43 ArrayRef<const ManagedRegister> spill_regs, in BuildFrame() 114 ArrayRef<const ManagedRegister> spill_regs, in RemoveFrame() 173 void X86_64JNIMacroAssembler::Store(FrameOffset offs, ManagedRegister msrc, size_t size) { in Store() 206 void X86_64JNIMacroAssembler::StoreRef(FrameOffset dest, ManagedRegister msrc) { in StoreRef() 212 void X86_64JNIMacroAssembler::StoreRawPtr(FrameOffset dest, ManagedRegister msrc) { in StoreRawPtr() 220 ManagedRegister) { in StoreImmediateToFrame() argument 226 ManagedRegister mscratch) { in StoreStackOffsetToThread() 238 ManagedRegister /*src*/, in StoreSpanning() argument 240 ManagedRegister /*scratch*/) { in StoreSpanning() [all …]
|
D | managed_register_x86_64.h | 88 class X86_64ManagedRegister : public ManagedRegister { 188 friend class ManagedRegister; variable 190 explicit constexpr X86_64ManagedRegister(int reg_id) : ManagedRegister(reg_id) {} in X86_64ManagedRegister() 203 constexpr inline x86_64::X86_64ManagedRegister ManagedRegister::AsX86_64() const { in AsX86_64()
|
/art/compiler/utils/arm/ |
D | jni_macro_assembler_arm_vixl.h | 53 ManagedRegister method_reg, 54 ArrayRef<const ManagedRegister> callee_save_regs, 59 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; 70 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) override; 74 ManagedRegister scratch) override; 79 ManagedRegister src, 81 ManagedRegister scratch) override; [all …]
|
D | jni_macro_assembler_arm_vixl.cc | 78 ManagedRegister method_reg, in BuildFrame() 79 ArrayRef<const ManagedRegister> callee_save_regs, in BuildFrame() 92 for (const ManagedRegister& reg : callee_save_regs) { in BuildFrame() 148 ArrayRef<const ManagedRegister> callee_save_regs, in RemoveFrame() 156 for (const ManagedRegister& reg : callee_save_regs) { in RemoveFrame() 235 void ArmVIXLJNIMacroAssembler::Store(FrameOffset dest, ManagedRegister m_src, size_t size) { in Store() 258 void ArmVIXLJNIMacroAssembler::StoreRef(FrameOffset dest, ManagedRegister msrc) { in StoreRef() 265 void ArmVIXLJNIMacroAssembler::StoreRawPtr(FrameOffset dest, ManagedRegister msrc) { in StoreRawPtr() 273 ManagedRegister msrc, in StoreSpanning() 275 ManagedRegister mscratch) { in StoreSpanning() [all …]
|
D | managed_register_arm.h | 86 class ArmManagedRegister : public ManagedRegister { 252 friend class ManagedRegister; variable 254 explicit constexpr ArmManagedRegister(int reg_id) : ManagedRegister(reg_id) {} in ArmManagedRegister() 267 constexpr inline arm::ArmManagedRegister ManagedRegister::AsArm() const { in AsArm()
|
/art/compiler/utils/ |
D | jni_macro_assembler.h | 65 ManagedRegister method_reg, 66 ArrayRef<const ManagedRegister> callee_save_regs, 75 ArrayRef<const ManagedRegister> callee_save_regs, 82 virtual void Store(FrameOffset offs, ManagedRegister src, size_t size) = 0; 83 virtual void StoreRef(FrameOffset dest, ManagedRegister src) = 0; 84 virtual void StoreRawPtr(FrameOffset dest, ManagedRegister src) = 0; 86 virtual void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) = 0; 90 ManagedRegister scratch) = 0; 95 ManagedRegister src, 97 ManagedRegister scratch) = 0; [all …]
|
D | managed_register.h | 42 class ManagedRegister : public ValueObject { 47 constexpr ManagedRegister(const ManagedRegister& other) = default; 49 ManagedRegister& operator=(const ManagedRegister& other) = default; 57 constexpr bool Equals(const ManagedRegister& other) const { in Equals() 69 static constexpr ManagedRegister NoRegister() { in NoRegister() 70 return ManagedRegister(); in NoRegister() 74 explicit constexpr ManagedRegister(int reg_id) : id_(reg_id) { } in ManagedRegister() function 79 constexpr ManagedRegister() : id_(kNoRegister) { } in ManagedRegister() function 84 static_assert(std::is_trivially_copyable<ManagedRegister>::value, 87 class ManagedRegisterSpill : public ManagedRegister { [all …]
|
/art/compiler/utils/arm64/ |
D | jni_macro_assembler_arm64.h | 56 ManagedRegister method_reg, 57 ArrayRef<const ManagedRegister> callee_save_regs, 62 ArrayRef<const ManagedRegister> callee_save_regs, 69 void Store(FrameOffset offs, ManagedRegister src, size_t size) override; 70 void StoreRef(FrameOffset dest, ManagedRegister src) override; 71 void StoreRawPtr(FrameOffset dest, ManagedRegister src) override; 72 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) override; 75 ManagedRegister scratch) override; 78 ManagedRegister src, 80 ManagedRegister scratch) override; [all …]
|
D | jni_macro_assembler_arm64.cc | 54 void Arm64JNIMacroAssembler::GetCurrentThread(ManagedRegister tr) { in GetCurrentThread() 58 void Arm64JNIMacroAssembler::GetCurrentThread(FrameOffset offset, ManagedRegister /* scratch */) { in GetCurrentThread() argument 134 void Arm64JNIMacroAssembler::Store(FrameOffset offs, ManagedRegister m_src, size_t size) { in Store() 152 void Arm64JNIMacroAssembler::StoreRef(FrameOffset offs, ManagedRegister m_src) { in StoreRef() 159 void Arm64JNIMacroAssembler::StoreRawPtr(FrameOffset offs, ManagedRegister m_src) { in StoreRawPtr() 167 ManagedRegister m_scratch) { in StoreImmediateToFrame() 177 ManagedRegister m_scratch) { in StoreStackOffsetToThread() 192 ManagedRegister m_source, in StoreSpanning() 194 ManagedRegister m_scratch) { in StoreSpanning() 289 void Arm64JNIMacroAssembler::Load(ManagedRegister m_dst, FrameOffset src, size_t size) { in Load() [all …]
|
D | assembler_arm64.h | 96 void LoadRawPtr(ManagedRegister dest, ManagedRegister base, Offset offs); 102 void JumpTo(ManagedRegister m_base, Offset offs, ManagedRegister m_scratch);
|
D | managed_register_arm64.h | 57 class Arm64ManagedRegister : public ManagedRegister { 203 friend class ManagedRegister; variable 205 explicit constexpr Arm64ManagedRegister(int reg_id) : ManagedRegister(reg_id) {} in Arm64ManagedRegister() 218 constexpr inline arm64::Arm64ManagedRegister ManagedRegister::AsArm64() const { in AsArm64()
|
/art/compiler/jni/quick/x86/ |
D | calling_convention_x86.h | 36 ManagedRegister ReturnRegister() override; 37 ManagedRegister InterproceduralScratchRegister() const override; 39 ManagedRegister MethodRegister() override; 42 ManagedRegister CurrentParamRegister() override; 48 ManagedRegister CurrentParamHighLongRegister(); 62 ManagedRegister ReturnRegister() override; 63 ManagedRegister IntReturnRegister() override; 64 ManagedRegister InterproceduralScratchRegister() const override; 68 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const override; 69 ManagedRegister ReturnScratchRegister() const override; [all …]
|
D | calling_convention_x86.cc | 31 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 41 const ManagedRegister (&callee_saves)[size]) { in CalculateCoreCalleeSpillMask() 55 static constexpr ManagedRegister kNativeCalleeSaveRegisters[] = { 70 ManagedRegister X86ManagedRuntimeCallingConvention::InterproceduralScratchRegister() const { in InterproceduralScratchRegister() 74 ManagedRegister X86JniCallingConvention::InterproceduralScratchRegister() const { in InterproceduralScratchRegister() 78 ManagedRegister X86JniCallingConvention::ReturnScratchRegister() const { in ReturnScratchRegister() 79 return ManagedRegister::NoRegister(); // No free regs, so assembler uses push/pop in ReturnScratchRegister() 82 static ManagedRegister ReturnRegisterForShorty(const char* shorty, bool jni) { in ReturnRegisterForShorty() 92 return ManagedRegister::NoRegister(); in ReturnRegisterForShorty() 98 ManagedRegister X86ManagedRuntimeCallingConvention::ReturnRegister() { in ReturnRegister() [all …]
|
/art/compiler/jni/quick/arm/ |
D | calling_convention_arm.h | 35 ManagedRegister ReturnRegister() override; 36 ManagedRegister InterproceduralScratchRegister() const override; 38 ManagedRegister MethodRegister() override; 41 ManagedRegister CurrentParamRegister() override; 59 ManagedRegister ReturnRegister() override; 60 ManagedRegister IntReturnRegister() override; 61 ManagedRegister InterproceduralScratchRegister() const override; 66 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const override; 67 ManagedRegister ReturnScratchRegister() const override; 72 ManagedRegister CurrentParamRegister() override; [all …]
|
D | calling_convention_arm.cc | 70 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 100 const ManagedRegister (&callee_saves)[size]) { in CalculateCoreCalleeSpillMask() 112 static constexpr uint32_t CalculateFpCalleeSpillMask(const ManagedRegister (&callee_saves)[size]) { in CalculateFpCalleeSpillMask() 125 static constexpr ManagedRegister kAapcsCalleeSaveRegisters[] = { 162 ManagedRegister ArmManagedRuntimeCallingConvention::InterproceduralScratchRegister() const { in InterproceduralScratchRegister() 166 ManagedRegister ArmJniCallingConvention::InterproceduralScratchRegister() const { in InterproceduralScratchRegister() 170 ManagedRegister ArmManagedRuntimeCallingConvention::ReturnRegister() { in ReturnRegister() 185 ManagedRegister ArmJniCallingConvention::ReturnRegister() { in ReturnRegister() 197 ManagedRegister ArmJniCallingConvention::IntReturnRegister() { in IntReturnRegister() 203 ManagedRegister ArmManagedRuntimeCallingConvention::MethodRegister() { in MethodRegister() [all …]
|
/art/compiler/jni/quick/arm64/ |
D | calling_convention_arm64.h | 35 ManagedRegister ReturnRegister() override; 36 ManagedRegister InterproceduralScratchRegister() const override; 38 ManagedRegister MethodRegister() override; 41 ManagedRegister CurrentParamRegister() override; 59 ManagedRegister ReturnRegister() override; 60 ManagedRegister IntReturnRegister() override; 61 ManagedRegister InterproceduralScratchRegister() const override; 65 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const override; 66 ManagedRegister ReturnScratchRegister() const override; 71 ManagedRegister CurrentParamRegister() override; [all …]
|
D | calling_convention_arm64.cc | 51 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 91 const ManagedRegister (&callee_saves)[size]) { in CalculateCoreCalleeSpillMask() 102 static constexpr uint32_t CalculateFpCalleeSpillMask(const ManagedRegister (&callee_saves)[size]) { in CalculateFpCalleeSpillMask() 115 static constexpr ManagedRegister kAapcs64CalleeSaveRegisters[] = { 146 ManagedRegister Arm64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() const { in InterproceduralScratchRegister() 150 ManagedRegister Arm64JniCallingConvention::InterproceduralScratchRegister() const { in InterproceduralScratchRegister() 154 static ManagedRegister ReturnRegisterForShorty(const char* shorty) { in ReturnRegisterForShorty() 168 ManagedRegister Arm64ManagedRuntimeCallingConvention::ReturnRegister() { in ReturnRegister() 172 ManagedRegister Arm64JniCallingConvention::ReturnRegister() { in ReturnRegister() 176 ManagedRegister Arm64JniCallingConvention::IntReturnRegister() { in IntReturnRegister() [all …]
|
/art/compiler/jni/quick/x86_64/ |
D | calling_convention_x86_64.h | 35 ManagedRegister ReturnRegister() override; 36 ManagedRegister InterproceduralScratchRegister() const override; 38 ManagedRegister MethodRegister() override; 41 ManagedRegister CurrentParamRegister() override; 57 ManagedRegister ReturnRegister() override; 58 ManagedRegister IntReturnRegister() override; 59 ManagedRegister InterproceduralScratchRegister() const override; 63 ArrayRef<const ManagedRegister> CalleeSaveRegisters() const override; 64 ManagedRegister ReturnScratchRegister() const override; 69 ManagedRegister CurrentParamRegister() override; [all …]
|
D | calling_convention_x86_64.cc | 30 static constexpr ManagedRegister kCalleeSaveRegisters[] = { 47 const ManagedRegister (&callee_saves)[size]) { in CalculateCoreCalleeSpillMask() 59 static constexpr uint32_t CalculateFpCalleeSpillMask(const ManagedRegister (&callee_saves)[size]) { in CalculateFpCalleeSpillMask() 72 static constexpr ManagedRegister kNativeCalleeSaveRegisters[] = { 90 ManagedRegister X86_64ManagedRuntimeCallingConvention::InterproceduralScratchRegister() const { in InterproceduralScratchRegister() 94 ManagedRegister X86_64JniCallingConvention::InterproceduralScratchRegister() const { in InterproceduralScratchRegister() 98 ManagedRegister X86_64JniCallingConvention::ReturnScratchRegister() const { in ReturnScratchRegister() 99 return ManagedRegister::NoRegister(); // No free regs, so assembler uses push/pop in ReturnScratchRegister() 102 static ManagedRegister ReturnRegisterForShorty(const char* shorty, bool jni ATTRIBUTE_UNUSED) { in ReturnRegisterForShorty() 108 return ManagedRegister::NoRegister(); in ReturnRegisterForShorty() [all …]
|
/art/compiler/jni/quick/ |
D | calling_convention.h | 50 virtual ManagedRegister ReturnRegister() = 0; 52 virtual ManagedRegister InterproceduralScratchRegister() const = 0; 251 virtual ManagedRegister MethodRegister() = 0; 265 virtual ManagedRegister CurrentParamRegister() = 0; 319 virtual ManagedRegister IntReturnRegister() = 0; 324 virtual ArrayRef<const ManagedRegister> CalleeSaveRegisters() const = 0; 331 virtual ManagedRegister ReturnScratchRegister() const = 0; 347 virtual ManagedRegister CurrentParamRegister() = 0; 387 virtual ManagedRegister HiddenArgumentRegister() const = 0;
|
D | jni_compiler.cc | 59 ManagedRegister in_reg); 224 ManagedRegister method_register = in ArtJniCompileMethodInternal() 225 is_critical_native ? ManagedRegister::NoRegister() : mr_conv->MethodRegister(); in ArtJniCompileMethodInternal() 226 ArrayRef<const ManagedRegister> callee_save_regs = main_jni_conv->CalleeSaveRegisters(); in ArtJniCompileMethodInternal() 285 ManagedRegister in_reg = mr_conv->CurrentParamRegister(); in ArtJniCompileMethodInternal() 360 ManagedRegister out_reg = main_jni_conv->CurrentParamRegister(); in ArtJniCompileMethodInternal() 362 ManagedRegister::NoRegister(), false); in ArtJniCompileMethodInternal() 409 ManagedRegister out_reg = main_jni_conv->CurrentParamRegister(); in ArtJniCompileMethodInternal() 411 ManagedRegister::NoRegister(), false); in ArtJniCompileMethodInternal() 484 ManagedRegister out_reg = main_jni_conv->CurrentParamRegister(); in ArtJniCompileMethodInternal() [all …]
|