Index: src/a64/macro-assembler-a64.h |
diff --git a/src/a64/macro-assembler-a64.h b/src/a64/macro-assembler-a64.h |
index 651be99a6fb6657ac7f55a2659e71a83cbbea7c1..59412f3a64935dd76b7a246e742376996e1ea2dd 100644 |
--- a/src/a64/macro-assembler-a64.h |
+++ b/src/a64/macro-assembler-a64.h |
@@ -900,6 +900,9 @@ class MacroAssembler : public Assembler { |
Label* on_not_heap_number, |
Register heap_number_map = NoReg); |
+ // Sets the vs flag if the input is -0.0. |
+ void TestForMinusZero(DoubleRegister input); |
+ |
// Jump to label if the input double register contains -0.0. |
void JumpIfMinusZero(DoubleRegister input, Label* on_negative_zero); |
@@ -928,10 +931,12 @@ class MacroAssembler : public Assembler { |
// Try to convert a double to a signed 32-bit int. |
// This succeeds if the result compares equal to the input, so inputs of -0.0 |
// are converted to 0 and handled as a success. |
+ // |
+ // On output the Z flag is set if the conversion was successful. |
void TryConvertDoubleToInt32(Register as_int, |
FPRegister value, |
FPRegister scratch_d, |
- Label* on_successful_conversion, |
+ Label* on_successful_conversion = NULL, |
Label* on_failed_conversion = NULL) { |
ASSERT(as_int.Is32Bits()); |
TryConvertDoubleToInt(as_int, value, scratch_d, on_successful_conversion, |
@@ -941,10 +946,12 @@ class MacroAssembler : public Assembler { |
// Try to convert a double to a signed 64-bit int. |
// This succeeds if the result compares equal to the input, so inputs of -0.0 |
// are converted to 0 and handled as a success. |
+ // |
+ // On output the Z flag is set if the conversion was successful. |
void TryConvertDoubleToInt64(Register as_int, |
FPRegister value, |
FPRegister scratch_d, |
- Label* on_successful_conversion, |
+ Label* on_successful_conversion = NULL, |
Label* on_failed_conversion = NULL) { |
ASSERT(as_int.Is64Bits()); |
TryConvertDoubleToInt(as_int, value, scratch_d, on_successful_conversion, |
@@ -2071,10 +2078,12 @@ class MacroAssembler : public Assembler { |
// |
// This does not distinguish between +0 and -0, so if this distinction is |
// important it must be checked separately. |
+ // |
+ // On output the Z flag is set if the conversion was successful. |
void TryConvertDoubleToInt(Register as_int, |
FPRegister value, |
FPRegister scratch_d, |
- Label* on_successful_conversion, |
+ Label* on_successful_conversion = NULL, |
Label* on_failed_conversion = NULL); |
bool generating_stub_; |