mirror of
https://github.com/classilla/tenfourfox.git
synced 2024-06-06 22:29:34 +00:00
#593: M1608256 (disable optimization)
This commit is contained in:
parent
e901c0a71e
commit
6dc231866c
|
@ -1509,14 +1509,6 @@ OptimizeMIR(MIRGenerator* mir)
|
||||||
if (mir->shouldCancel("Start"))
|
if (mir->shouldCancel("Start"))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (!mir->compilingAsmJS()) {
|
|
||||||
if (!MakeMRegExpHoistable(mir, graph))
|
|
||||||
return false;
|
|
||||||
|
|
||||||
if (mir->shouldCancel("Make MRegExp Hoistable"))
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
gs.spewPass("BuildSSA");
|
gs.spewPass("BuildSSA");
|
||||||
AssertBasicGraphCoherency(graph);
|
AssertBasicGraphCoherency(graph);
|
||||||
|
|
||||||
|
|
|
@ -1878,6 +1878,9 @@ jit::ApplyTypeInformation(MIRGenerator* mir, MIRGraph& graph)
|
||||||
bool
|
bool
|
||||||
jit::MakeMRegExpHoistable(MIRGenerator* mir, MIRGraph& graph)
|
jit::MakeMRegExpHoistable(MIRGenerator* mir, MIRGraph& graph)
|
||||||
{
|
{
|
||||||
|
MOZ_CRASH("thou may not hoist this regex");
|
||||||
|
return false;
|
||||||
|
#if(0)
|
||||||
// If we are compiling try blocks, regular expressions may be observable
|
// If we are compiling try blocks, regular expressions may be observable
|
||||||
// from catch blocks (which Ion does not compile). For now just disable the
|
// from catch blocks (which Ion does not compile). For now just disable the
|
||||||
// pass in this case.
|
// pass in this case.
|
||||||
|
@ -1945,6 +1948,7 @@ jit::MakeMRegExpHoistable(MIRGenerator* mir, MIRGraph& graph)
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
bool
|
bool
|
||||||
|
|
|
@ -2099,14 +2099,9 @@ MustCloneRegExp(MRegExp* regexp)
|
||||||
void
|
void
|
||||||
LIRGenerator::visitRegExp(MRegExp* ins)
|
LIRGenerator::visitRegExp(MRegExp* ins)
|
||||||
{
|
{
|
||||||
if (!MustCloneRegExp(ins)) {
|
LRegExp* lir = new(alloc()) LRegExp();
|
||||||
RegExpObject* source = ins->source();
|
defineReturn(lir, ins);
|
||||||
define(new(alloc()) LPointer(source), ins);
|
assignSafepoint(lir, ins);
|
||||||
} else {
|
|
||||||
LRegExp* lir = new(alloc()) LRegExp();
|
|
||||||
defineReturn(lir, ins);
|
|
||||||
assignSafepoint(lir, ins);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
Loading…
Reference in New Issue
Block a user