| Index: src/compiler/code-generator.h
|
| diff --git a/src/compiler/code-generator.h b/src/compiler/code-generator.h
|
| index 69d9f631f419f4672824236f1cf5cb59c46bfc21..494f91e5517a2d4aee3d00b4c74e0562ca61f1ca 100644
|
| --- a/src/compiler/code-generator.h
|
| +++ b/src/compiler/code-generator.h
|
| @@ -20,28 +20,27 @@ namespace compiler {
|
| // Generates native code for a sequence of instructions.
|
| class CodeGenerator FINAL : public GapResolver::Assembler {
|
| public:
|
| - explicit CodeGenerator(InstructionSequence* code);
|
| + explicit CodeGenerator(Frame* frame, Linkage* linkage,
|
| + InstructionSequence* code, CompilationInfo* info);
|
|
|
| // Generate native code.
|
| Handle<Code> GenerateCode();
|
|
|
| InstructionSequence* code() const { return code_; }
|
| - Frame* frame() const { return code()->frame(); }
|
| + Frame* frame() const { return frame_; }
|
| Isolate* isolate() const { return zone()->isolate(); }
|
| - Linkage* linkage() const { return code()->linkage(); }
|
| - Schedule* schedule() const { return code()->schedule(); }
|
| + Linkage* linkage() const { return linkage_; }
|
|
|
| private:
|
| MacroAssembler* masm() { return &masm_; }
|
| GapResolver* resolver() { return &resolver_; }
|
| SafepointTableBuilder* safepoints() { return &safepoints_; }
|
| Zone* zone() const { return code()->zone(); }
|
| + CompilationInfo* info() const { return info_; }
|
|
|
| // Checks if {block} will appear directly after {current_block_} when
|
| // assembling code, in which case, a fall-through can be used.
|
| - bool IsNextInAssemblyOrder(BasicBlock::RpoNumber block) const {
|
| - return current_block_.IsNext(block);
|
| - }
|
| + bool IsNextInAssemblyOrder(BasicBlock::RpoNumber block) const;
|
|
|
| // Record a safepoint with the given pointer map.
|
| void RecordSafepoint(PointerMap* pointers, Safepoint::Kind kind,
|
| @@ -117,7 +116,10 @@ class CodeGenerator FINAL : public GapResolver::Assembler {
|
| int pc_offset_;
|
| };
|
|
|
| - InstructionSequence* code_;
|
| + Frame* const frame_;
|
| + Linkage* const linkage_;
|
| + InstructionSequence* const code_;
|
| + CompilationInfo* const info_;
|
| BasicBlock::RpoNumber current_block_;
|
| SourcePosition current_source_position_;
|
| MacroAssembler masm_;
|
|
|