| Index: runtime/vm/flow_graph_compiler_ia32.cc
|
| ===================================================================
|
| --- runtime/vm/flow_graph_compiler_ia32.cc (revision 29983)
|
| +++ runtime/vm/flow_graph_compiler_ia32.cc (working copy)
|
| @@ -1624,7 +1624,9 @@
|
| Register result) {
|
| assembler()->comisd(left, right);
|
| Label is_false, is_true, done;
|
| - assembler()->j(PARITY_EVEN, &is_false, Assembler::kNearJump); // NaN false;
|
| + // x == NaN -> false, x != NaN -> true.
|
| + Label* nan_label = (true_condition == NOT_EQUAL) ? &is_true : &is_false;
|
| + assembler()->j(PARITY_EVEN, nan_label, Assembler::kNearJump);
|
| assembler()->j(true_condition, &is_true, Assembler::kNearJump);
|
| assembler()->Bind(&is_false);
|
| assembler()->LoadObject(result, Bool::False());
|
|
|