mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-21 01:05:45 +00:00
Bug 1545798 - Remove comments still referring to UnboxedObject. r=mgaudet
Depends on D28209 Differential Revision: https://phabricator.services.mozilla.com/D28210 --HG-- extra : moz-landing-system : lando
This commit is contained in:
parent
26624d1588
commit
eb360ed94b
@ -797,8 +797,7 @@ static bool TryAssignNative(JSContext* cx, HandleObject to, HandleObject from,
|
||||
shape = shapes[i - 1];
|
||||
nextKey = shape->propid();
|
||||
|
||||
// Ensure |from| is still native: a getter/setter might have turned
|
||||
// |from| or |to| into an unboxed object or it could have been swapped
|
||||
// Ensure |from| is still native: a getter/setter might have been swapped
|
||||
// with a non-native object.
|
||||
if (MOZ_LIKELY(from->isNative() &&
|
||||
from->as<NativeObject>().lastProperty() == fromShape &&
|
||||
@ -1436,8 +1435,7 @@ static bool TryEnumerableOwnPropertiesNative(JSContext* cx, HandleObject obj,
|
||||
Shape* shape = shapes[i - 1];
|
||||
id = shape->propid();
|
||||
|
||||
// Ensure |obj| is still native: a getter might have turned it
|
||||
// into an unboxed object or it could have been swapped with a
|
||||
// Ensure |obj| is still native: a getter might have been swapped with a
|
||||
// non-native object.
|
||||
if (obj->isNative() &&
|
||||
obj->as<NativeObject>().lastProperty() == objShape &&
|
||||
|
@ -337,7 +337,7 @@ class AliasSet {
|
||||
Element = 1 << 1, // A Value member of obj->elements or
|
||||
// a typed object.
|
||||
UnboxedElement = 1 << 2, // An unboxed scalar or reference member of
|
||||
// typed object or unboxed object.
|
||||
// typed object.
|
||||
DynamicSlot = 1 << 3, // A Value member of obj->slots.
|
||||
FixedSlot = 1 << 4, // A Value member of obj->fixedSlots().
|
||||
DOMProperty = 1 << 5, // A DOM property
|
||||
|
@ -3975,8 +3975,7 @@ void JSObject::addSizeOfExcludingThis(mozilla::MallocSizeOf mallocSizeOf,
|
||||
}
|
||||
|
||||
size_t JSObject::sizeOfIncludingThisInNursery() const {
|
||||
// This function doesn't concern itself yet with typed objects (bug 1133593)
|
||||
// nor unboxed objects (bug 1133592).
|
||||
// This function doesn't concern itself yet with typed objects (bug 1133593).
|
||||
|
||||
MOZ_ASSERT(!isTenured());
|
||||
|
||||
|
@ -114,10 +114,9 @@ class ObjectGroup : public gc::TenuredCell {
|
||||
* The type sets in the properties of a group describe the possible values
|
||||
* that can be read out of that property in actual JS objects. In native
|
||||
* objects, property types account for plain data properties (those with a
|
||||
* slot and no getter or setter hook) and dense elements. In typed objects
|
||||
* and unboxed objects, property types account for object and value
|
||||
* properties and elements in the object, and expando properties in unboxed
|
||||
* objects.
|
||||
* slot and no getter or setter hook) and dense elements. In typed objects,
|
||||
* property types account for object and value properties and elements in the
|
||||
* object.
|
||||
*
|
||||
* For accesses on these properties, the correspondence is as follows:
|
||||
*
|
||||
@ -140,10 +139,9 @@ class ObjectGroup : public gc::TenuredCell {
|
||||
* 2. Array lengths are special cased by the compiler and VM and are not
|
||||
* reflected in property types.
|
||||
*
|
||||
* 3. In typed objects (but not unboxed objects), the initial values of
|
||||
* properties (null pointers and undefined values) are not reflected in
|
||||
* the property types. These values are always possible when reading the
|
||||
* property.
|
||||
* 3. In typed objects, the initial values of properties (null pointers and
|
||||
* undefined values) are not reflected in the property types. These values
|
||||
* are always possible when reading the property.
|
||||
*
|
||||
* We establish these by using write barriers on calls to setProperty and
|
||||
* defineProperty which are on native properties, and on any jitcode which
|
||||
|
@ -255,12 +255,6 @@ class TemporaryTypeSet;
|
||||
* the new group. When this occurs, the properties of the old and new group
|
||||
* will both be marked as unknown, which will prevent Ion from optimizing
|
||||
* based on the object's type information.
|
||||
*
|
||||
* - If an unboxed object is converted to a native object, its group will also
|
||||
* change and type sets containing the old group will not necessarily contain
|
||||
* the new group. Unlike the above case, this will not degrade property type
|
||||
* information, but Ion will no longer optimize unboxed objects with the old
|
||||
* group.
|
||||
*/
|
||||
class TypeSet {
|
||||
protected:
|
||||
|
Loading…
Reference in New Issue
Block a user