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 -~----------~----~----~----~------~----~------~--~---
