Mercurial > hg > truffle
diff src/share/vm/oops/methodData.hpp @ 17900:ce9fd31ffd14
8039975: SIGSEGV in MethodData::next_data(ProfileData*)
Summary: profiling code in interpreter broken when argument profiling is off.
Reviewed-by: iveresov, kvn
author | roland |
---|---|
date | Fri, 18 Apr 2014 14:25:21 +0200 |
parents | 62c54fcc0a35 |
children | 52b4284cb496 f6f9aec27858 |
line wrap: on
line diff
--- a/src/share/vm/oops/methodData.hpp Fri Feb 21 09:48:52 2014 +0100 +++ b/src/share/vm/oops/methodData.hpp Fri Apr 18 14:25:21 2014 +0200 @@ -1022,6 +1022,11 @@ static ByteSize argument_type_offset(int i) { return in_ByteSize(argument_type_local_offset(i) * DataLayout::cell_size); } + + static ByteSize return_only_size() { + return ReturnTypeEntry::size() + in_ByteSize(header_cell_count() * DataLayout::cell_size); + } + }; // CallTypeData @@ -2172,7 +2177,6 @@ static bool profile_jsr292(methodHandle m, int bci); static int profile_arguments_flag(); - static bool profile_arguments_jsr292_only(); static bool profile_all_arguments(); static bool profile_arguments_for_invoke(methodHandle m, int bci); static int profile_return_flag(); @@ -2475,6 +2479,7 @@ static bool profile_parameters_for_method(methodHandle m); static bool profile_arguments(); + static bool profile_arguments_jsr292_only(); static bool profile_return(); static bool profile_parameters(); static bool profile_return_jsr292_only();