OSDN Git Service

MIPS32: Pass more arguments in registers.
authorAlexey Frunze <Alexey.Frunze@imgtec.com>
Sun, 13 Nov 2016 01:22:05 +0000 (17:22 -0800)
committerAlexey Frunze <Alexey.Frunze@imgtec.com>
Tue, 6 Dec 2016 21:57:04 +0000 (13:57 -0800)
commit1b8464d17c2266763714ae18be7c4dc26e28bf61
tree19ab81b439fc216e289cb14be8a7618dbafb4f50
parentd7a7c7f3e93de9fa915e66d54dfc799efcc12ffb
MIPS32: Pass more arguments in registers.

Specifically, use A0-A3,T0-T1 for non-floats and F8-F19 for floats.

Test: booted MIPS32R2 in QEMU
Test: test-art-target-run-test-optimizing (MIPS32R2) on CI20
Test: test-art-target-gtest (MIPS32R2) on CI20
Test: booted MIPS64 (with 2nd arch MIPS32R6) in QEMU
Test: test-art-target-run-test-optimizing (MIPS32R6) in QEMU
Test: test-art-target-gtest (MIPS32R6) in QEMU
Test: test-art-host-gtest

Change-Id: Ib8b0310a109d9f3d70119c1e605e54b013e60728
14 files changed:
compiler/jni/jni_cfi_test_expected.inc
compiler/jni/quick/mips/calling_convention_mips.cc
compiler/optimizing/code_generator_mips.cc
compiler/optimizing/code_generator_mips.h
compiler/optimizing/emit_swap_mips_test.cc
compiler/utils/mips/assembler_mips.cc
runtime/arch/mips/asm_support_mips.h
runtime/arch/mips/context_mips.cc
runtime/arch/mips/quick_entrypoints_mips.S
runtime/arch/mips/quick_method_frame_info_mips.h
runtime/arch/mips/registers_mips.h
runtime/arch/stub_test.cc
runtime/entrypoints/quick/quick_trampoline_entrypoints.cc
runtime/oat.h