Blame SOURCES/java-1.8.0-openjdk-size_t.patch

9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp	2015-03-23 12:58:50.138672164 +0100
9e49de
@@ -2659,7 +2659,7 @@ void CFLS_LAB::get_from_global_pool(size
9bf359
   if (ResizeOldPLAB && CMSOldPLABResizeQuicker) {
9bf359
     size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks);
9bf359
     n_blks +=  CMSOldPLABReactivityFactor*multiple*n_blks;
9bf359
-    n_blks = MIN2(n_blks, CMSOldPLABMax);
9bf359
+    n_blks = MIN2(n_blks, (size_t)CMSOldPLABMax);
9bf359
   }
9bf359
   assert(n_blks > 0, "Error");
9bf359
   _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl);
9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp	2015-03-23 12:58:50.141672172 +0100
9e49de
@@ -957,7 +957,7 @@ void ConcurrentMarkSweepGeneration::comp
9bf359
   if (free_percentage < desired_free_percentage) {
9bf359
     size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage));
9bf359
     assert(desired_capacity >= capacity(), "invalid expansion size");
9bf359
-    size_t expand_bytes = MAX2(desired_capacity - capacity(), MinHeapDeltaBytes);
9bf359
+    size_t expand_bytes = MAX2(desired_capacity - capacity(), (size_t)MinHeapDeltaBytes);
9bf359
     if (PrintGCDetails && Verbose) {
9bf359
       size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage));
9bf359
       gclog_or_tty->print_cr("\nFrom compute_new_size: ");
9e49de
@@ -6575,7 +6575,7 @@ void CMSCollector::reset(bool asynch) {
9bf359
     HeapWord* curAddr = _markBitMap.startWord();
9bf359
     while (curAddr < _markBitMap.endWord()) {
9bf359
       size_t remaining  = pointer_delta(_markBitMap.endWord(), curAddr);
9bf359
-      MemRegion chunk(curAddr, MIN2(CMSBitMapYieldQuantum, remaining));
9bf359
+      MemRegion chunk(curAddr, MIN2((size_t)CMSBitMapYieldQuantum, remaining));
9bf359
       _markBitMap.clear_large_range(chunk);
9bf359
       if (ConcurrentMarkSweepThread::should_yield() &&
9bf359
           !foregroundGCIsActive() &&
9e49de
@@ -6874,7 +6874,7 @@ void CMSMarkStack::expand() {
9bf359
     return;
9bf359
   }
9bf359
   // Double capacity if possible
9bf359
-  size_t new_capacity = MIN2(_capacity*2, MarkStackSizeMax);
9bf359
+  size_t new_capacity = MIN2(_capacity*2, (size_t)MarkStackSizeMax);
9bf359
   // Do not give up existing stack until we have managed to
9bf359
   // get the double capacity that we desired.
9bf359
   ReservedSpace rs(ReservedSpace::allocation_align_size_up(
9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp	2015-03-23 12:58:50.143672177 +0100
9e49de
@@ -3902,7 +3902,7 @@ void CMTask::drain_local_queue(bool part
9bf359
   // of things to do) or totally (at the very end).
9bf359
   size_t target_size;
9bf359
   if (partially) {
9bf359
-    target_size = MIN2((size_t)_task_queue->max_elems()/3, GCDrainStackTargetSize);
9bf359
+    target_size = MIN2((size_t)(_task_queue->max_elems()/3), (size_t) GCDrainStackTargetSize);
9bf359
   } else {
9bf359
     target_size = 0;
9bf359
   }
9e49de
@@ -4728,7 +4728,7 @@ size_t G1PrintRegionLivenessInfoClosure:
9bf359
   // The > 0 check is to deal with the prev and next live bytes which
9bf359
   // could be 0.
9bf359
   if (*hum_bytes > 0) {
9bf359
-    bytes = MIN2(HeapRegion::GrainBytes, *hum_bytes);
9bf359
+    bytes = MIN2(HeapRegion::GrainBytes, (size_t)*hum_bytes);
9bf359
     *hum_bytes -= bytes;
9bf359
   }
9bf359
   return bytes;
9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp	2015-03-23 12:58:50.144672180 +0100
9e49de
@@ -1738,7 +1738,7 @@ HeapWord* G1CollectedHeap::expand_and_al
9bf359
 
9bf359
   verify_region_sets_optional();
9bf359
 
9bf359
-  size_t expand_bytes = MAX2(word_size * HeapWordSize, MinHeapDeltaBytes);
9bf359
+  size_t expand_bytes = MAX2(word_size * HeapWordSize, (size_t)MinHeapDeltaBytes);
9bf359
   ergo_verbose1(ErgoHeapSizing,
9bf359
                 "attempt heap expansion",
9bf359
                 ergo_format_reason("allocation request failed")
9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupQueue.cpp	2015-03-23 12:58:50.145672183 +0100
9e49de
@@ -38,7 +38,7 @@ G1StringDedupQueue::G1StringDedupQueue()
9e49de
   _cancel(false),
9e49de
   _empty(true),
9e49de
   _dropped(0) {
9e49de
-  _nqueues = MAX2(ParallelGCThreads, (size_t)1);
9e49de
+  _nqueues = MAX2(ParallelGCThreads, (uintx)1);
9e49de
   _queues = NEW_C_HEAP_ARRAY(G1StringDedupWorkerQueue, _nqueues, mtGC);
9e49de
   for (size_t i = 0; i < _nqueues; i++) {
9e49de
     new (_queues + i) G1StringDedupWorkerQueue(G1StringDedupWorkerQueue::default_segment_size(), _max_cache_size, _max_size);
9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/g1StringDedupTable.cpp	2015-03-23 12:58:50.145672183 +0100
9e49de
@@ -110,7 +110,7 @@ public:
9e49de
 };
9e49de
 
9e49de
 G1StringDedupEntryCache::G1StringDedupEntryCache() {
9e49de
-  _nlists = MAX2(ParallelGCThreads, (size_t)1);
9e49de
+  _nlists = MAX2(ParallelGCThreads, (uintx)1);
9e49de
   _lists = PaddedArray<G1StringDedupEntryFreeList, mtGC>::create_unfreeable((uint)_nlists);
9e49de
 }
9e49de
 
9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegion.cpp	2015-03-23 12:58:50.146672185 +0100
9e49de
@@ -147,7 +147,7 @@ void HeapRegion::setup_heap_region_size(
9bf359
   if (FLAG_IS_DEFAULT(G1HeapRegionSize)) {
9bf359
     size_t average_heap_size = (initial_heap_size + max_heap_size) / 2;
9e49de
     region_size = MAX2(average_heap_size / HeapRegionBounds::target_number(),
9e49de
-                       (uintx) HeapRegionBounds::min_size());
9e49de
+                       HeapRegionBounds::min_size());
9bf359
   }
9bf359
 
9bf359
   int region_size_log = log2_long((jlong) region_size);
9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp	2015-03-23 12:58:50.146672185 +0100
9e49de
@@ -833,7 +833,7 @@ OtherRegionsTable::do_cleanup_work(HRRSC
9e49de
 // This can be done by either mutator threads together with the
9e49de
 // concurrent refinement threads or GC threads.
9e49de
 uint HeapRegionRemSet::num_par_rem_sets() {
9e49de
-  return MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), (uint)ParallelGCThreads);
9e49de
+  return MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), ParallelGCThreads);
9e49de
 }
9e49de
 
9e49de
 HeapRegionRemSet::HeapRegionRemSet(G1BlockOffsetSharedArray* bosa,
9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp	2015-03-23 12:58:50.146672185 +0100
9e49de
@@ -910,8 +910,8 @@ void PSParallelCompact::initialize_space
9bf359
 void PSParallelCompact::initialize_dead_wood_limiter()
9bf359
 {
9bf359
   const size_t max = 100;
9bf359
-  _dwl_mean = double(MIN2(ParallelOldDeadWoodLimiterMean, max)) / 100.0;
9bf359
-  _dwl_std_dev = double(MIN2(ParallelOldDeadWoodLimiterStdDev, max)) / 100.0;
9bf359
+  _dwl_mean = double(MIN2((size_t)ParallelOldDeadWoodLimiterMean, max)) / 100.0;
9bf359
+  _dwl_std_dev = double(MIN2((size_t)ParallelOldDeadWoodLimiterStdDev, max)) / 100.0;
9bf359
   _dwl_first_term = 1.0 / (sqrt(2.0 * M_PI) * _dwl_std_dev);
9bf359
   DEBUG_ONLY(_dwl_initialized = true;)
9bf359
   _dwl_adjustment = normal_distribution(1.0);
9e49de
diff -up jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.s390 jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
9e49de
--- jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp	2015-03-23 12:58:50.147672188 +0100
9e49de
@@ -194,7 +194,7 @@ bool ParScanThreadState::take_from_overf
9bf359
   const size_t num_overflow_elems = of_stack->size();
9bf359
   const size_t space_available = queue->max_elems() - queue->size();
9bf359
   const size_t num_take_elems = MIN3(space_available / 4,
9bf359
-                                     ParGCDesiredObjsFromOverflowList,
9bf359
+                                     (size_t)ParGCDesiredObjsFromOverflowList,
9bf359
                                      num_overflow_elems);
9bf359
   // Transfer the most recent num_take_elems from the overflow
9bf359
   // stack to our work queue.
9e49de
diff -up jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.s390 jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp
9e49de
--- jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/memory/collectorPolicy.cpp	2015-03-23 12:58:50.147672188 +0100
9e49de
@@ -385,7 +385,7 @@ void TwoGenerationCollectorPolicy::initi
9bf359
       uintx calculated_size = NewSize + OldSize;
9bf359
       double shrink_factor = (double) MaxHeapSize / calculated_size;
9bf359
       uintx smaller_new_size = align_size_down((uintx)(NewSize * shrink_factor), _gen_alignment);
9bf359
-      FLAG_SET_ERGO(uintx, NewSize, MAX2(young_gen_size_lower_bound(), smaller_new_size));
9bf359
+      FLAG_SET_ERGO(uintx, NewSize, MAX2(young_gen_size_lower_bound(), (size_t)smaller_new_size));
9bf359
       _initial_gen0_size = NewSize;
9bf359
 
9bf359
       // OldSize is already aligned because above we aligned MaxHeapSize to
9e49de
@@ -433,7 +433,7 @@ void GenCollectorPolicy::initialize_size
9bf359
     // yield a size that is too small) and bound it by MaxNewSize above.
9bf359
     // Ergonomics plays here by previously calculating the desired
9bf359
     // NewSize and MaxNewSize.
9bf359
-    max_new_size = MIN2(MAX2(max_new_size, NewSize), MaxNewSize);
9bf359
+    max_new_size = MIN2(MAX2(max_new_size, (size_t)NewSize), (size_t)MaxNewSize);
9bf359
   }
9bf359
   assert(max_new_size > 0, "All paths should set max_new_size");
9bf359
 
9e49de
@@ -455,24 +455,23 @@ void GenCollectorPolicy::initialize_size
9bf359
       // lower limit.
9bf359
       _min_gen0_size = NewSize;
9bf359
       desired_new_size = NewSize;
9bf359
-      max_new_size = MAX2(max_new_size, NewSize);
9bf359
+      max_new_size = MAX2(max_new_size, (size_t)NewSize);
9bf359
     } else if (FLAG_IS_ERGO(NewSize)) {
9bf359
       // If NewSize is set ergonomically, we should use it as a lower
9bf359
       // limit, but use NewRatio to calculate the initial size.
9bf359
       _min_gen0_size = NewSize;
9bf359
       desired_new_size =
9bf359
-        MAX2(scale_by_NewRatio_aligned(_initial_heap_byte_size), NewSize);
9bf359
-      max_new_size = MAX2(max_new_size, NewSize);
9bf359
+        MAX2(scale_by_NewRatio_aligned(_initial_heap_byte_size), (size_t)NewSize);
9bf359
+      max_new_size = MAX2(max_new_size, (size_t)NewSize);
9bf359
     } else {
9bf359
       // For the case where NewSize is the default, use NewRatio
9bf359
       // to size the minimum and initial generation sizes.
9bf359
       // Use the default NewSize as the floor for these values.  If
9bf359
       // NewRatio is overly large, the resulting sizes can be too
9bf359
       // small.
9bf359
-      _min_gen0_size = MAX2(scale_by_NewRatio_aligned(_min_heap_byte_size), NewSize);
9bf359
+      _min_gen0_size = MAX2(scale_by_NewRatio_aligned(_min_heap_byte_size), (size_t)NewSize);
9bf359
       desired_new_size =
9bf359
-        MAX2(scale_by_NewRatio_aligned(_initial_heap_byte_size), NewSize);
9e49de
-    }
9e49de
+        MAX2(scale_by_NewRatio_aligned(_initial_heap_byte_size), (size_t)NewSize);    }
9bf359
 
9bf359
     assert(_min_gen0_size > 0, "Sanity check");
9e49de
     _initial_gen0_size = desired_new_size;
9e49de
@@ -573,7 +572,7 @@ void TwoGenerationCollectorPolicy::initi
9bf359
   } else {
9bf359
     // It's been explicitly set on the command line.  Use the
9bf359
     // OldSize and then determine the consequences.
9bf359
-    _min_gen1_size = MIN2(OldSize, _min_heap_byte_size - _min_gen0_size);
9bf359
+    _min_gen1_size = MIN2((size_t)OldSize, _min_heap_byte_size - _min_gen0_size);
9bf359
     _initial_gen1_size = OldSize;
9bf359
 
9bf359
     // If the user has explicitly set an OldSize that is inconsistent
9e49de
diff -up jdk8/hotspot/src/share/vm/memory/metaspace.cpp.s390 jdk8/hotspot/src/share/vm/memory/metaspace.cpp
9e49de
--- jdk8/hotspot/src/share/vm/memory/metaspace.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/memory/metaspace.cpp	2015-03-23 12:58:50.147672188 +0100
9e49de
@@ -1455,7 +1455,7 @@ void MetaspaceGC::initialize() {
9bf359
 
9bf359
 void MetaspaceGC::post_initialize() {
9bf359
   // Reset the high-water mark once the VM initialization is done.
9bf359
-  _capacity_until_GC = MAX2(MetaspaceAux::committed_bytes(), MetaspaceSize);
9bf359
+  _capacity_until_GC = MAX2(MetaspaceAux::committed_bytes(), (size_t)MetaspaceSize);
9bf359
 }
9bf359
 
9bf359
 bool MetaspaceGC::can_expand(size_t word_size, bool is_class) {
9e49de
@@ -1515,7 +1515,7 @@ void MetaspaceGC::compute_new_size() {
9bf359
     (size_t)MIN2(min_tmp, double(max_uintx));
9bf359
   // Don't shrink less than the initial generation size
9bf359
   minimum_desired_capacity = MAX2(minimum_desired_capacity,
9bf359
-                                  MetaspaceSize);
9bf359
+                                  (size_t)MetaspaceSize);
9bf359
 
9bf359
   if (PrintGCDetails && Verbose) {
9bf359
     gclog_or_tty->print_cr("\nMetaspaceGC::compute_new_size: ");
9e49de
@@ -1573,7 +1573,7 @@ void MetaspaceGC::compute_new_size() {
9bf359
     const double max_tmp = used_after_gc / minimum_used_percentage;
9bf359
     size_t maximum_desired_capacity = (size_t)MIN2(max_tmp, double(max_uintx));
9bf359
     maximum_desired_capacity = MAX2(maximum_desired_capacity,
9bf359
-                                    MetaspaceSize);
9bf359
+                                    (size_t)MetaspaceSize);
9bf359
     if (PrintGCDetails && Verbose) {
9bf359
       gclog_or_tty->print_cr("  "
9bf359
                              "  maximum_free_percentage: %6.2f"
9e49de
@@ -3245,7 +3245,7 @@ void Metaspace::global_initialize() {
9bf359
     // on the medium chunk list.   The next chunk will be small and progress
9bf359
     // from there.  This size calculated by -version.
9bf359
     _first_class_chunk_word_size = MIN2((size_t)MediumChunk*6,
9bf359
-                                       (CompressedClassSpaceSize/BytesPerWord)*2);
9bf359
+                                       (size_t)(CompressedClassSpaceSize/BytesPerWord)*2);
9bf359
     _first_class_chunk_word_size = align_word_size_up(_first_class_chunk_word_size);
9bf359
     // Arbitrarily set the initial virtual space to a multiple
9bf359
     // of the boot class loader size.
9e49de
diff -up jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.s390 jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp
9e49de
--- jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp	2015-03-23 12:58:50.148672191 +0100
9e49de
@@ -238,13 +238,13 @@ size_t ThreadLocalAllocBuffer::initial_d
9e49de
   size_t init_sz = 0;
9e49de
 
9e49de
   if (TLABSize > 0) {
9e49de
-    init_sz = TLABSize / HeapWordSize;
9e49de
+    init_sz = (size_t)(TLABSize / HeapWordSize);
9e49de
   } else if (global_stats() != NULL) {
9e49de
     // Initial size is a function of the average number of allocating threads.
9e49de
     unsigned nof_threads = global_stats()->allocating_threads_avg();
9e49de
 
9e49de
-    init_sz  = (Universe::heap()->tlab_capacity(myThread()) / HeapWordSize) /
9e49de
-                      (nof_threads * target_refills());
9e49de
+    init_sz  = (size_t)((Universe::heap()->tlab_capacity(myThread()) / HeapWordSize) /
9e49de
+                      (nof_threads * target_refills()));
9e49de
     init_sz = align_object_size(init_sz);
9e49de
   }
9e49de
   init_sz = MIN2(MAX2(init_sz, min_size()), max_size());
9e49de
diff -up jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.s390 jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp
9e49de
--- jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp	2015-03-23 12:58:50.148672191 +0100
9e49de
@@ -48,7 +48,7 @@ void ObjArrayKlass::objarray_follow_cont
9bf359
   const size_t beg_index = size_t(index);
9bf359
   assert(beg_index < len || len == 0, "index too large");
9bf359
 
9bf359
-  const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride);
9bf359
+  const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride);
9bf359
   const size_t end_index = beg_index + stride;
9bf359
   T* const base = (T*)a->base();
9bf359
   T* const beg = base + beg_index;
9e49de
@@ -82,7 +82,7 @@ void ObjArrayKlass::objarray_follow_cont
9bf359
   const size_t beg_index = size_t(index);
9bf359
   assert(beg_index < len || len == 0, "index too large");
9bf359
 
9bf359
-  const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride);
9bf359
+  const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride);
9bf359
   const size_t end_index = beg_index + stride;
9bf359
   T* const base = (T*)a->base();
9bf359
   T* const beg = base + beg_index;
9e49de
diff -up jdk8/hotspot/src/share/vm/runtime/arguments.cpp.s390 jdk8/hotspot/src/share/vm/runtime/arguments.cpp
9e49de
--- jdk8/hotspot/src/share/vm/runtime/arguments.cpp.s390	2015-02-04 21:14:39.000000000 +0100
9e49de
+++ jdk8/hotspot/src/share/vm/runtime/arguments.cpp	2015-03-23 12:58:50.148672191 +0100
9e49de
@@ -1277,7 +1277,7 @@ void Arguments::set_cms_and_parnew_gc_fl
9bf359
     // NewSize was set on the command line and it is larger than
9bf359
     // preferred_max_new_size.
9bf359
     if (!FLAG_IS_DEFAULT(NewSize)) {   // NewSize explicitly set at command-line
9bf359
-      FLAG_SET_ERGO(uintx, MaxNewSize, MAX2(NewSize, preferred_max_new_size));
9bf359
+      FLAG_SET_ERGO(uintx, MaxNewSize, MAX2((size_t)NewSize, preferred_max_new_size));
9bf359
     } else {
9bf359
       FLAG_SET_ERGO(uintx, MaxNewSize, preferred_max_new_size);
9bf359
     }
9e49de
@@ -1302,8 +1302,8 @@ void Arguments::set_cms_and_parnew_gc_fl
9bf359
       // Unless explicitly requested otherwise, make young gen
9bf359
       // at least min_new, and at most preferred_max_new_size.
9bf359
       if (FLAG_IS_DEFAULT(NewSize)) {
9bf359
-        FLAG_SET_ERGO(uintx, NewSize, MAX2(NewSize, min_new));
9bf359
-        FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, NewSize));
9bf359
+        FLAG_SET_ERGO(uintx, NewSize, MAX2((size_t)NewSize, min_new));
9bf359
+        FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, (size_t)NewSize));
9bf359
         if (PrintGCDetails && Verbose) {
9bf359
           // Too early to use gclog_or_tty
9bf359
           tty->print_cr("CMS ergo set NewSize: " SIZE_FORMAT, NewSize);
9e49de
@@ -1313,7 +1313,7 @@ void Arguments::set_cms_and_parnew_gc_fl
9bf359
       // so it's NewRatio x of NewSize.
9bf359
       if (FLAG_IS_DEFAULT(OldSize)) {
9bf359
         if (max_heap > NewSize) {
9bf359
-          FLAG_SET_ERGO(uintx, OldSize, MIN2(NewRatio*NewSize, max_heap - NewSize));
9bf359
+          FLAG_SET_ERGO(uintx, OldSize, MIN2((size_t)(NewRatio*NewSize), max_heap - NewSize));
9bf359
           if (PrintGCDetails && Verbose) {
9bf359
             // Too early to use gclog_or_tty
9bf359
             tty->print_cr("CMS ergo set OldSize: " SIZE_FORMAT, OldSize);