Index: src/x87/macro-assembler-x87.cc |
diff --git a/src/x87/macro-assembler-x87.cc b/src/x87/macro-assembler-x87.cc |
index 80ce32c567fb08b8768fb4eeda05d0e6f0d89949..47a46d4e3697d6b9f58dca6d22264dcd43a59bad 100644 |
--- a/src/x87/macro-assembler-x87.cc |
+++ b/src/x87/macro-assembler-x87.cc |
@@ -243,8 +243,8 @@ void MacroAssembler::TruncateX87TOSToI(Register result_reg) { |
void MacroAssembler::X87TOSToI(Register result_reg, |
MinusZeroMode minus_zero_mode, |
- Label* conversion_failed, |
- Label::Distance dst) { |
+ Label* lost_precision, Label* is_nan, |
+ Label* minus_zero, Label::Distance dst) { |
Label done; |
sub(esp, Immediate(kPointerSize)); |
fld(0); |
@@ -252,8 +252,8 @@ void MacroAssembler::X87TOSToI(Register result_reg, |
fild_s(MemOperand(esp, 0)); |
pop(result_reg); |
FCmp(); |
- j(not_equal, conversion_failed, dst); |
- j(parity_even, conversion_failed, dst); |
+ j(not_equal, lost_precision, dst); |
+ j(parity_even, is_nan, dst); |
if (minus_zero_mode == FAIL_ON_MINUS_ZERO) { |
test(result_reg, Operand(result_reg)); |
j(not_zero, &done, Label::kNear); |
@@ -263,7 +263,7 @@ void MacroAssembler::X87TOSToI(Register result_reg, |
fst_s(MemOperand(esp, 0)); |
pop(result_reg); |
test(result_reg, Operand(result_reg)); |
- j(not_zero, conversion_failed, dst); |
+ j(not_zero, minus_zero, dst); |
} |
bind(&done); |
} |