diff options
Diffstat (limited to 'src/compiler/codegen/mips')
| -rw-r--r-- | src/compiler/codegen/mips/MipsLIR.h | 2 | ||||
| -rw-r--r-- | src/compiler/codegen/mips/MipsRallocUtil.cc | 5 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/compiler/codegen/mips/MipsLIR.h b/src/compiler/codegen/mips/MipsLIR.h index 4850205174..5852b31c56 100644 --- a/src/compiler/codegen/mips/MipsLIR.h +++ b/src/compiler/codegen/mips/MipsLIR.h @@ -148,7 +148,7 @@ namespace art { #define LOC_C_RETURN {kLocPhysReg, 0, 0, 0, 0, 0, 0, 0, 1, r_V0, INVALID_REG, \ INVALID_SREG, INVALID_SREG} #define LOC_C_RETURN_FLOAT LOC_C_RETURN -#define LOC_C_RETURN_ALT {kLocPhysReg, 0, 0, 0, 0, 0, 0, 0, 1, r_F0, \ +#define LOC_C_RETURN_ALT {kLocPhysReg, 0, 0, 0, 0, 0, 0, 0, 1, r_V1, \ INVALID_REG, INVALID_SREG, INVALID_SREG} #define LOC_C_RETURN_WIDE {kLocPhysReg, 1, 0, 0, 0, 0, 0, 0, 1, r_RESULT0, \ r_RESULT1, INVALID_SREG, INVALID_SREG} diff --git a/src/compiler/codegen/mips/MipsRallocUtil.cc b/src/compiler/codegen/mips/MipsRallocUtil.cc index ded59f0a77..43fcc071d9 100644 --- a/src/compiler/codegen/mips/MipsRallocUtil.cc +++ b/src/compiler/codegen/mips/MipsRallocUtil.cc @@ -149,8 +149,9 @@ extern RegLocation oatGetReturnWideAlt(CompilationUnit* cUnit) extern RegLocation oatGetReturnAlt(CompilationUnit* cUnit) { - UNIMPLEMENTED(FATAL); - RegLocation res = LOC_C_RETURN; + RegLocation res = LOC_C_RETURN_ALT; + oatClobber(cUnit, res.lowReg); + oatMarkInUse(cUnit, res.lowReg); return res; } |