Added new patch set. Landed.

https://chromiumcodereview.appspot.com/9403018/diff/1/src/arm/lithium-codegen-arm.cc
File src/arm/lithium-codegen-arm.cc (right):

https://chromiumcodereview.appspot.com/9403018/diff/1/src/arm/lithium-codegen-arm.cc#newcode4385
src/arm/lithium-codegen-arm.cc:4385: bool has_elements =
elements->length() > 0 &&
On 2012/02/16 16:09:37, danno wrote:
The empty fixed array should always be used when the length is zero,
and it's
also COW. You could optionally add some asserts.

Actually adding an assertion that all non-COW arrays have length > 0
fails all over the place. As discussed offline I will leave the current
check in. I'll investigate where those "empty non-COW arrays" come from.

https://chromiumcodereview.appspot.com/9403018/diff/1/src/arm/lithium-codegen-arm.cc#newcode4403
src/arm/lithium-codegen-arm.cc:4403: __ str(r2, FieldMemOperand(result,
object_offset + i));
On 2012/02/16 16:09:37, danno wrote:
The store is the same and can be moved out of the if.

Done.

https://chromiumcodereview.appspot.com/9403018/diff/1/src/hydrogen.cc
File src/hydrogen.cc (right):

https://chromiumcodereview.appspot.com/9403018/diff/1/src/hydrogen.cc#newcode3447
src/hydrogen.cc:3447: if (max_depth <= 0) return false;
On 2012/02/16 16:09:37, danno wrote:
Don't you want to return on 0 and assert that it's not negative?

Done.

https://chromiumcodereview.appspot.com/9403018/diff/1/src/hydrogen.cc#newcode3451
src/hydrogen.cc:3451: elements->map() !=
boilerplate->GetHeap()->fixed_cow_array_map()) {
On 2012/02/16 16:09:37, danno wrote:
length check unnecessary.

See response to first comment.

https://chromiumcodereview.appspot.com/9403018/diff/1/src/mips/lithium-codegen-mips.cc
File src/mips/lithium-codegen-mips.cc (right):

https://chromiumcodereview.appspot.com/9403018/diff/1/src/mips/lithium-codegen-mips.cc#newcode4295
src/mips/lithium-codegen-mips.cc:4295: __ sw(a2, FieldMemOperand(result,
object_offset + i));
On 2012/02/16 16:09:37, danno wrote:
Factor our after if

Done.

https://chromiumcodereview.appspot.com/9403018/diff/1/src/x64/lithium-codegen-x64.cc
File src/x64/lithium-codegen-x64.cc (right):

https://chromiumcodereview.appspot.com/9403018/diff/1/src/x64/lithium-codegen-x64.cc#newcode3999
src/x64/lithium-codegen-x64.cc:3999: __ movq(FieldOperand(result,
object_offset + i), rcx);
On 2012/02/16 16:09:37, danno wrote:
After if

Done.

https://chromiumcodereview.appspot.com/9403018/

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

Reply via email to