8049542: C2: assert(size_in_words <= (julong)max_jint) failed: no overflow
Summary: Added juint cast to avoid gcc problem we have on one of our platforms.
Reviewed-by: dholmes, roland
--- a/hotspot/src/share/vm/oops/typeArrayOop.hpp Wed Aug 13 13:00:53 2014 -0700
+++ b/hotspot/src/share/vm/oops/typeArrayOop.hpp Tue Aug 05 14:44:18 2014 -0700
@@ -150,7 +150,7 @@
DEBUG_ONLY(BasicType etype = Klass::layout_helper_element_type(lh));
assert(length <= arrayOopDesc::max_array_length(etype), "no overflow");
- julong size_in_bytes = length;
+ julong size_in_bytes = (juint)length;
size_in_bytes <<= element_shift;
size_in_bytes += instance_header_size;
julong size_in_words = ((size_in_bytes + (HeapWordSize-1)) >> LogHeapWordSize);