Only had a quick look but looks good to me as well.

http://codereview.chromium.org/6594037/diff/1/src/builtins.h
File src/builtins.h (right):

http://codereview.chromium.org/6594037/diff/1/src/builtins.h#newcode154
src/builtins.h:154: V(KeyedStoreIC_Initialize_Strict,   KEYED_STORE_IC,
UNINITIALIZED,      \
This is the reason why I don't like indentation like this. Either we
should indent them all so they align or we should drop the alignment
altogether.

http://codereview.chromium.org/6594037/diff/1/src/ic.cc
File src/ic.cc (right):

http://codereview.chromium.org/6594037/diff/1/src/ic.cc#newcode1485
src/ic.cc:1485: // Strict mode doesn't allow setting non-existent global
property.
Update comment to reflect the read-only part of this code.

http://codereview.chromium.org/6594037/diff/1/src/ic.cc#newcode1488
src/ic.cc:1488: return TypeError("strict_rdonly_property", object,
name);
Please don't abbreviate read to rd.

http://codereview.chromium.org/6594037/diff/1/src/ic.cc#newcode1868
src/ic.cc:1868: //
On 2011/02/28 11:18:30, Lasse Reichstein wrote:
I don't know. Do you have a way to reproduce the problem?

I would be interested in knowing what fails here as well.

My guess here would be lazy deoptimization. If SetProperty performs a
call to something that either force deletes a property or enters the
debugger, then we will destroy the code object (overwriting return
points with a call to deoptimization). Therefore the target will be
invalid at this point.

So, overall, the assert at this point will not work. We should never,
ever use target() or set_target() after we have invoked something that
can call arbitrary code (such as GetProperty, SetProperty). I don't
think we do, but if we do that will be bad in the presence of lazy
deoptimization.

http://codereview.chromium.org/6594037/

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

Reply via email to