src/share/vm/c1/c1_Compilation.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/share/vm/c1/c1_Compilation.hpp
src/share/vm/c1/c1_Compilation.hpp
Print this page
rev 6086 : 8032410: compiler/uncommontrap/TestStackBangRbp.java times out on Solaris-Sparc V9
Summary: make compiled code bang the stack by the worst case size of the interpreter frame at deoptimization points.
Reviewed-by:
*** 86,95 ****
--- 86,96 ----
ImplicitExceptionTable _implicit_exception_table;
LinearScan* _allocator;
CodeOffsets _offsets;
CodeBuffer _code;
bool _has_access_indexed;
+ int _interpreter_frame_size; // Stack space needed in case of a deoptimization
// compilation helpers
void initialize();
void build_hir();
void emit_lir();
*** 260,269 ****
--- 261,282 ----
ciKlass* cha_exact_type(ciType* type);
// Dump inlining replay data to the stream.
void dump_inline_data(outputStream* out) { /* do nothing now */ }
+
+ // How much stack space would the interpreter need in case of a
+ // deoptimization (worst case)
+ void update_interpreter_frame_size(int size) {
+ if (_interpreter_frame_size < size) {
+ _interpreter_frame_size = size;
+ }
+ }
+
+ int interpreter_frame_size() const {
+ return _interpreter_frame_size;
+ }
};
// Macro definitions for unified bailout-support
// The methods bailout() and bailed_out() are present in all classes
src/share/vm/c1/c1_Compilation.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File