src/share/vm/c1/c1_LinearScan.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/share/vm/c1/c1_LinearScan.cpp	Thu Mar 20 11:29:00 2014
--- new/src/share/vm/c1/c1_LinearScan.cpp	Thu Mar 20 11:28:59 2014

*** 2449,2458 **** --- 2449,2461 ---- for (int i = 0; i < visitor.info_count(); i++) { CodeEmitInfo* info = visitor.info_at(i); OopMap* oop_map = first_oop_map; + // compute worst case interpreter size in case of a deoptimization + _compilation->update_interpreter_frame_size(info->interpreter_frame_size()); + if (info->stack()->locks_size() != first_info->stack()->locks_size()) { // this info has a different number of locks then the precomputed oop map // (possible for lock and unlock instructions) -> compute oop map with // correct lock information oop_map = compute_oop_map(iw, op, info, visitor.has_call());

src/share/vm/c1/c1_LinearScan.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File