Mercurial > hg > graal-compiler
diff src/share/vm/oops/methodDataOop.cpp @ 726:be93aad57795
6655646: dynamic languages need dynamically linked call sites
Summary: invokedynamic instruction (JSR 292 RI)
Reviewed-by: twisti, never
author | jrose |
---|---|
date | Tue, 21 Apr 2009 23:21:04 -0700 |
parents | d1605aabd0a1 |
children | bd02caa94611 |
line wrap: on
line diff
--- a/src/share/vm/oops/methodDataOop.cpp Mon Apr 20 14:48:03 2009 -0700 +++ b/src/share/vm/oops/methodDataOop.cpp Tue Apr 21 23:21:04 2009 -0700 @@ -442,6 +442,8 @@ case Bytecodes::_invokevirtual: case Bytecodes::_invokeinterface: return VirtualCallData::static_cell_count(); + case Bytecodes::_invokedynamic: + return CounterData::static_cell_count(); case Bytecodes::_ret: return RetData::static_cell_count(); case Bytecodes::_ifeq: @@ -570,6 +572,11 @@ cell_count = VirtualCallData::static_cell_count(); tag = DataLayout::virtual_call_data_tag; break; + case Bytecodes::_invokedynamic: + // %%% should make a type profile for any invokedynamic that takes a ref argument + cell_count = CounterData::static_cell_count(); + tag = DataLayout::counter_data_tag; + break; case Bytecodes::_ret: cell_count = RetData::static_cell_count(); tag = DataLayout::ret_data_tag;