зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1419497 part 1 - Rename Ion to Jit in pre-barrier code. r=jonco
This commit is contained in:
Родитель
663e3294da
Коммит
56bd5c82bd
|
@ -1441,14 +1441,14 @@ ObjectIsConstructor(JSObject* obj)
|
|||
}
|
||||
|
||||
void
|
||||
MarkValueFromIon(JSRuntime* rt, Value* vp)
|
||||
MarkValueFromJit(JSRuntime* rt, Value* vp)
|
||||
{
|
||||
AutoUnsafeCallWithABI unsafe;
|
||||
TraceManuallyBarrieredEdge(&rt->gc.marker, vp, "write barrier");
|
||||
}
|
||||
|
||||
void
|
||||
MarkStringFromIon(JSRuntime* rt, JSString** stringp)
|
||||
MarkStringFromJit(JSRuntime* rt, JSString** stringp)
|
||||
{
|
||||
AutoUnsafeCallWithABI unsafe;
|
||||
MOZ_ASSERT(*stringp);
|
||||
|
@ -1456,7 +1456,7 @@ MarkStringFromIon(JSRuntime* rt, JSString** stringp)
|
|||
}
|
||||
|
||||
void
|
||||
MarkObjectFromIon(JSRuntime* rt, JSObject** objp)
|
||||
MarkObjectFromJit(JSRuntime* rt, JSObject** objp)
|
||||
{
|
||||
AutoUnsafeCallWithABI unsafe;
|
||||
MOZ_ASSERT(*objp);
|
||||
|
@ -1464,14 +1464,14 @@ MarkObjectFromIon(JSRuntime* rt, JSObject** objp)
|
|||
}
|
||||
|
||||
void
|
||||
MarkShapeFromIon(JSRuntime* rt, Shape** shapep)
|
||||
MarkShapeFromJit(JSRuntime* rt, Shape** shapep)
|
||||
{
|
||||
AutoUnsafeCallWithABI unsafe;
|
||||
TraceManuallyBarrieredEdge(&rt->gc.marker, shapep, "write barrier");
|
||||
}
|
||||
|
||||
void
|
||||
MarkObjectGroupFromIon(JSRuntime* rt, ObjectGroup** groupp)
|
||||
MarkObjectGroupFromJit(JSRuntime* rt, ObjectGroup** groupp)
|
||||
{
|
||||
AutoUnsafeCallWithABI unsafe;
|
||||
TraceManuallyBarrieredEdge(&rt->gc.marker, groupp, "write barrier");
|
||||
|
|
|
@ -850,27 +850,27 @@ void AssertValidStringPtr(JSContext* cx, JSString* str);
|
|||
void AssertValidSymbolPtr(JSContext* cx, JS::Symbol* sym);
|
||||
void AssertValidValue(JSContext* cx, Value* v);
|
||||
|
||||
void MarkValueFromIon(JSRuntime* rt, Value* vp);
|
||||
void MarkStringFromIon(JSRuntime* rt, JSString** stringp);
|
||||
void MarkObjectFromIon(JSRuntime* rt, JSObject** objp);
|
||||
void MarkShapeFromIon(JSRuntime* rt, Shape** shapep);
|
||||
void MarkObjectGroupFromIon(JSRuntime* rt, ObjectGroup** groupp);
|
||||
void MarkValueFromJit(JSRuntime* rt, Value* vp);
|
||||
void MarkStringFromJit(JSRuntime* rt, JSString** stringp);
|
||||
void MarkObjectFromJit(JSRuntime* rt, JSObject** objp);
|
||||
void MarkShapeFromJit(JSRuntime* rt, Shape** shapep);
|
||||
void MarkObjectGroupFromJit(JSRuntime* rt, ObjectGroup** groupp);
|
||||
|
||||
// Helper for generatePreBarrier.
|
||||
inline void*
|
||||
IonMarkFunction(MIRType type)
|
||||
JitMarkFunction(MIRType type)
|
||||
{
|
||||
switch (type) {
|
||||
case MIRType::Value:
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkValueFromIon);
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkValueFromJit);
|
||||
case MIRType::String:
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkStringFromIon);
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkStringFromJit);
|
||||
case MIRType::Object:
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkObjectFromIon);
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkObjectFromJit);
|
||||
case MIRType::Shape:
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkShapeFromIon);
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkShapeFromJit);
|
||||
case MIRType::ObjectGroup:
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkObjectGroupFromIon);
|
||||
return JS_FUNC_TO_DATA_PTR(void*, MarkObjectGroupFromJit);
|
||||
default: MOZ_CRASH();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -908,7 +908,7 @@ JitRuntime::generatePreBarrier(JSContext* cx, MacroAssembler& masm, MIRType type
|
|||
masm.setupUnalignedABICall(r2);
|
||||
masm.passABIArg(r0);
|
||||
masm.passABIArg(r1);
|
||||
masm.callWithABI(IonMarkFunction(type));
|
||||
masm.callWithABI(JitMarkFunction(type));
|
||||
save.take(AnyRegister(lr));
|
||||
save.add(pc);
|
||||
masm.PopRegsInMask(save);
|
||||
|
|
|
@ -728,7 +728,7 @@ JitRuntime::generatePreBarrier(JSContext* cx, MacroAssembler& masm, MIRType type
|
|||
masm.setupUnalignedABICall(r0);
|
||||
masm.passABIArg(r3);
|
||||
masm.passABIArg(PreBarrierReg);
|
||||
masm.callWithABI(IonMarkFunction(type));
|
||||
masm.callWithABI(JitMarkFunction(type));
|
||||
|
||||
// Pop the volatile regs and restore LR.
|
||||
masm.PopRegsInMask(regs);
|
||||
|
|
|
@ -884,7 +884,7 @@ JitRuntime::generatePreBarrier(JSContext* cx, MacroAssembler& masm, MIRType type
|
|||
masm.setupUnalignedABICall(a2);
|
||||
masm.passABIArg(a0);
|
||||
masm.passABIArg(a1);
|
||||
masm.callWithABI(IonMarkFunction(type));
|
||||
masm.callWithABI(JitMarkFunction(type));
|
||||
|
||||
save.take(AnyRegister(ra));
|
||||
masm.PopRegsInMask(save);
|
||||
|
|
|
@ -840,7 +840,7 @@ JitRuntime::generatePreBarrier(JSContext* cx, MacroAssembler& masm, MIRType type
|
|||
masm.setupUnalignedABICall(a2);
|
||||
masm.passABIArg(a0);
|
||||
masm.passABIArg(a1);
|
||||
masm.callWithABI(IonMarkFunction(type));
|
||||
masm.callWithABI(JitMarkFunction(type));
|
||||
|
||||
save.take(AnyRegister(ra));
|
||||
masm.PopRegsInMask(save);
|
||||
|
|
|
@ -789,7 +789,7 @@ JitRuntime::generatePreBarrier(JSContext* cx, MacroAssembler& masm, MIRType type
|
|||
masm.setupUnalignedABICall(rax);
|
||||
masm.passABIArg(rcx);
|
||||
masm.passABIArg(rdx);
|
||||
masm.callWithABI(IonMarkFunction(type));
|
||||
masm.callWithABI(JitMarkFunction(type));
|
||||
|
||||
masm.PopRegsInMask(regs);
|
||||
masm.ret();
|
||||
|
|
|
@ -812,7 +812,7 @@ JitRuntime::generatePreBarrier(JSContext* cx, MacroAssembler& masm, MIRType type
|
|||
masm.setupUnalignedABICall(eax);
|
||||
masm.passABIArg(ecx);
|
||||
masm.passABIArg(edx);
|
||||
masm.callWithABI(IonMarkFunction(type));
|
||||
masm.callWithABI(JitMarkFunction(type));
|
||||
|
||||
masm.PopRegsInMask(save);
|
||||
masm.ret();
|
||||
|
|
Загрузка…
Ссылка в новой задаче