Fix redefining of attributes on aliased arguments.
authormstarzinger@chromium.org <mstarzinger@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 24 Feb 2012 14:34:01 +0000 (14:34 +0000)
committermstarzinger@chromium.org <mstarzinger@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 24 Feb 2012 14:34:01 +0000 (14:34 +0000)
commit36a91e30f7cb3d12408a90cb5d5d73116fd65630
tree87a2334d33e7421e9743872ab26e498e790711bc
parent4a28808934aa46047dc7066fecd4a59d99e5ec85
Fix redefining of attributes on aliased arguments.

This allows elements of the non-strict arguments object to be redefined
with custom attributes and still maintain an alias into the context.
Such a slow alias is maintained by placing a special marker into the
dictionary backing store of the arguments object.

R=rossberg@chromium.org
BUG=v8:1772
TEST=test262,mjsunit/object-define-property

Review URL: https://chromiumcodereview.appspot.com/9460004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10827 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
include/v8.h
src/elements.cc
src/heap.cc
src/heap.h
src/objects-debug.cc
src/objects-inl.h
src/objects-printer.cc
src/objects.cc
src/objects.h
test/mjsunit/object-define-property.js
test/test262/test262.status