/hg/release/icedtea7-forest-2.1/hotspot: 4 new changesets

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Thu Apr 18 07:57:58 PDT 2013


changeset 004176a47471 in /hg/release/icedtea7-forest-2.1/hotspot
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot?cmd=changeset;node=004176a47471
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 a5d3a94e327f in /hg/release/icedtea7-forest-2.1/hotspot
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot?cmd=changeset;node=a5d3a94e327f
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 2c4981784101 in /hg/release/icedtea7-forest-2.1/hotspot
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot?cmd=changeset;node=2c4981784101
author: kvn
date: Fri Mar 15 09:33:37 2013 -0700

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


changeset 2e9917f8c2b2 in /hg/release/icedtea7-forest-2.1/hotspot
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot?cmd=changeset;node=2e9917f8c2b2
author: andrew
date: Thu Apr 18 15:05:15 2013 +0100

	Added tag icedtea-2.1.8 for changeset 2c4981784101


diffstat:

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

diffs (64 lines):

diff -r 4e4dd75d54e7 -r 2e9917f8c2b2 .hgtags
--- a/.hgtags	Thu Mar 21 11:17:13 2013 -0400
+++ b/.hgtags	Thu Apr 18 15:05:15 2013 +0100
@@ -229,3 +229,4 @@
 76c46d4d4ad04e444f0981a559ceff81c74bf1b9 icedtea-2.1.5
 32569b4d36f4f081dcabb2389ae21bdfe29f3ce1 icedtea-2.1.6
 d8b22e079abeeca06fa7dc45b67e7fdf8da265e0 icedtea-2.1.7
+2c49817841014cca32279dc90a61654415a3391c icedtea-2.1.8
diff -r 4e4dd75d54e7 -r 2e9917f8c2b2 src/share/vm/opto/library_call.cpp
--- a/src/share/vm/opto/library_call.cpp	Thu Mar 21 11:17:13 2013 -0400
+++ b/src/share/vm/opto/library_call.cpp	Thu Apr 18 15:05:15 2013 +0100
@@ -3903,7 +3903,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;
   }
@@ -5422,4 +5423,3 @@
   push(result);
   return true;
 }
-
diff -r 4e4dd75d54e7 -r 2e9917f8c2b2 src/share/vm/prims/methodHandles.cpp
--- a/src/share/vm/prims/methodHandles.cpp	Thu Mar 21 11:17:13 2013 -0400
+++ b/src/share/vm/prims/methodHandles.cpp	Thu Apr 18 15:05:15 2013 +0100
@@ -674,6 +674,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()) {
@@ -694,6 +701,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 4e4dd75d54e7 -r 2e9917f8c2b2 src/share/vm/runtime/thread.cpp
--- a/src/share/vm/runtime/thread.cpp	Thu Mar 21 11:17:13 2013 -0400
+++ b/src/share/vm/runtime/thread.cpp	Thu Apr 18 15:05:15 2013 +0100
@@ -3465,6 +3465,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