summaryrefslogtreecommitdiffstats
path: root/js/src/jit
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@wolfbeast.com>2019-06-25 20:24:34 +0000
committerwolfbeast <mcwerewolf@wolfbeast.com>2019-06-25 20:24:34 +0000
commit636901a4f56c0039fc922debbc48920b19ec0a71 (patch)
tree49fc404a2c6f91a6561f6677ccda6bf5edf1f72e /js/src/jit
parent083d840f32e6cee08c709408160dcbc802b600fc (diff)
downloadUXP-636901a4f56c0039fc922debbc48920b19ec0a71.tar
UXP-636901a4f56c0039fc922debbc48920b19ec0a71.tar.gz
UXP-636901a4f56c0039fc922debbc48920b19ec0a71.tar.lz
UXP-636901a4f56c0039fc922debbc48920b19ec0a71.tar.xz
UXP-636901a4f56c0039fc922debbc48920b19ec0a71.zip
Remove UnboxedObjects ObjectGroup addendum
Diffstat (limited to 'js/src/jit')
-rw-r--r--js/src/jit/MacroAssembler.cpp10
1 files changed, 2 insertions, 8 deletions
diff --git a/js/src/jit/MacroAssembler.cpp b/js/src/jit/MacroAssembler.cpp
index bc04e85cf..a739b9325 100644
--- a/js/src/jit/MacroAssembler.cpp
+++ b/js/src/jit/MacroAssembler.cpp
@@ -126,20 +126,14 @@ MacroAssembler::guardTypeSetMightBeIncomplete(TypeSet* types, Register obj, Regi
{
// Type set guards might miss when an object's group changes. In this case
// either its old group's properties will become unknown, or it will change
- // to a native object with an original unboxed group. Jump to label if this
- // might have happened for the input object.
+ // to a native object. Jump to label if this might have happened for the
+ // input object.
if (types->unknownObject()) {
jump(label);
return;
}
- loadPtr(Address(obj, JSObject::offsetOfGroup()), scratch);
- load32(Address(scratch, ObjectGroup::offsetOfFlags()), scratch);
- and32(Imm32(OBJECT_FLAG_ADDENDUM_MASK), scratch);
- branch32(Assembler::Equal,
- scratch, Imm32(ObjectGroup::addendumOriginalUnboxedGroupValue()), label);
-
for (size_t i = 0; i < types->getObjectCount(); i++) {
if (JSObject* singleton = types->getSingletonNoBarrier(i)) {
movePtr(ImmGCPtr(singleton), scratch);