Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(868)

Issue 10539004: MIPS: Implement correct checking for inherited readonliness on assignment. (Closed)

Created:
8 years, 6 months ago by rossberg
Modified:
8 years, 6 months ago
Reviewers:
CC:
v8-dev
Visibility:
Public.

Description

MIPS: Implement correct checking for inherited readonliness on assignment. Port r11694 (29aa05e9) Original commit message: Implement correct checking for inherited readonliness on assignment. Removes 6 out of 8 of our remaining unintentional failures on test262. Also fixes treatment of inherited setters added after the fact. Specifically: - In the runtime, when looking for setter callbacks in the prototype chain, also look for read-only properties. If one is found, reject (exception in strict mode). If a proxy is found, invoke proper trap. Note: this folds in the CanPut function from the spec and avoids an extra lookup over the prototype chain. - In generated code for stores, insert a test for the maps from the prototype chain, but only up to the object where the property already exists (which may be the object itself). In Hydrogen, if the found property is read-only or not cacheable (e.g. a proxy), bail out; in a stub, generate an unconditional miss (to get an exception in strict mode). - Add test cases and adapt existing test expectations. BUG= TEST= Committed: https://code.google.com/p/v8/source/detail?r=11717

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+64 lines, -13 lines) Patch
M src/mips/stub-cache-mips.cc View 7 chunks +64 lines, -13 lines 0 comments Download

Powered by Google App Engine
This is Rietveld 408576698