Blob Blame History Raw
# HG changeset patch
# User apetushkov <andrey@azul.com>
# Date 1479388005 -10800
#      Thu Nov 17 16:06:45 2016 +0300
# Node ID e81797ad613bfb64b506f5a42889ea813f3ffdd2
# Parent  ad0ce4e6fc1b1dc3d52863839483b222549dbb81
8169872: incremental CMS always crashes VM

diff --git a/src/cpu/aarch32/vm/macroAssembler_aarch32.cpp b/src/cpu/aarch32/vm/macroAssembler_aarch32.cpp
--- openjdk/hotspot/src/cpu/aarch32/vm/macroAssembler_aarch32.cpp
+++ openjdk/hotspot/src/cpu/aarch32/vm/macroAssembler_aarch32.cpp
@@ -2119,7 +2119,7 @@
   assert_different_registers(top, rthread, t1, t2, /* preserve: */ r6, r3);
   Label do_refill, discard_tlab;
 
-  if (!Universe::heap()->supports_inline_contig_alloc()) {
+  if (CMSIncrementalMode || !Universe::heap()->supports_inline_contig_alloc()) {
     // No allocation in the shared eden.
     b(slow_case);
   }
@@ -2229,7 +2229,7 @@
                                    Register t1,
                                    Label& slow_case) {
   assert_different_registers(obj, var_size_in_bytes, t1);
-  if (!Universe::heap()->supports_inline_contig_alloc()) {
+  if (CMSIncrementalMode || !Universe::heap()->supports_inline_contig_alloc()) {
     b(slow_case);
   } else {
     Register end = t1;
diff --git a/src/cpu/aarch32/vm/templateTable_aarch32.cpp b/src/cpu/aarch32/vm/templateTable_aarch32.cpp
--- openjdk/hotspot/src/cpu/aarch32/vm/templateTable_aarch32.cpp
+++ openjdk/hotspot/src/cpu/aarch32/vm/templateTable_aarch32.cpp
@@ -3829,7 +3829,7 @@
   // (creates a new TLAB, etc.)
 
   const bool allow_shared_alloc =
-    Universe::heap()->supports_inline_contig_alloc();
+    !CMSIncrementalMode && Universe::heap()->supports_inline_contig_alloc();
 
   if (UseTLAB) {
     __ tlab_allocate(r0, r3, 0, noreg, r1,