LGTM, with comments.

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc
File src/arm/lithium-codegen-arm.cc (right):

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1384
src/arm/lithium-codegen-arm.cc:1384: // the temp registers, but not the
input. Only input and temp2 may alias.
input is trashed if temp2 aliases it.

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1398
src/arm/lithium-codegen-arm.cc:1398:
How about just

// temp:  map of input
// temp2: object type of input

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1412
src/arm/lithium-codegen-arm.cc:1412: __ ldr(temp, FieldMemOperand(temp,
Map::kConstructorOffset));
After this

// temp: constructor

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1427
src/arm/lithium-codegen-arm.cc:1427:
Change comment to

// Get the instance class name from the constructor.

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1444
src/arm/lithium-codegen-arm.cc:1444: void
LCodeGen::DoClassOfTest(LClassOfTest* instr) {
Maybe implement this now you have done EmitClassOfTest.

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1454
src/arm/lithium-codegen-arm.cc:1454: // Swap.
There is a Swap instruction in the macro assembler.

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1855
src/arm/lithium-codegen-arm.cc:1855: DoubleRegister input_reg =
ToDoubleRegister(instr->input());
input_reg -> input?

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1856
src/arm/lithium-codegen-arm.cc:1856: SwVfpRegister
single_precision_scratch = s0;
Please add double_scratch0() and single_scratch0() (and perhaps
single_scratch1()) like scratch0().

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1861
src/arm/lithium-codegen-arm.cc:1861: //  - Set rounding mode to "Round
towards Minus Infinity"
No need to refer to specific bit numbers in the comments.

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1865
src/arm/lithium-codegen-arm.cc:1865: __ vmrs(scratch);
Don't we need to backup and restore FPSCR here? Thats done in
CallStubCompiler::CompileMathFloorCall.

http://codereview.chromium.org/6124005/diff/1/src/arm/lithium-codegen-arm.cc#newcode1888
src/arm/lithium-codegen-arm.cc:1888: DoubleRegister input_reg =
ToDoubleRegister(instr->input());
input_reg -> input?

http://codereview.chromium.org/6124005/

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

Reply via email to