hotspot/src/share/vm/c1/c1_Compilation.hpp
changeset 24018 77b156916bab
parent 22243 91944eab7b92
child 24442 4d4ae31dea26
equal deleted inserted replaced
24016:2927072ed5fb 24018:77b156916bab
    86   ImplicitExceptionTable _implicit_exception_table;
    86   ImplicitExceptionTable _implicit_exception_table;
    87   LinearScan*        _allocator;
    87   LinearScan*        _allocator;
    88   CodeOffsets        _offsets;
    88   CodeOffsets        _offsets;
    89   CodeBuffer         _code;
    89   CodeBuffer         _code;
    90   bool               _has_access_indexed;
    90   bool               _has_access_indexed;
       
    91   int                _interpreter_frame_size; // Stack space needed in case of a deoptimization
    91 
    92 
    92   // compilation helpers
    93   // compilation helpers
    93   void initialize();
    94   void initialize();
    94   void build_hir();
    95   void build_hir();
    95   void emit_lir();
    96   void emit_lir();
   260 
   261 
   261   ciKlass* cha_exact_type(ciType* type);
   262   ciKlass* cha_exact_type(ciType* type);
   262 
   263 
   263   // Dump inlining replay data to the stream.
   264   // Dump inlining replay data to the stream.
   264   void dump_inline_data(outputStream* out) { /* do nothing now */ }
   265   void dump_inline_data(outputStream* out) { /* do nothing now */ }
       
   266 
       
   267   // How much stack space would the interpreter need in case of a
       
   268   // deoptimization (worst case)
       
   269   void update_interpreter_frame_size(int size) {
       
   270     if (_interpreter_frame_size < size) {
       
   271       _interpreter_frame_size = size;
       
   272     }
       
   273   }
       
   274 
       
   275   int interpreter_frame_size() const {
       
   276     return _interpreter_frame_size;
       
   277   }
   265 };
   278 };
   266 
   279 
   267 
   280 
   268 // Macro definitions for unified bailout-support
   281 // Macro definitions for unified bailout-support
   269 // The methods bailout() and bailed_out() are present in all classes
   282 // The methods bailout() and bailed_out() are present in all classes