"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "js/src/jit/MIR.h" between
firefox-68.4.0esr.source.tar.xz and firefox-68.4.1esr.source.tar.xz

About: Firefox is Mozilla’s standalone Web browser. Extended Support Release. Source code.

MIR.h  (firefox-68.4.0esr.source.tar.xz):MIR.h  (firefox-68.4.1esr.source.tar.xz)
skipping to change at line 7795 skipping to change at line 7795
: MQuaternaryInstruction(classOpcode, object, elements, index, value) { : MQuaternaryInstruction(classOpcode, object, elements, index, value) {
MOZ_ASSERT(elements->type() == MIRType::Elements); MOZ_ASSERT(elements->type() == MIRType::Elements);
MOZ_ASSERT(index->type() == MIRType::Int32); MOZ_ASSERT(index->type() == MIRType::Int32);
} }
public: public:
INSTRUCTION_HEADER(StoreElementHole) INSTRUCTION_HEADER(StoreElementHole)
TRIVIAL_NEW_WRAPPERS TRIVIAL_NEW_WRAPPERS
NAMED_OPERANDS((0, object), (1, elements), (2, index), (3, value)) NAMED_OPERANDS((0, object), (1, elements), (2, index), (3, value))
AliasSet getAliasSet() const override {
// StoreElementHole can update the initialized length, the array length
// or reallocate obj->elements.
return AliasSet::Store(AliasSet::ObjectFields | AliasSet::Element);
}
ALLOW_CLONE(MStoreElementHole) ALLOW_CLONE(MStoreElementHole)
}; };
// Try to store a value to a dense array slots vector. May fail due to the // Try to store a value to a dense array slots vector. May fail due to the
// object being non-extensible/sealed/frozen. Cannot be used on an object that // object being non-extensible/sealed/frozen. Cannot be used on an object that
// has extra indexed properties. // has extra indexed properties.
class MFallibleStoreElement class MFallibleStoreElement
: public MQuaternaryInstruction, : public MQuaternaryInstruction,
public MStoreElementCommon, public MStoreElementCommon,
public MixPolicy<SingleObjectPolicy, NoFloatPolicy<3>>::Data { public MixPolicy<SingleObjectPolicy, NoFloatPolicy<3>>::Data {
skipping to change at line 7827 skipping to change at line 7821
needsHoleCheck_(needsHoleCheck) { needsHoleCheck_(needsHoleCheck) {
MOZ_ASSERT(elements->type() == MIRType::Elements); MOZ_ASSERT(elements->type() == MIRType::Elements);
MOZ_ASSERT(index->type() == MIRType::Int32); MOZ_ASSERT(index->type() == MIRType::Int32);
} }
public: public:
INSTRUCTION_HEADER(FallibleStoreElement) INSTRUCTION_HEADER(FallibleStoreElement)
TRIVIAL_NEW_WRAPPERS TRIVIAL_NEW_WRAPPERS
NAMED_OPERANDS((0, object), (1, elements), (2, index), (3, value)) NAMED_OPERANDS((0, object), (1, elements), (2, index), (3, value))
AliasSet getAliasSet() const override {
return AliasSet::Store(AliasSet::ObjectFields | AliasSet::Element);
}
bool needsHoleCheck() const { return needsHoleCheck_; } bool needsHoleCheck() const { return needsHoleCheck_; }
ALLOW_CLONE(MFallibleStoreElement) ALLOW_CLONE(MFallibleStoreElement)
}; };
// Store an unboxed object or null pointer to an elements vector. // Store an unboxed object or null pointer to an elements vector.
class MStoreUnboxedObjectOrNull : public MQuaternaryInstruction, class MStoreUnboxedObjectOrNull : public MQuaternaryInstruction,
public StoreUnboxedObjectOrNullPolicy::Data { public StoreUnboxedObjectOrNullPolicy::Data {
int32_t offsetAdjustment_; int32_t offsetAdjustment_;
bool preBarrier_; bool preBarrier_;
 End of changes. 2 change blocks. 
9 lines changed or deleted 0 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)