< prev index next >

src/share/vm/opto/type.cpp

Print this page
rev 10513 : fix incremental inlining with value types

@@ -1833,11 +1833,11 @@
     for (int i = 0; i < sig->count(); i++) {
       ciType* type = sig->type_at(i);
       if (type->basic_type() == T_VALUETYPE) {
         assert(type->is_valuetype(), "inconsistent type");
         ciValueKlass* vk = (ciValueKlass*)type;
-        vt_extra += vk->extra_value_args();
+        vt_extra += vk->value_arg_slots()-1;
       }
     }
     assert(((int)arg_cnt) + vt_extra >= 0, "negative number of actual arguments?");
   }
 

@@ -1845,11 +1845,11 @@
   const Type **field_array;
   if (recv != NULL) {
     arg_cnt++;
     if (vt_fields_as_args && recv->is_valuetype()) {
       ciValueKlass* vk = (ciValueKlass*)recv;
-      vt_extra += vk->extra_value_args();
+      vt_extra += vk->value_arg_slots()-1;
     }
     field_array = fields(arg_cnt + vt_extra);
     // Use get_const_type here because it respects UseUniqueSubclasses:
     if (vt_fields_as_args && recv->is_valuetype()) {
       ciValueKlass* vk = (ciValueKlass*)recv;
< prev index next >