mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
adjustCallerTypes does not aggressively undemote globals anymore (bug 496482, r=dvander). relanding
This commit is contained in:
parent
b43077c19f
commit
848b955635
@ -2409,8 +2409,11 @@ TraceRecorder::adjustCallerTypes(Fragment* f)
|
||||
FORALL_GLOBAL_SLOTS(cx, ngslots, gslots,
|
||||
LIns* i = get(vp);
|
||||
bool isPromote = isPromoteInt(i);
|
||||
if (isPromote && *m == JSVAL_DOUBLE)
|
||||
if (isPromote && *m == JSVAL_DOUBLE) {
|
||||
lir->insStorei(get(vp), lirbuf->state, nativeGlobalOffset(vp));
|
||||
/* Aggressively undo speculation so the inner tree will compile if this fails. */
|
||||
oracle.markGlobalSlotUndemotable(cx, gslots[n]);
|
||||
}
|
||||
JS_ASSERT(!(!isPromote && *m == JSVAL_INT));
|
||||
++m;
|
||||
);
|
||||
|
Loading…
Reference in New Issue
Block a user