mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-05 15:28:39 +09:00
Fixes.
Fixes.
This commit is contained in:
parent
6079c8fdb4
commit
2cfdd80caf
5 changed files with 2209 additions and 9 deletions
|
|
@ -2603,10 +2603,10 @@ OffsetToChunkEnd(void* p)
|
|||
|
||||
/* Insert the given relocation entry into the list of things to visit. */
|
||||
inline void
|
||||
js::TenuringTracer::insertIntoFixupList(RelocationOverlay* entry) {
|
||||
*tail = entry;
|
||||
tail = &entry->nextRef();
|
||||
*tail = nullptr;
|
||||
js::TenuringTracer::insertIntoObjectFixupList(RelocationOverlay* entry) {
|
||||
*objTail = entry;
|
||||
objTail = &entry->nextRef();
|
||||
*objTail = nullptr;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
|
|
@ -2706,7 +2706,7 @@ js::TenuringTracer::moveToTenuredSlow(JSObject* src)
|
|||
|
||||
RelocationOverlay* overlay = RelocationOverlay::fromCell(src);
|
||||
overlay->forwardTo(dst);
|
||||
insertIntoFixupList(overlay);
|
||||
insertIntoObjectFixupList(overlay);
|
||||
|
||||
MemProfiler::MoveNurseryToTenured(src, dst);
|
||||
TracePromoteToTenured(src, dst);
|
||||
|
|
@ -2739,7 +2739,7 @@ js::TenuringTracer::movePlainObjectToTenured(PlainObject* src)
|
|||
|
||||
RelocationOverlay* overlay = RelocationOverlay::fromCell(src);
|
||||
overlay->forwardTo(dst);
|
||||
insertIntoFixupList(overlay);
|
||||
insertIntoObjectFixupList(overlay);
|
||||
|
||||
MemProfiler::MoveNurseryToTenured(src, dst);
|
||||
TracePromoteToTenured(src, dst);
|
||||
|
|
|
|||
|
|
@ -822,7 +822,7 @@ js::Nursery::doCollection(JS::gcreason::Reason reason,
|
|||
endProfile(ProfileKey::MarkDebugger);
|
||||
|
||||
maybeStartProfile(ProfileKey::SweepCaches);
|
||||
rt->contextFromMainThread()->gc.purgeRuntimeForMinorGC();
|
||||
rt->gc.purgeRuntimeForMinorGC();
|
||||
maybeEndProfile(ProfileKey::SweepCaches);
|
||||
|
||||
// Most of the work is done here. This loop iterates over objects that have
|
||||
|
|
|
|||
2200
js/src/jit/BaselineCacheIRCompiler.cpp
Normal file
2200
js/src/jit/BaselineCacheIRCompiler.cpp
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -685,7 +685,7 @@ IonCacheIRCompiler::emitGuardSpecificAtom()
|
|||
// The pointers are not equal, so if the input string is also an atom it
|
||||
// must be a different string.
|
||||
masm.branchTest32(Assembler::NonZero, Address(str, JSString::offsetOfFlags()),
|
||||
Imm32(JSString::ATOM_BIT), failure->label());
|
||||
Imm32(JSString::NON_ATOM_BIT), failure->label());
|
||||
|
||||
// Check the length.
|
||||
masm.branch32(Assembler::NotEqual, Address(str, JSString::offsetOfLength()),
|
||||
|
|
|
|||
|
|
@ -413,7 +413,7 @@ void
|
|||
MacroAssembler::branchIfNotRope(Register str, Label* label)
|
||||
{
|
||||
Address flags(str, JSString::offsetOfFlags());
|
||||
static_assert(JSString::ROPE_FLAGS == 0, "Rope type flags must be 0");
|
||||
static_assert(JSString::ROPE_FLAGS == JSString::NON_ATOM_BIT, "Rope type flags must be 0");
|
||||
branchTest32(Assembler::NonZero, flags, Imm32(JSString::TYPE_FLAGS_MASK), label);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue