Backed out changeset e67aafaf366c (bug 1530396) for build bustages on a CLOSED TREE

This commit is contained in:
Andreea Pavel 2019-02-25 19:14:28 +02:00
Родитель dc3ca84f73
Коммит a3b096ca44
16 изменённых файлов: 37 добавлений и 25 удалений

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

@ -505,7 +505,8 @@ NativeRegExpMacroAssembler::GenerateCode(JSContext* cx, bool match_only)
masm.jump(&return_temp0);
}
Linker linker(masm, "RegExp");
Linker linker(masm);
AutoFlushICache afc("RegExp");
JitCode* code = linker.newCode(cx, CodeKind::RegExp);
if (!code)
return RegExpCode();

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

@ -219,7 +219,8 @@ JitCode* BaselineCacheIRCompiler::compile() {
EmitStubGuardFailure(masm);
}
Linker linker(masm, "getStubCode");
Linker linker(masm);
AutoFlushICache afc("getStubCode");
Rooted<JitCode*> newStubCode(cx_, linker.newCode(cx_, CodeKind::Baseline));
if (!newStubCode) {
cx_->recoverFromOutOfMemory();

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

@ -190,12 +190,13 @@ MethodStatus BaselineCompiler::compile() {
return Method_Error;
}
Linker linker(masm, "Baseline");
Linker linker(masm);
if (masm.oom()) {
ReportOutOfMemory(cx);
return Method_Error;
}
AutoFlushICache afc("Baseline");
JitCode* code = linker.newCode(cx, CodeKind::Baseline);
if (!code) {
return Method_Error;

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

@ -1007,7 +1007,8 @@ JitCode* JitRuntime::generateBaselineDebugModeOSRHandler(
/* returnFromCallVM = */ true);
masm.bind(&end);
Linker linker(masm, "BaselineDebugModeOSRHandler");
Linker linker(masm);
AutoFlushICache afc("BaselineDebugModeOSRHandler");
JitCode* code = linker.newCode(cx, CodeKind::Other);
if (!code) {
return nullptr;

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

@ -1076,7 +1076,8 @@ JitCode* ICStubCompiler::getStubCode() {
if (!generateStubCode(masm)) {
return nullptr;
}
Linker linker(masm, "getStubCode");
Linker linker(masm);
AutoFlushICache afc("getStubCode");
Rooted<JitCode*> newStubCode(cx, linker.newCode(cx, CodeKind::Baseline));
if (!newStubCode) {
return nullptr;

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

@ -2304,7 +2304,8 @@ JitCode* JitRealm::generateRegExpMatcherStub(JSContext* cx) {
masm.moveValue(UndefinedValue(), result);
masm.ret();
Linker linker(masm, "RegExpMatcherStub");
Linker linker(masm);
AutoFlushICache afc("RegExpMatcherStub");
JitCode* code = linker.newCode(cx, CodeKind::Other);
if (!code) {
return nullptr;
@ -2489,7 +2490,8 @@ JitCode* JitRealm::generateRegExpSearcherStub(JSContext* cx) {
masm.move32(Imm32(RegExpSearcherResultFailed), result);
masm.ret();
Linker linker(masm, "RegExpSearcherStub");
Linker linker(masm);
AutoFlushICache afc("RegExpSearcherStub");
JitCode* code = linker.newCode(cx, CodeKind::Other);
if (!code) {
return nullptr;
@ -2631,7 +2633,8 @@ JitCode* JitRealm::generateRegExpTesterStub(JSContext* cx) {
masm.freeStack(sizeof(irregexp::InputOutputData));
masm.ret();
Linker linker(masm, "RegExpTesterStub");
Linker linker(masm);
AutoFlushICache afc("RegExpTesterStub");
JitCode* code = linker.newCode(cx, CodeKind::Other);
if (!code) {
return nullptr;
@ -8756,7 +8759,8 @@ JitCode* JitRealm::generateStringConcatStub(JSContext* cx) {
masm.movePtr(ImmPtr(nullptr), output);
masm.ret();
Linker linker(masm, "StringConcatStub");
Linker linker(masm);
AutoFlushICache afc("StringConcatStub");
JitCode* code = linker.newCode(cx, CodeKind::Other);
#ifdef JS_ION_PERF
@ -10423,7 +10427,8 @@ bool CodeGenerator::link(JSContext* cx, CompilerConstraintList* constraints) {
js_free(ionScript);
});
Linker linker(masm, "IonLink");
Linker linker(masm);
AutoFlushICache afc("IonLink");
JitCode* code = linker.newCode(cx, CodeKind::Ion);
if (!code) {
return false;

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

@ -305,7 +305,8 @@ bool JitRuntime::initialize(JSContext* cx) {
void* handler = JS_FUNC_TO_DATA_PTR(void*, jit::HandleException);
generateExceptionTailStub(masm, handler, &profilerExitTail);
Linker linker(masm, "Trampolines");
Linker linker(masm);
AutoFlushICache afc("Trampolines");
trampolineCode_ = linker.newCode(cx, CodeKind::Other);
if (!trampolineCode_) {
return false;

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

@ -619,7 +619,8 @@ JitCode* IonCacheIRCompiler::compile() {
}
}
Linker linker(masm, "getStubCode");
Linker linker(masm);
AutoFlushICache afc("getStubCode");
Rooted<JitCode*> newStubCode(cx_, linker.newCode(cx_, CodeKind::Ion));
if (!newStubCode) {
cx_->recoverFromOutOfMemory();

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

@ -20,7 +20,6 @@ namespace jit {
class Linker {
MacroAssembler& masm;
mozilla::Maybe<AutoWritableJitCodeFallible> awjcf;
AutoFlushICache afc;
JitCode* fail(JSContext* cx) {
ReportOutOfMemory(cx);
@ -29,11 +28,7 @@ class Linker {
public:
// Construct a linker with a rooted macro assembler.
explicit Linker(MacroAssembler& masm, const char* name)
: masm(masm), afc(name)
{
masm.finish();
}
explicit Linker(MacroAssembler& masm) : masm(masm) { masm.finish(); }
// Create a new JitCode object and populate it with the contents of the
// macro assember buffer.

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

@ -1003,7 +1003,8 @@ JitCode* JitRuntime::generateDebugTrapHandler(JSContext* cx) {
masm.ret();
Linker linker(masm, "DebugTrapHandler");
Linker linker(masm);
AutoFlushICache afc("DebugTrapHandler");
JitCode* codeDbg = linker.newCode(cx, CodeKind::Other);
#ifdef JS_ION_PERF

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

@ -835,7 +835,8 @@ JitCode* JitRuntime::generateDebugTrapHandler(JSContext* cx) {
masm.syncStackPtr();
masm.abiret();
Linker linker(masm, "DebugTrapHandler");
Linker linker(masm);
AutoFlushICache afc("DebugTrapHandler");
JitCode* codeDbg = linker.newCode(cx, CodeKind::Other);
#ifdef JS_ION_PERF

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

@ -993,7 +993,8 @@ JitCode* JitRuntime::generateDebugTrapHandler(JSContext* cx) {
masm.ret();
Linker linker(masm, "DebugTrapHandler");
Linker linker(masm);
AutoFlushICache afc("DebugTrapHandler");
JitCode* codeDbg = linker.newCode(cx, CodeKind::Other);
#ifdef JS_ION_PERF

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

@ -943,7 +943,8 @@ JitCode* JitRuntime::generateDebugTrapHandler(JSContext* cx) {
masm.ret();
Linker linker(masm, "DebugTrapHandler");
Linker linker(masm);
AutoFlushICache afc("DebugTrapHandler");
JitCode* codeDbg = linker.newCode(cx, CodeKind::Other);
#ifdef JS_ION_PERF

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

@ -884,7 +884,7 @@ JitCode* JitRuntime::generateDebugTrapHandler(JSContext* cx) {
masm.ret();
Linker linker(masm, "DebugTrapHandler");
Linker linker(masm);
JitCode* codeDbg = linker.newCode(cx, CodeKind::Other);
#ifdef JS_ION_PERF

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

@ -903,7 +903,7 @@ JitCode* JitRuntime::generateDebugTrapHandler(JSContext* cx) {
masm.ret();
Linker linker(masm, "DebugTrapHandler");
Linker linker(masm);
JitCode* codeDbg = linker.newCode(cx, CodeKind::Other);
#ifdef JS_ION_PERF

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

@ -324,7 +324,8 @@ static const uintptr_t CLEAR_CONSTRUCTOR_CODE_TOKEN = 0x1;
masm.movePtr(ImmWord(CLEAR_CONSTRUCTOR_CODE_TOKEN), object);
masm.jump(&done);
Linker linker(masm, "UnboxedObject");
Linker linker(masm);
AutoFlushICache afc("UnboxedObject");
JitCode* code = linker.newCode(cx, CodeKind::Other);
if (!code) {
return false;