Mercurial > hg > graal-jvmci-8
diff src/share/vm/c1/c1_GraphBuilder.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 | ad8c8ca4ab0f |
children | c96bf21b756f |
line wrap: on
line diff
--- a/src/share/vm/c1/c1_GraphBuilder.cpp Mon Apr 20 14:48:03 2009 -0700 +++ b/src/share/vm/c1/c1_GraphBuilder.cpp Tue Apr 21 23:21:04 2009 -0700 @@ -1524,6 +1524,11 @@ code = Bytecodes::_invokespecial; } + if (code == Bytecodes::_invokedynamic) { + BAILOUT("invokedynamic NYI"); // FIXME + return; + } + // NEEDS_CLEANUP // I've added the target-is_loaded() test below but I don't really understand // how klass->is_loaded() can be true and yet target->is_loaded() is false. @@ -2431,8 +2436,8 @@ case Bytecodes::_invokevirtual : // fall through case Bytecodes::_invokespecial : // fall through case Bytecodes::_invokestatic : // fall through + case Bytecodes::_invokedynamic : // fall through case Bytecodes::_invokeinterface: invoke(code); break; - case Bytecodes::_xxxunusedxxx : ShouldNotReachHere(); break; case Bytecodes::_new : new_instance(s.get_index_big()); break; case Bytecodes::_newarray : new_type_array(); break; case Bytecodes::_anewarray : new_object_array(); break; @@ -2571,6 +2576,7 @@ , Bytecodes::_invokevirtual , Bytecodes::_invokespecial , Bytecodes::_invokestatic + , Bytecodes::_invokedynamic , Bytecodes::_invokeinterface , Bytecodes::_new , Bytecodes::_newarray