Bug 1417399 - Remove unnecessary checks for lazy link stub in LazyLinkTopActivation. r=nbp

--HG--
extra : rebase_source : 1be7cb018b682833c2e182fa1c62d4e18769e283
This commit is contained in:
Jan de Mooij 2017-11-22 13:06:02 +01:00
Родитель 038ba8c7c4
Коммит cbb37dbb2b
3 изменённых файлов: 3 добавлений и 20 удалений

Просмотреть файл

@ -8029,8 +8029,6 @@ JitRuntime::generateLazyLinkStub(MacroAssembler& masm)
masm.popReturnAddress();
#endif
masm.jump(ReturnReg);
lazyLinkStubEndOffset_ = masm.currentOffset();
}
void

Просмотреть файл

@ -203,7 +203,6 @@ JitRuntime::JitRuntime(JSRuntime* rt)
argumentsRectifierReturnOffset_(0),
invalidatorOffset_(0),
lazyLinkStubOffset_(0),
lazyLinkStubEndOffset_(0),
interpreterStubOffset_(0),
debugTrapHandler_(nullptr),
baselineDebugModeOSRHandler_(nullptr),
@ -2799,17 +2798,8 @@ InvalidateActivation(FreeOp* fop, const JitActivationIterator& activations, bool
if (!frame.isIonScripted())
continue;
JitRuntime* jrt = fop->runtime()->jitRuntime();
bool calledFromLinkStub = false;
if (frame.returnAddressToFp() >= jrt->lazyLinkStub().value &&
frame.returnAddressToFp() < jrt->lazyLinkStubEnd().value)
{
calledFromLinkStub = true;
}
// See if the frame has already been invalidated.
if (!calledFromLinkStub && frame.checkInvalidation())
if (frame.checkInvalidation())
continue;
JSScript* script = frame.script();
@ -2866,9 +2856,8 @@ InvalidateActivation(FreeOp* fop, const JitActivationIterator& activations, bool
}
ionCode->setInvalidated();
// Don't adjust OSI points in the linkStub (which don't exist), or in a
// bailout path.
if (calledFromLinkStub || frame.isBailoutJS())
// Don't adjust OSI points in a bailout path.
if (frame.isBailoutJS())
continue;
// Write the delta (from the return address offset to the

Просмотреть файл

@ -134,7 +134,6 @@ class JitRuntime
// Thunk called to finish compilation of an IonScript.
ExclusiveAccessLockWriteOnceData<uint32_t> lazyLinkStubOffset_;
ExclusiveAccessLockWriteOnceData<uint32_t> lazyLinkStubEndOffset_;
// Thunk to enter the interpreter from JIT code.
ExclusiveAccessLockWriteOnceData<uint32_t> interpreterStubOffset_;
@ -315,9 +314,6 @@ class JitRuntime
TrampolinePtr lazyLinkStub() const {
return trampolineCode(lazyLinkStubOffset_);
}
TrampolinePtr lazyLinkStubEnd() const {
return trampolineCode(lazyLinkStubEndOffset_);
}
TrampolinePtr interpreterStub() const {
return trampolineCode(interpreterStubOffset_);
}