diff options
author | Maja Gagic <maja.gagic@imgtec.com> | 2015-02-24 16:55:04 +0100 |
---|---|---|
committer | Andreas Gampe <agampe@google.com> | 2015-03-06 13:05:47 -0800 |
commit | 6ea651f0f4c7de4580beb2e887d86802c1ae0738 (patch) | |
tree | fd97dcbd7301892cb785ca34aee21ad86437c3b3 /compiler/jni/quick/jni_compiler.cc | |
parent | 0e242b5cad3c0b68b72f28c1e5fd3fdd4c05bfd8 (diff) | |
download | art-6ea651f0f4c7de4580beb2e887d86802c1ae0738.zip art-6ea651f0f4c7de4580beb2e887d86802c1ae0738.tar.gz art-6ea651f0f4c7de4580beb2e887d86802c1ae0738.tar.bz2 |
Initial support for quick compiler on MIPS64r6.
Change-Id: I6f43027b84e4a98ea320cddb972d9cf39bf7c4f8
Diffstat (limited to 'compiler/jni/quick/jni_compiler.cc')
-rw-r--r-- | compiler/jni/quick/jni_compiler.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/jni/quick/jni_compiler.cc b/compiler/jni/quick/jni_compiler.cc index ba73828..2d9e03a 100644 --- a/compiler/jni/quick/jni_compiler.cc +++ b/compiler/jni/quick/jni_compiler.cc @@ -36,6 +36,7 @@ #include "utils/arm/managed_register_arm.h" #include "utils/arm64/managed_register_arm64.h" #include "utils/mips/managed_register_mips.h" +#include "utils/mips64/managed_register_mips64.h" #include "utils/x86/managed_register_x86.h" #include "thread.h" @@ -329,7 +330,8 @@ CompiledMethod* ArtJniCompileMethodInternal(CompilerDriver* driver, // 11. Save return value FrameOffset return_save_location = main_jni_conv->ReturnValueSaveLocation(); if (main_jni_conv->SizeOfReturnValue() != 0 && !reference_return) { - if (instruction_set == kMips && main_jni_conv->GetReturnType() == Primitive::kPrimDouble && + if ((instruction_set == kMips || instruction_set == kMips64) && + main_jni_conv->GetReturnType() == Primitive::kPrimDouble && return_save_location.Uint32Value() % 8 != 0) { // Ensure doubles are 8-byte aligned for MIPS return_save_location = FrameOffset(return_save_location.Uint32Value() + kMipsPointerSize); |