| Index: src/hydrogen.h
 | 
| diff --git a/src/hydrogen.h b/src/hydrogen.h
 | 
| index 61d792f1dc9cbf02540adcf76b7a55b3e76e6dfb..278a298435e56de0d7b0440d5d9e60e21f731349 100644
 | 
| --- a/src/hydrogen.h
 | 
| +++ b/src/hydrogen.h
 | 
| @@ -118,14 +118,14 @@ class HBasicBlock: public ZoneObject {
 | 
|  
 | 
|    bool HasParentLoopHeader() const { return parent_loop_header_ != NULL; }
 | 
|  
 | 
| -  void SetJoinId(int ast_id);
 | 
| +  void SetJoinId(BailoutId ast_id);
 | 
|  
 | 
|    void Finish(HControlInstruction* last);
 | 
|    void FinishExit(HControlInstruction* instruction);
 | 
|    void Goto(HBasicBlock* block, FunctionState* state = NULL);
 | 
|  
 | 
|    int PredecessorIndexOf(HBasicBlock* predecessor) const;
 | 
| -  void AddSimulate(int ast_id) { AddInstruction(CreateSimulate(ast_id)); }
 | 
| +  void AddSimulate(BailoutId ast_id) { AddInstruction(CreateSimulate(ast_id)); }
 | 
|    void AssignCommonDominator(HBasicBlock* other);
 | 
|    void AssignLoopSuccessorDominators();
 | 
|  
 | 
| @@ -168,7 +168,7 @@ class HBasicBlock: public ZoneObject {
 | 
|    void RegisterPredecessor(HBasicBlock* pred);
 | 
|    void AddDominatedBlock(HBasicBlock* block);
 | 
|  
 | 
| -  HSimulate* CreateSimulate(int ast_id);
 | 
| +  HSimulate* CreateSimulate(BailoutId ast_id);
 | 
|    HDeoptimize* CreateDeoptimize(HDeoptimize::UseEnvironment has_uses);
 | 
|  
 | 
|    int block_id_;
 | 
| @@ -431,8 +431,8 @@ class HEnvironment: public ZoneObject {
 | 
|    int pop_count() const { return pop_count_; }
 | 
|    int push_count() const { return push_count_; }
 | 
|  
 | 
| -  int ast_id() const { return ast_id_; }
 | 
| -  void set_ast_id(int id) { ast_id_ = id; }
 | 
| +  BailoutId ast_id() const { return ast_id_; }
 | 
| +  void set_ast_id(BailoutId id) { ast_id_ = id; }
 | 
|  
 | 
|    int length() const { return values_.length(); }
 | 
|    bool is_special_index(int i) const {
 | 
| @@ -574,7 +574,7 @@ class HEnvironment: public ZoneObject {
 | 
|    HEnvironment* outer_;
 | 
|    int pop_count_;
 | 
|    int push_count_;
 | 
| -  int ast_id_;
 | 
| +  BailoutId ast_id_;
 | 
|    Zone* zone_;
 | 
|  };
 | 
|  
 | 
| @@ -603,13 +603,13 @@ class AstContext {
 | 
|    // Add a hydrogen instruction to the instruction stream (recording an
 | 
|    // environment simulation if necessary) and then fill this context with
 | 
|    // the instruction as value.
 | 
| -  virtual void ReturnInstruction(HInstruction* instr, int ast_id) = 0;
 | 
| +  virtual void ReturnInstruction(HInstruction* instr, BailoutId ast_id) = 0;
 | 
|  
 | 
|    // Finishes the current basic block and materialize a boolean for
 | 
|    // value context, nothing for effect, generate a branch for test context.
 | 
|    // Call this function in tail position in the Visit functions for
 | 
|    // expressions.
 | 
| -  virtual void ReturnControl(HControlInstruction* instr, int ast_id) = 0;
 | 
| +  virtual void ReturnControl(HControlInstruction* instr, BailoutId ast_id) = 0;
 | 
|  
 | 
|    void set_for_typeof(bool for_typeof) { for_typeof_ = for_typeof; }
 | 
|    bool is_for_typeof() { return for_typeof_; }
 | 
| @@ -644,8 +644,8 @@ class EffectContext: public AstContext {
 | 
|    virtual ~EffectContext();
 | 
|  
 | 
|    virtual void ReturnValue(HValue* value);
 | 
| -  virtual void ReturnInstruction(HInstruction* instr, int ast_id);
 | 
| -  virtual void ReturnControl(HControlInstruction* instr, int ast_id);
 | 
| +  virtual void ReturnInstruction(HInstruction* instr, BailoutId ast_id);
 | 
| +  virtual void ReturnControl(HControlInstruction* instr, BailoutId ast_id);
 | 
|  };
 | 
|  
 | 
|  
 | 
| @@ -657,8 +657,8 @@ class ValueContext: public AstContext {
 | 
|    virtual ~ValueContext();
 | 
|  
 | 
|    virtual void ReturnValue(HValue* value);
 | 
| -  virtual void ReturnInstruction(HInstruction* instr, int ast_id);
 | 
| -  virtual void ReturnControl(HControlInstruction* instr, int ast_id);
 | 
| +  virtual void ReturnInstruction(HInstruction* instr, BailoutId ast_id);
 | 
| +  virtual void ReturnControl(HControlInstruction* instr, BailoutId ast_id);
 | 
|  
 | 
|    bool arguments_allowed() { return flag_ == ARGUMENTS_ALLOWED; }
 | 
|  
 | 
| @@ -680,8 +680,8 @@ class TestContext: public AstContext {
 | 
|    }
 | 
|  
 | 
|    virtual void ReturnValue(HValue* value);
 | 
| -  virtual void ReturnInstruction(HInstruction* instr, int ast_id);
 | 
| -  virtual void ReturnControl(HControlInstruction* instr, int ast_id);
 | 
| +  virtual void ReturnInstruction(HInstruction* instr, BailoutId ast_id);
 | 
| +  virtual void ReturnControl(HControlInstruction* instr, BailoutId ast_id);
 | 
|  
 | 
|    static TestContext* cast(AstContext* context) {
 | 
|      ASSERT(context->IsTest());
 | 
| @@ -853,7 +853,7 @@ class HGraphBuilder: public AstVisitor {
 | 
|  
 | 
|    // Adding instructions.
 | 
|    HInstruction* AddInstruction(HInstruction* instr);
 | 
| -  void AddSimulate(int ast_id);
 | 
| +  void AddSimulate(BailoutId ast_id);
 | 
|  
 | 
|    // Bailout environment manipulation.
 | 
|    void Push(HValue* value) { environment()->Push(value); }
 | 
| @@ -863,7 +863,7 @@ class HGraphBuilder: public AstVisitor {
 | 
|  
 | 
|    HBasicBlock* CreateJoin(HBasicBlock* first,
 | 
|                            HBasicBlock* second,
 | 
| -                          int join_id);
 | 
| +                          BailoutId join_id);
 | 
|  
 | 
|    TypeFeedbackOracle* oracle() const { return function_state()->oracle(); }
 | 
|  
 | 
| @@ -1034,8 +1034,8 @@ class HGraphBuilder: public AstVisitor {
 | 
|                   Handle<JSFunction> target,
 | 
|                   int arguments_count,
 | 
|                   HValue* receiver,
 | 
| -                 int ast_id,
 | 
| -                 int return_id,
 | 
| +                 BailoutId ast_id,
 | 
| +                 BailoutId return_id,
 | 
|                   ReturnHandlingFlag return_handling);
 | 
|  
 | 
|    bool TryInlineCall(Call* expr, bool drop_extra = false);
 | 
| @@ -1057,7 +1057,7 @@ class HGraphBuilder: public AstVisitor {
 | 
|    void HandleGlobalVariableAssignment(Variable* var,
 | 
|                                        HValue* value,
 | 
|                                        int position,
 | 
| -                                      int ast_id);
 | 
| +                                      BailoutId ast_id);
 | 
|  
 | 
|    void HandlePropertyAssignment(Assignment* expr);
 | 
|    void HandleCompoundAssignment(Assignment* expr);
 | 
| @@ -1119,7 +1119,7 @@ class HGraphBuilder: public AstVisitor {
 | 
|                                           HValue* key,
 | 
|                                           HValue* val,
 | 
|                                           Expression* prop,
 | 
| -                                         int ast_id,
 | 
| +                                         BailoutId ast_id,
 | 
|                                           int position,
 | 
|                                           bool is_store,
 | 
|                                           bool* has_side_effects);
 | 
| @@ -1128,7 +1128,7 @@ class HGraphBuilder: public AstVisitor {
 | 
|                                     HValue* key,
 | 
|                                     HValue* val,
 | 
|                                     Expression* expr,
 | 
| -                                   int ast_id,
 | 
| +                                   BailoutId ast_id,
 | 
|                                     int position,
 | 
|                                     bool is_store,
 | 
|                                     bool* has_side_effects);
 | 
| 
 |