| Index: src/compiler/access-info.h
|
| diff --git a/src/compiler/access-info.h b/src/compiler/access-info.h
|
| index bca7d5d83757432296d7f0b6562a7dd180fae125..b6d68c740e8efefef39d2d109217944a8ece57fc 100644
|
| --- a/src/compiler/access-info.h
|
| +++ b/src/compiler/access-info.h
|
| @@ -55,7 +55,13 @@ class ElementAccessInfo final {
|
| // object property, either on the object itself or on the prototype chain.
|
| class PropertyAccessInfo final {
|
| public:
|
| - enum Kind { kInvalid, kNotFound, kDataConstant, kDataField };
|
| + enum Kind {
|
| + kInvalid,
|
| + kNotFound,
|
| + kDataConstant,
|
| + kDataField,
|
| + kAccessorConstant
|
| + };
|
|
|
| static PropertyAccessInfo NotFound(MapList const& receiver_maps,
|
| MaybeHandle<JSObject> holder);
|
| @@ -66,6 +72,9 @@ class PropertyAccessInfo final {
|
| MapList const& receiver_maps, FieldIndex field_index, Type* field_type,
|
| MaybeHandle<JSObject> holder = MaybeHandle<JSObject>(),
|
| MaybeHandle<Map> transition_map = MaybeHandle<Map>());
|
| + static PropertyAccessInfo AccessorConstant(MapList const& receiver_maps,
|
| + Handle<Object> constant,
|
| + MaybeHandle<JSObject> holder);
|
|
|
| PropertyAccessInfo();
|
|
|
| @@ -74,6 +83,7 @@ class PropertyAccessInfo final {
|
| bool IsNotFound() const { return kind() == kNotFound; }
|
| bool IsDataConstant() const { return kind() == kDataConstant; }
|
| bool IsDataField() const { return kind() == kDataField; }
|
| + bool IsAccessorConstant() const { return kind() == kAccessorConstant; }
|
|
|
| bool HasTransitionMap() const { return !transition_map().is_null(); }
|
|
|
| @@ -88,8 +98,8 @@ class PropertyAccessInfo final {
|
| private:
|
| PropertyAccessInfo(MaybeHandle<JSObject> holder,
|
| MapList const& receiver_maps);
|
| - PropertyAccessInfo(MaybeHandle<JSObject> holder, Handle<Object> constant,
|
| - MapList const& receiver_maps);
|
| + PropertyAccessInfo(Kind kind, MaybeHandle<JSObject> holder,
|
| + Handle<Object> constant, MapList const& receiver_maps);
|
| PropertyAccessInfo(MaybeHandle<JSObject> holder,
|
| MaybeHandle<Map> transition_map, FieldIndex field_index,
|
| Type* field_type, MapList const& receiver_maps);
|
|
|