mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 831349 - Reset Ion cache flags when flushed. r=dvander
This commit is contained in:
parent
10fbe8611b
commit
c7e069d8a8
@ -1017,6 +1017,14 @@ GetPropertyIC::update(JSContext *cx, size_t cacheIndex,
|
||||
return true;
|
||||
}
|
||||
|
||||
void
|
||||
GetPropertyIC::reset()
|
||||
{
|
||||
IonCache::reset();
|
||||
hasArrayLengthStub_ = false;
|
||||
hasTypedArrayLengthStub_ = false;
|
||||
}
|
||||
|
||||
void
|
||||
IonCache::updateBaseAddress(IonCode *code, MacroAssembler &masm)
|
||||
{
|
||||
@ -1742,6 +1750,13 @@ GetElementIC::update(JSContext *cx, size_t cacheIndex, HandleObject obj,
|
||||
return true;
|
||||
}
|
||||
|
||||
void
|
||||
GetElementIC::reset()
|
||||
{
|
||||
IonCache::reset();
|
||||
hasDenseStub_ = false;
|
||||
}
|
||||
|
||||
bool
|
||||
BindNameIC::attachGlobal(JSContext *cx, IonScript *ion, JSObject *scopeChain)
|
||||
{
|
||||
|
@ -221,7 +221,7 @@ class IonCache
|
||||
void updateBaseAddress(IonCode *code, MacroAssembler &masm);
|
||||
|
||||
// Reset the cache around garbage collection.
|
||||
void reset();
|
||||
virtual void reset();
|
||||
|
||||
bool canAttachStub() const {
|
||||
return stubCount_ < MAX_STUBS;
|
||||
@ -322,6 +322,8 @@ class GetPropertyIC : public IonCache
|
||||
|
||||
CACHE_HEADER(GetProperty)
|
||||
|
||||
void reset();
|
||||
|
||||
Register object() const {
|
||||
return object_;
|
||||
}
|
||||
@ -433,6 +435,8 @@ class GetElementIC : public IonCache
|
||||
|
||||
CACHE_HEADER(GetElement)
|
||||
|
||||
void reset();
|
||||
|
||||
Register object() const {
|
||||
return object_;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user