зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1249736 - Remove redundant StartType from MStart. r=jandem
This commit is contained in:
Родитель
40429e1dd8
Коммит
b6bf8bb8b7
|
@ -1895,7 +1895,6 @@ jit::FinishBailoutToBaseline(BaselineBailoutInfo* bailoutInfo)
|
|||
case Bailout_NonSimdInt32x4Input:
|
||||
case Bailout_NonSimdFloat32x4Input:
|
||||
case Bailout_NonSharedTypedArrayInput:
|
||||
case Bailout_InitialState:
|
||||
case Bailout_Debugger:
|
||||
case Bailout_UninitializedThis:
|
||||
case Bailout_BadDerivedConstructorReturn:
|
||||
|
|
|
@ -845,7 +845,7 @@ IonBuilder::build()
|
|||
}
|
||||
|
||||
// Emit the start instruction, so we can begin real instructions.
|
||||
current->add(MStart::New(alloc(), MStart::StartType_Default));
|
||||
current->add(MStart::New(alloc()));
|
||||
|
||||
// Guard against over-recursion. Do this before we start unboxing, since
|
||||
// this will create an OSI point that will read the incoming argument
|
||||
|
@ -7584,7 +7584,7 @@ IonBuilder::newOsrPreheader(MBasicBlock* predecessor, jsbytecode* loopEntry, jsb
|
|||
}
|
||||
|
||||
// Create an MStart to hold the first valid MResumePoint.
|
||||
MStart* start = MStart::New(alloc(), MStart::StartType_Osr);
|
||||
MStart* start = MStart::New(alloc());
|
||||
osrBlock->add(start);
|
||||
|
||||
// MOsrValue instructions are infallible, so the first MResumePoint must
|
||||
|
|
|
@ -110,9 +110,6 @@ enum BailoutKind
|
|||
// maps unshared memory.
|
||||
Bailout_NonSharedTypedArrayInput,
|
||||
|
||||
// For the initial snapshot when entering a function.
|
||||
Bailout_InitialState,
|
||||
|
||||
// We hit a |debugger;| statement.
|
||||
Bailout_Debugger,
|
||||
|
||||
|
@ -222,8 +219,6 @@ BailoutKindString(BailoutKind kind)
|
|||
return "Bailout_NonSimdFloat32x4Input";
|
||||
case Bailout_NonSharedTypedArrayInput:
|
||||
return "Bailout_NonSharedTypedArrayInput";
|
||||
case Bailout_InitialState:
|
||||
return "Bailout_InitialState";
|
||||
case Bailout_Debugger:
|
||||
return "Bailout_Debugger";
|
||||
case Bailout_UninitializedThis:
|
||||
|
|
|
@ -1312,9 +1312,6 @@ class LSnapshot : public TempObject
|
|||
BailoutKind bailoutKind() const {
|
||||
return bailoutKind_;
|
||||
}
|
||||
void setBailoutKind(BailoutKind kind) {
|
||||
bailoutKind_ = kind;
|
||||
}
|
||||
void rewriteRecoveredInput(LUse input);
|
||||
};
|
||||
|
||||
|
@ -1833,8 +1830,6 @@ class LIRGraph
|
|||
}
|
||||
void setEntrySnapshot(LSnapshot* snapshot) {
|
||||
MOZ_ASSERT(!entrySnapshot_);
|
||||
MOZ_ASSERT(snapshot->bailoutKind() == Bailout_InitialState);
|
||||
snapshot->setBailoutKind(Bailout_ArgumentCheck);
|
||||
entrySnapshot_ = snapshot;
|
||||
}
|
||||
LSnapshot* entrySnapshot() const {
|
||||
|
|
|
@ -1747,12 +1747,13 @@ LIRGenerator::visitFromCharCode(MFromCharCode* ins)
|
|||
void
|
||||
LIRGenerator::visitStart(MStart* start)
|
||||
{
|
||||
// Create a snapshot that captures the initial state of the function.
|
||||
LStart* lir = new(alloc()) LStart;
|
||||
assignSnapshot(lir, Bailout_InitialState);
|
||||
|
||||
if (start->startType() == MStart::StartType_Default && lir->snapshot())
|
||||
// Create a snapshot that captures the initial state of the function.
|
||||
assignSnapshot(lir, Bailout_ArgumentCheck);
|
||||
if (start->block()->graph().entryBlock() == start->block())
|
||||
lirGraph_.setEntrySnapshot(lir->snapshot());
|
||||
|
||||
add(lir);
|
||||
}
|
||||
|
||||
|
|
|
@ -1259,28 +1259,10 @@ typedef MVariadicT<MInstruction> MVariadicInstruction;
|
|||
// Generates an LSnapshot without further effect.
|
||||
class MStart : public MNullaryInstruction
|
||||
{
|
||||
public:
|
||||
enum StartType {
|
||||
StartType_Default,
|
||||
StartType_Osr
|
||||
};
|
||||
|
||||
private:
|
||||
StartType startType_;
|
||||
|
||||
private:
|
||||
explicit MStart(StartType startType)
|
||||
: startType_(startType)
|
||||
{ }
|
||||
|
||||
public:
|
||||
INSTRUCTION_HEADER(Start)
|
||||
static MStart* New(TempAllocator& alloc, StartType startType) {
|
||||
return new(alloc) MStart(startType);
|
||||
}
|
||||
|
||||
StartType startType() {
|
||||
return startType_;
|
||||
static MStart* New(TempAllocator& alloc) {
|
||||
return new(alloc) MStart();
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -603,8 +603,6 @@ MBasicBlock::shimmySlots(int discardDepth)
|
|||
bool
|
||||
MBasicBlock::linkOsrValues(MStart* start)
|
||||
{
|
||||
MOZ_ASSERT(start->startType() == MStart::StartType_Osr);
|
||||
|
||||
MResumePoint* res = start->resumePoint();
|
||||
|
||||
for (uint32_t i = 0; i < stackDepth(); i++) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче