/hg/release/icedtea7-forest-2.2/hotspot: 3 new changesets

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Mon Apr 29 02:24:31 PDT 2013


changeset e6eb191f82de in /hg/release/icedtea7-forest-2.2/hotspot
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/hotspot?cmd=changeset;node=e6eb191f82de
author: twisti
date: Mon Feb 25 11:54:35 2013 -0800

	8004336: Better handling of method handle intrinsic frames
	Reviewed-by: kvn, jrose, ahgross


changeset d6513b47584a in /hg/release/icedtea7-forest-2.2/hotspot
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/hotspot?cmd=changeset;node=d6513b47584a
author: poonam
date: Wed Mar 06 16:30:38 2013 -0800

	8006309: More reliable control panel operation
	Summary: Added a comment in the dead Kernel code
	Reviewed-by: ahgross, sla, coleenp


changeset 168d05b42b89 in /hg/release/icedtea7-forest-2.2/hotspot
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/hotspot?cmd=changeset;node=168d05b42b89
author: kvn
date: Fri Mar 15 09:33:37 2013 -0700

	8009699: Methodhandle lookup
	Reviewed-by: ahgross, jrose, jdn


diffstat:

 src/share/vm/opto/library_call.cpp   |  4 ++--
 src/share/vm/prims/methodHandles.cpp |  8 ++++++++
 src/share/vm/runtime/thread.cpp      |  3 +++
 3 files changed, 13 insertions(+), 2 deletions(-)

diffs (56 lines):

diff -r c312054a7ae6 -r 168d05b42b89 src/share/vm/opto/library_call.cpp
--- a/src/share/vm/opto/library_call.cpp	Mon Mar 04 21:29:12 2013 -0500
+++ b/src/share/vm/opto/library_call.cpp	Fri Mar 15 09:33:37 2013 -0700
@@ -3908,7 +3908,8 @@
       }
     }
   }
-  else if (method->is_method_handle_adapter()) {
+
+  if (method->is_method_handle_adapter()) {
     // This is an internal adapter frame from the MethodHandleCompiler -- skip it
     return true;
   }
@@ -5453,4 +5454,3 @@
   push(result);
   return true;
 }
-
diff -r c312054a7ae6 -r 168d05b42b89 src/share/vm/prims/methodHandles.cpp
--- a/src/share/vm/prims/methodHandles.cpp	Mon Mar 04 21:29:12 2013 -0500
+++ b/src/share/vm/prims/methodHandles.cpp	Fri Mar 15 09:33:37 2013 -0700
@@ -645,6 +645,13 @@
         }
       }
       methodHandle m = result.resolved_method();
+      KlassHandle mklass = m->method_holder();
+      KlassHandle receiver_limit = result.resolved_klass();
+      if (receiver_limit.is_null() ||
+          // ignore passed-in limit; interfaces are interconvertible
+          receiver_limit->is_interface() && mklass->is_interface()) {
+        receiver_limit = mklass;
+      }
       oop vmtarget = NULL;
       int vmindex = methodOopDesc::nonvirtual_vtable_index;
       if (defc->is_interface()) {
@@ -665,6 +672,7 @@
       java_lang_invoke_MemberName::set_vmtarget(mname(), vmtarget);
       java_lang_invoke_MemberName::set_vmindex(mname(),  vmindex);
       java_lang_invoke_MemberName::set_modifiers(mname(), mods);
+      java_lang_invoke_MemberName::set_clazz(mname(), receiver_limit->java_mirror());
       DEBUG_ONLY(KlassHandle junk1; int junk2);
       assert(decode_MemberName(mname(), junk1, junk2) == result.resolved_method(),
              "properly stored for later decoding");
diff -r c312054a7ae6 -r 168d05b42b89 src/share/vm/runtime/thread.cpp
--- a/src/share/vm/runtime/thread.cpp	Mon Mar 04 21:29:12 2013 -0500
+++ b/src/share/vm/runtime/thread.cpp	Fri Mar 15 09:33:37 2013 -0700
@@ -3555,6 +3555,9 @@
       os::dll_build_name(buffer, sizeof(buffer), Arguments::get_dll_dir(), name);
       library = os::dll_load(buffer, ebuf, sizeof ebuf);
 #ifdef KERNEL
+
+      // Dead code, KERNEL is never built in JDK7 or later. This code will be removed in a future update release.
+
       // Download instrument dll
       if (library == NULL && strcmp(name, "instrument") == 0) {
         char *props = Arguments::get_kernel_properties();



More information about the distro-pkg-dev mailing list