Thanks a lot, gentlemen. @Vitaly: yes, we have: test/mjsunit/regress/regress-503.js and t/m/compare-nan.js. Plus I hope Sputnik would catch any harm I might have produced.
http://codereview.chromium.org/1558040/diff/1/2 File src/ia32/codegen-ia32.cc (right): http://codereview.chromium.org/1558040/diff/1/2#newcode11060 src/ia32/codegen-ia32.cc:11060: static int NanComparisionResult(Condition cc) { On 2010/04/12 10:25:36, Mads Ager wrote:
It seems you should give this a more general name. You really use
this to get
the negative result for both 'undefined' and 'NaN'.
Renamed to NegativeComparisonResult http://codereview.chromium.org/1558040/diff/1/2#newcode11075 src/ia32/codegen-ia32.cc:11075: // for Nan and undefined. On 2010/04/12 07:37:45, Vitaly wrote:
nit: NaN.
Done. http://codereview.chromium.org/1558040/diff/1/2#newcode11082 src/ia32/codegen-ia32.cc:11082: // Check for undefined. On 2010/04/12 07:37:45, Vitaly wrote:
It might help to have a short summary of undefined comparison rules
here:
undefined == undefined, but not undefined <= undefined, etc.
Done. http://codereview.chromium.org/1558040/diff/1/2#newcode11095 src/ia32/codegen-ia32.cc:11095: __ Set(eax, Immediate(0)); On 2010/04/12 07:37:45, Vitaly wrote:
Use Smi::FromInt(EQUAL) instead of 0.
Done. http://codereview.chromium.org/1558040/diff/1/2#newcode11102 src/ia32/codegen-ia32.cc:11102: Immediate(Factory::heap_number_map())); On 2010/04/12 07:37:45, Vitaly wrote:
nit: Indent.
Done. http://codereview.chromium.org/1558040/diff/1/2#newcode11127 src/ia32/codegen-ia32.cc:11127: __ setcc(above_equal, eax); On 2010/04/12 07:37:45, Vitaly wrote:
ASSERT(1 != EQUAL).
Done. http://codereview.chromium.org/1558040/show -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev To unsubscribe, reply using "remove me" as the subject.
