[arch-commits] Commit in java7-openjdk/trunk (hotspot_fix_memory_leak.diff)

Guillaume Alaux guillaume at archlinux.org
Mon Jun 29 07:58:12 UTC 2015


    Date: Monday, June 29, 2015 @ 09:58:11
  Author: guillaume
Revision: 241389

Add hotspot_fix_memory_leak.diff to SVN

Added:
  java7-openjdk/trunk/hotspot_fix_memory_leak.diff

------------------------------+
 hotspot_fix_memory_leak.diff |   46 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

Added: hotspot_fix_memory_leak.diff
===================================================================
--- hotspot_fix_memory_leak.diff	                        (rev 0)
+++ hotspot_fix_memory_leak.diff	2015-06-29 07:58:11 UTC (rev 241389)
@@ -0,0 +1,46 @@
+
+# HG changeset patch
+# User sgehwolf
+# Date 1430335428 25200
+# Node ID 2a55e4998f0d28c7003a8a0f43d2c7602d89f54b
+# Parent  cd8fe1a9205aedb6b5a1fc16e664412e48aee565
+8078666: JVM fastdebug build compiled with GCC 5 asserts with "widen increases"
+Summary: do the math on the unsigned type where overflows are well defined
+Reviewed-by: kvn, aph
+
+diff -r cd8fe1a9205a -r 2a55e4998f0d src/share/vm/opto/type.cpp
+--- openjdk/hotspot/src/share/vm/opto/type.cpp	Wed Jun 10 20:15:29 2015 -0400
++++ openjdk/hotspot/src/share/vm/opto/type.cpp	Wed Apr 29 12:23:48 2015 -0700
+@@ -1180,11 +1180,11 @@
+   // Certain normalizations keep us sane when comparing types.
+   // The 'SMALLINT' covers constants and also CC and its relatives.
+   if (lo <= hi) {
+-    if ((juint)(hi - lo) <= SMALLINT)  w = Type::WidenMin;
+-    if ((juint)(hi - lo) >= max_juint) w = Type::WidenMax; // TypeInt::INT
++    if (((juint)hi - lo) <= SMALLINT)  w = Type::WidenMin;
++    if (((juint)hi - lo) >= max_juint) w = Type::WidenMax; // TypeInt::INT
+   } else {
+-    if ((juint)(lo - hi) <= SMALLINT)  w = Type::WidenMin;
+-    if ((juint)(lo - hi) >= max_juint) w = Type::WidenMin; // dual TypeInt::INT
++    if (((juint)lo - hi) <= SMALLINT)  w = Type::WidenMin;
++    if (((juint)lo - hi) >= max_juint) w = Type::WidenMin; // dual TypeInt::INT
+   }
+   return w;
+ }
+@@ -1438,11 +1438,11 @@
+   // Certain normalizations keep us sane when comparing types.
+   // The 'SMALLINT' covers constants.
+   if (lo <= hi) {
+-    if ((julong)(hi - lo) <= SMALLINT)   w = Type::WidenMin;
+-    if ((julong)(hi - lo) >= max_julong) w = Type::WidenMax; // TypeLong::LONG
++    if (((julong)hi - lo) <= SMALLINT)   w = Type::WidenMin;
++    if (((julong)hi - lo) >= max_julong) w = Type::WidenMax; // TypeLong::LONG
+   } else {
+-    if ((julong)(lo - hi) <= SMALLINT)   w = Type::WidenMin;
+-    if ((julong)(lo - hi) >= max_julong) w = Type::WidenMin; // dual TypeLong::LONG
++    if (((julong)lo - hi) <= SMALLINT)   w = Type::WidenMin;
++    if (((julong)lo - hi) >= max_julong) w = Type::WidenMin; // dual TypeLong::LONG
+   }
+   return w;
+ }
+



More information about the arch-commits mailing list