src/share/vm/opto/compile.hpp

changeset 6723
0bf37f737702
parent 6680
78bbf4d43a14
child 6746
dda2ae6f9557
     1.1 --- a/src/share/vm/opto/compile.hpp	Mon Jun 09 15:42:31 2014 -0700
     1.2 +++ b/src/share/vm/opto/compile.hpp	Tue Apr 01 09:36:49 2014 +0200
     1.3 @@ -487,6 +487,7 @@
     1.4    RegMask               _FIRST_STACK_mask;      // All stack slots usable for spills (depends on frame layout)
     1.5    Arena*                _indexSet_arena;        // control IndexSet allocation within PhaseChaitin
     1.6    void*                 _indexSet_free_block_list; // free list of IndexSet bit blocks
     1.7 +  int                   _interpreter_frame_size;
     1.8  
     1.9    uint                  _node_bundling_limit;
    1.10    Bundle*               _node_bundling_base;    // Information for instruction bundling
    1.11 @@ -946,6 +947,7 @@
    1.12    PhaseRegAlloc*    regalloc()                  { return _regalloc; }
    1.13    int               frame_slots() const         { return _frame_slots; }
    1.14    int               frame_size_in_words() const; // frame_slots in units of the polymorphic 'words'
    1.15 +  int               frame_size_in_bytes() const { return _frame_slots << LogBytesPerInt; }
    1.16    RegMask&          FIRST_STACK_mask()          { return _FIRST_STACK_mask; }
    1.17    Arena*            indexSet_arena()            { return _indexSet_arena; }
    1.18    void*             indexSet_free_block_list()  { return _indexSet_free_block_list; }
    1.19 @@ -957,6 +959,13 @@
    1.20    bool          need_stack_bang(int frame_size_in_bytes) const;
    1.21    bool          need_register_stack_bang() const;
    1.22  
    1.23 +  void  update_interpreter_frame_size(int size) {
    1.24 +    if (_interpreter_frame_size < size) {
    1.25 +      _interpreter_frame_size = size;
    1.26 +    }
    1.27 +  }
    1.28 +  int           bang_size_in_bytes() const;
    1.29 +
    1.30    void          set_matcher(Matcher* m)                 { _matcher = m; }
    1.31  //void          set_regalloc(PhaseRegAlloc* ra)           { _regalloc = ra; }
    1.32    void          set_indexSet_arena(Arena* a)            { _indexSet_arena = a; }

mercurial