Reviewers: Erik Corry,

Description:
Add fast check for NaN in NumberCompare slow case.

Please review this at http://codereview.chromium.org/344010

SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/

Affected files:
   M     src/runtime.js


Index: src/runtime.js
===================================================================
--- src/runtime.js      (revision 3152)
+++ src/runtime.js      (working copy)
@@ -128,7 +128,10 @@
    if (IS_STRING(a) && IS_STRING(b)) {
      return %StringCompare(a, b);
    } else {
-    return %NumberCompare(%ToNumber(a), %ToNumber(b), ncr);
+    var a_number = %ToNumber(a);
+    var b_number = %ToNumber(b);
+    if (NUMBER_IS_NAN(a_number) || NUMBER_IS_NAN(b_number)) return ncr;
+    return %NumberCompare(a_number, b_number, ncr);
    }
  }




--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to