Changeset 218203 in webkit


Ignore:
Timestamp:
Jun 13, 2017 2:52:04 PM (7 years ago)
Author:
msaboff@apple.com
Message:

DFG doesn't properly handle a property that is change to read only in a prototype
https://bugs.webkit.org/show_bug.cgi?id=173321

Reviewed by Filip Pizlo.

JSTests:

  • ChakraCore.yaml: Renabled fieldopts/objtypespec-newobj-invalidation.1.js.
  • stress/regress-173321.js: Added new regression test.

(shouldBe):
(SimpleObject):
(test):

Source/JavaScriptCore:

We need to check for ReadOnly as well as a not being a Setter when checking
an AbsenceOfSetter.

  • bytecode/PropertyCondition.cpp:

(JSC::PropertyCondition::isStillValidAssumingImpurePropertyWatchpoint):

Location:
trunk
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/JSTests/ChakraCore.yaml

    r215395 r218203  
    20452045  cmd: runChakra :baseline, "NoException", "objtypespec-newobj.2.baseline", []
    20462046- path: ChakraCore/test/fieldopts/objtypespec-newobj-invalidation.1.js
    2047   # FIXME: Re-enable once flakiness is resolved (https://bugs.webkit.org/show_bug.cgi?id=162567)
    2048   cmd: runChakra :skip, "NoException", "objtypespec-newobj-invalidation.1.baseline", []
     2047  cmd: runChakra :baseline, "NoException", "objtypespec-newobj-invalidation.1.baseline", []
    20492048- path: ChakraCore/test/fieldopts/objtypespec-newobj-invalidation.2.js
    20502049  # Different behavior when run on 32 bit JSC.
  • trunk/JSTests/ChangeLog

    r218141 r218203  
     12017-06-13  Michael Saboff  <msaboff@apple.com>
     2
     3        DFG doesn't properly handle a property that is change to read only in a prototype
     4        https://bugs.webkit.org/show_bug.cgi?id=173321
     5
     6        Reviewed by Filip Pizlo.
     7
     8        * ChakraCore.yaml: Renabled fieldopts/objtypespec-newobj-invalidation.1.js.
     9        * stress/regress-173321.js: Added new regression test.
     10        (shouldBe):
     11        (SimpleObject):
     12        (test):
     13
    1142017-06-12  Saam Barati  <sbarati@apple.com>
    215
  • trunk/Source/JavaScriptCore/ChangeLog

    r218196 r218203  
     12017-06-13  Michael Saboff  <msaboff@apple.com>
     2
     3        DFG doesn't properly handle a property that is change to read only in a prototype
     4        https://bugs.webkit.org/show_bug.cgi?id=173321
     5
     6        Reviewed by Filip Pizlo.
     7
     8        We need to check for ReadOnly as well as a not being a Setter when checking
     9        an AbsenceOfSetter.
     10
     11        * bytecode/PropertyCondition.cpp:
     12        (JSC::PropertyCondition::isStillValidAssumingImpurePropertyWatchpoint):
     13
    1142017-06-13  Daniel Bates  <dabates@apple.com>
    215
  • trunk/Source/JavaScriptCore/bytecode/PropertyCondition.cpp

    r211247 r218203  
    135135        PropertyOffset currentOffset = structure->getConcurrently(uid(), currentAttributes);
    136136        if (currentOffset != invalidOffset) {
    137             if (currentAttributes & (Accessor | CustomAccessor)) {
     137            // FIXME: Given the addition of the check for ReadOnly attributes, we should refactor
     138            // instances of AbsenceOfSetter.
     139            // https://bugs.webkit.org/show_bug.cgi?id=173322 - Refactor AbsenceOfSetter to something like AbsenceOfSetEffects
     140            if (currentAttributes & (ReadOnly | Accessor | CustomAccessor)) {
    138141                if (verbose) {
    139142                    dataLog(
Note: See TracChangeset for help on using the changeset viewer.