| Index: src/arm/macro-assembler-arm.h
|
| diff --git a/src/arm/macro-assembler-arm.h b/src/arm/macro-assembler-arm.h
|
| index ab5efb0b319705de5e4273443f85b7630dcb76b7..9692cad81d740fb456a567c1a83c6be341299270 100644
|
| --- a/src/arm/macro-assembler-arm.h
|
| +++ b/src/arm/macro-assembler-arm.h
|
| @@ -748,7 +748,19 @@ class MacroAssembler: public Assembler {
|
| // C++ code.
|
| // Needs a scratch register to do some arithmetic. This register will be
|
| // trashed.
|
| - void PrepareCallCFunction(int num_arguments, Register scratch);
|
| + void PrepareCallCFunction(int num_reg_arguments,
|
| + int num_double_registers,
|
| + Register scratch);
|
| + void PrepareCallCFunction(int num_reg_arguments,
|
| + Register scratch);
|
| +
|
| + // There are two ways of passing double arguments on ARM, depending on
|
| + // whether soft or hard floating point ABI is used. These functions
|
| + // abstract parameter passing for the three different ways we call
|
| + // C functions from generated code.
|
| + void SetCallCDoubleArguments(DoubleRegister dreg);
|
| + void SetCallCDoubleArguments(DoubleRegister dreg1, DoubleRegister dreg2);
|
| + void SetCallCDoubleArguments(DoubleRegister dreg, Register reg);
|
|
|
| // Calls a C function and cleans up the space for arguments allocated
|
| // by PrepareCallCFunction. The called function is not allowed to trigger a
|
|
|