MBasicBlock * MBasicBlock::NewPopN(MIRGraph &graph, CompileInfo &info, MBasicBlock *pred, const BytecodeSite &site, Kind kind, uint32_t popped) { MBasicBlock *block = new(graph.alloc()) MBasicBlock(graph, info, site, kind); if (!block->init()) return nullptr; if (!block->inherit(graph.alloc(), nullptr, pred, popped)) return nullptr; return block; }
MBasicBlock * MBasicBlock::NewPopN(MIRGraph &graph, CompileInfo &info, MBasicBlock *pred, jsbytecode *entryPc, Kind kind, uint32_t popped) { MBasicBlock *block = new MBasicBlock(graph, info, entryPc, kind); if (!block->init()) return NULL; if (!block->inherit(pred, popped)) return NULL; return block; }
MBasicBlock * MBasicBlock::New(MIRGraph &graph, CompileInfo &info, MBasicBlock *pred, jsbytecode *entryPc, Kind kind) { JS_ASSERT(entryPc != NULL); MBasicBlock *block = new MBasicBlock(graph, info, entryPc, kind); if (!block->init()) return NULL; if (!block->inherit(pred, 0)) return NULL; return block; }
MBasicBlock * MBasicBlock::New(MIRGraph &graph, BytecodeAnalysis *analysis, CompileInfo &info, MBasicBlock *pred, const BytecodeSite &site, Kind kind) { JS_ASSERT(site.pc() != nullptr); MBasicBlock *block = new(graph.alloc()) MBasicBlock(graph, info, site, kind); if (!block->init()) return nullptr; if (!block->inherit(graph.alloc(), analysis, pred, 0)) return nullptr; return block; }
MBasicBlock* MBasicBlock::New(MIRGraph& graph, size_t stackDepth, const CompileInfo& info, MBasicBlock* maybePred, BytecodeSite* site, Kind kind) { MOZ_ASSERT(site->pc() != nullptr); MBasicBlock* block = new(graph.alloc()) MBasicBlock(graph, info, site, kind); if (!block->init()) return nullptr; if (!block->inherit(graph.alloc(), stackDepth, maybePred, 0)) return nullptr; return block; }
MBasicBlock * MBasicBlock::New(MIRGraph &graph, BytecodeAnalysis *analysis, CompileInfo &info, MBasicBlock *pred, jsbytecode *entryPc, Kind kind) { JS_ASSERT(entryPc != nullptr); MBasicBlock *block = new MBasicBlock(graph, info, entryPc, kind); if (!block->init()) return nullptr; if (!block->inherit(analysis, pred, 0)) return nullptr; return block; }
MBasicBlock * MBasicBlock::NewPendingLoopHeader(MIRGraph &graph, CompileInfo &info, MBasicBlock *pred, const BytecodeSite &site, unsigned stackPhiCount) { JS_ASSERT(site.pc() != nullptr); MBasicBlock *block = new(graph.alloc()) MBasicBlock(graph, info, site, PENDING_LOOP_HEADER); if (!block->init()) return nullptr; if (!block->inherit(graph.alloc(), nullptr, pred, 0, stackPhiCount)) return nullptr; return block; }