| Index: src/mips/macro-assembler-mips.cc
|
| diff --git a/src/mips/macro-assembler-mips.cc b/src/mips/macro-assembler-mips.cc
|
| index d67e58e660e8679a320957f9efdc522310632de4..116cb05655305f933a825a140a9ff76fa952fbdd 100644
|
| --- a/src/mips/macro-assembler-mips.cc
|
| +++ b/src/mips/macro-assembler-mips.cc
|
| @@ -3526,6 +3526,15 @@ void MacroAssembler::GetCFunctionDoubleResult(const DoubleRegister dst) {
|
| }
|
|
|
|
|
| +void MacroAssembler::GetFromCDoubleArguments(const DoubleRegister dst) {
|
| + if (IsMipsSoftFloatABI) {
|
| + Move(dst, a0, a1);
|
| + } else {
|
| + Move(dst, f12); // Reg f12 is o32 ABI FP first argument value.
|
| + }
|
| +}
|
| +
|
| +
|
| void MacroAssembler::SetCallCDoubleArguments(DoubleRegister dreg) {
|
| if (!IsMipsSoftFloatABI) {
|
| Move(f12, dreg);
|
| @@ -3535,6 +3544,15 @@ void MacroAssembler::SetCallCDoubleArguments(DoubleRegister dreg) {
|
| }
|
|
|
|
|
| +void MacroAssembler::SetForCDoubleResult(DoubleRegister dreg) {
|
| + if (!IsMipsSoftFloatABI) {
|
| + Move(f0, dreg);
|
| + } else {
|
| + Move(v0, v1, dreg);
|
| + }
|
| +}
|
| +
|
| +
|
| void MacroAssembler::SetCallCDoubleArguments(DoubleRegister dreg1,
|
| DoubleRegister dreg2) {
|
| if (!IsMipsSoftFloatABI) {
|
|
|