http://codereview.chromium.org/150226/diff/5/1006 File src/arm/codegen-arm.cc (right):
http://codereview.chromium.org/150226/diff/5/1006#newcode3187 Line 3187: null.Branch(eq); Ideally I'd like to do this as a conditional move followed by a conditional branch to done, but how to explain that to the register allocator? http://codereview.chromium.org/150226/diff/5/1006#newcode3193 Line 3193: __ cmp(r1, Operand(FIRST_JS_OBJECT_TYPE)); You can do these 3 in one with __ CompareObjectType(r0, r0, r1, JS_OBJECT_TYPE) http://codereview.chromium.org/150226/diff/5/1006#newcode3206 Line 3206: __ CompareObjectType(r0, r1, r1, JS_FUNCTION_TYPE); r0 = Object. r1 = Map. r1 = type (overwrites map) Is that what you wanted? http://codereview.chromium.org/150226/diff/5/1006#newcode3209 Line 3209: // The map register now contains the constructor function. Grab the Map register is r0? I think r0 is the constructor here. http://codereview.chromium.org/150226/diff/5/1005 File src/x64/codegen-x64.cc (right): http://codereview.chromium.org/150226/diff/5/1005#newcode3378 Line 3378: __ testl(obj.reg(), Immediate(kSmiTagMask)); Do we need an l here? Will that preclude an 8 bit immediate being used? http://codereview.chromium.org/150226/diff/5/1005#newcode3386 Line 3386: __ cmpb(tmp.reg(), Immediate(FIRST_JS_OBJECT_TYPE)); CmpObjectType? http://codereview.chromium.org/150226 --~--~---------~--~----~------------~-------~--~----~ v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev -~----------~----~----~----~------~----~------~--~---
