src/share/vm/ci/ciMethodData.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/ci/ciMethodData.cpp Thu Mar 3 13:26:51 2016
--- new/src/share/vm/ci/ciMethodData.cpp Thu Mar 3 13:26:51 2016
*** 79,89 ****
--- 79,89 ----
}
void ciMethodData::load_extra_data() {
MethodData* mdo = get_MethodData();
! MutexLocker ml(mdo->extra_data_lock());
// speculative trap entries also hold a pointer to a Method so need to be translated
DataLayout* dp_src = mdo->extra_data_base();
DataLayout* end_src = mdo->args_data_limit();
DataLayout* dp_dst = extra_data_base();
*** 118,130 ****
--- 118,132 ----
case DataLayout::bit_data_tag:
break;
case DataLayout::no_tag:
case DataLayout::arg_info_data_tag:
// An empty slot or ArgInfoData entry marks the end of the trap data
return;
+ {
+ return; // Need a block to avoid SS compiler bug
+ }
default:
! fatal("bad tag = %d", dp_dst->tag());
}
}
}
void ciMethodData::load_data() {
src/share/vm/ci/ciMethodData.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File