http://codereview.chromium.org/5640004/diff/10001/src/assembler.cc File src/assembler.cc (right):
http://codereview.chromium.org/5640004/diff/10001/src/assembler.cc#newcode801 src/assembler.cc:801: It would be good to not duplicate code between here and runtime.cc. http://codereview.chromium.org/5640004/diff/10001/src/hydrogen-instructions.h File src/hydrogen-instructions.h (right): http://codereview.chromium.org/5640004/diff/10001/src/hydrogen-instructions.h#newcode2199 src/hydrogen-instructions.h:2199: virtual bool EmitAtUses() const { return uses()->length() <= 1; } I don't think you need to override this here. We only use it for constants and compare-operations. http://codereview.chromium.org/5640004/diff/10001/src/ia32/lithium-codegen-ia32.cc File src/ia32/lithium-codegen-ia32.cc (right): http://codereview.chromium.org/5640004/diff/10001/src/ia32/lithium-codegen-ia32.cc#newcode2198 src/ia32/lithium-codegen-ia32.cc:2198: __ CallCFunction(ExternalReference::double_fp_operation(Token::BIT_XOR), 4); I'd write this as ExternalReference::pow() http://codereview.chromium.org/5640004/diff/10001/src/ia32/lithium-codegen-ia32.cc#newcode2203 src/ia32/lithium-codegen-ia32.cc:2203: __ CallCFunction(ExternalReference::double_fp_operation(Token::BIT_OR), 4); and here sth like ExternalReference::powi(), not need to use Tokens here. http://codereview.chromium.org/5640004/diff/10001/src/ia32/lithium-codegen-ia32.cc#newcode2205 src/ia32/lithium-codegen-ia32.cc:2205: ASSERT(instr->exponent_type().IsTagged()); Maybe you can re-use the NumberUntagD instruction here and generate two instructions when generating the lithium-IR. http://codereview.chromium.org/5640004/ -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
