| Index: src/compiler/code-generator-impl.h | 
| diff --git a/src/compiler/code-generator-impl.h b/src/compiler/code-generator-impl.h | 
| index 914e1e8c91ded126a042422e611c8bdd0b88b546..79423441c581d914f1bce763859bf61921b3b3ac 100644 | 
| --- a/src/compiler/code-generator-impl.h | 
| +++ b/src/compiler/code-generator-impl.h | 
| @@ -118,6 +118,27 @@ class InstructionOperandConverter { | 
| }; | 
|  | 
|  | 
| +// Generator for out-of-line code that is emitted after the main code is done. | 
| +class OutOfLineCode : public ZoneObject { | 
| + public: | 
| +  explicit OutOfLineCode(CodeGenerator* gen); | 
| +  virtual ~OutOfLineCode(); | 
| + | 
| +  virtual void Generate() = 0; | 
| + | 
| +  Label* entry() { return &entry_; } | 
| +  Label* exit() { return &exit_; } | 
| +  MacroAssembler* masm() const { return masm_; } | 
| +  OutOfLineCode* next() const { return next_; } | 
| + | 
| + private: | 
| +  Label entry_; | 
| +  Label exit_; | 
| +  MacroAssembler* const masm_; | 
| +  OutOfLineCode* const next_; | 
| +}; | 
| + | 
| + | 
| // TODO(dcarney): generify this on bleeding_edge and replace this call | 
| // when merged. | 
| static inline void FinishCode(MacroAssembler* masm) { | 
|  |