< prev index next >

src/share/vm/opto/type.cpp

Print this page
rev 10518 : Tobias' flattened array
rev 10530 : fix x86 32 bit build (broken by change to calling convention)

@@ -4575,11 +4575,11 @@
 const TypePtr* TypeAryPtr::with_field_offset_and_offset(intptr_t offset) const {
   if (offset != Type::OffsetBot) {
     const Type* elemtype = elem();
     if (elemtype->isa_valuetype()) {
       uint header = arrayOopDesc::base_offset_in_bytes(T_OBJECT);
-      if (offset >= header) {
+      if (offset >= (intptr_t)header) {
         ciKlass* arytype_klass = klass();
         ciValueArrayKlass* vak = arytype_klass->as_value_array_klass();
         int shift = vak->log2_element_size();
         intptr_t field_offset = ((offset - header) & ((1 << shift) - 1));
 
< prev index next >