Here are my comments.

Since I'm not so familiar with the scopes-code, Kevin should have a look, too.


http://codereview.chromium.org/5753005/diff/1/src/compiler.cc
File src/compiler.cc (right):

http://codereview.chromium.org/5753005/diff/1/src/compiler.cc#newcode168
src/compiler.cc:168: if (!info->AllowOptimize())
info->DisableOptimization();
This checks if the function literal's scope has any heap allocated
slots. So I think this check can go away with your change.

http://codereview.chromium.org/5753005/diff/1/src/hydrogen-instructions.h
File src/hydrogen-instructions.h (right):

http://codereview.chromium.org/5753005/diff/1/src/hydrogen-instructions.h#newcode2520
src/hydrogen-instructions.h:2520: virtual Representation
RequiredInputRepresentation(int index) const {
Since HLoadContextSlot does not have any input operands, you do not need
to implement RequiredInputRepresentation.

http://codereview.chromium.org/5753005/diff/1/src/hydrogen.cc
File src/hydrogen.cc (right):

http://codereview.chromium.org/5753005/diff/1/src/hydrogen.cc#newcode2372
src/hydrogen.cc:2372: if (scope->num_heap_slots() > 0) BAILOUT("heap
allocated locals");
I think this bailout can go away, too.

http://codereview.chromium.org/5753005/diff/1/src/hydrogen.cc#newcode2934
src/hydrogen.cc:2934: variable->AsSlot()->type() == Slot::CONTEXT) {
Indentation.

http://codereview.chromium.org/5753005/diff/1/src/ia32/lithium-ia32.h
File src/ia32/lithium-ia32.h (right):

http://codereview.chromium.org/5753005/diff/1/src/ia32/lithium-ia32.h#newcode1287
src/ia32/lithium-ia32.h:1287: public:
Please also implement the PrintDataTo function.

http://codereview.chromium.org/5753005/diff/1/src/objects-inl.h
File src/objects-inl.h (right):

http://codereview.chromium.org/5753005/diff/1/src/objects-inl.h#newcode2987
src/objects-inl.h:2987: void SharedFunctionInfo::set_code(Code* value,
WriteBarrierMode mode) {
I'm not sure why is this assert not needed anymore? (I'm also not sure
why is was needed before)

http://codereview.chromium.org/5753005/diff/1/test/cctest/cctest.status
File test/cctest/cctest.status (right):

http://codereview.chromium.org/5753005/diff/1/test/cctest/cctest.status#newcode32
test/cctest/cctest.status:32: # The problem is code object can get
different optimizable flag in crankshaft after creation.
# The problem is that a code object can get a different
# optimizable flag in crankshaft after creation.

http://codereview.chromium.org/5753005/

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

Reply via email to