--- old/src/share/vm/opto/parseHelper.cpp 2016-12-02 14:22:06.063886122 +0100 +++ new/src/share/vm/opto/parseHelper.cpp 2016-12-02 14:22:05.615886107 +0100 @@ -329,10 +329,11 @@ // Pop values from stack (last argument is first) and // connect them to the ValueTypeNode in reverse order. - for (int i = vk->param_count() - 1; i >= 0 ; --i) { - ciType* field_type = vt->get_field_type(i); + for (int arg_index = vk->param_count() - 1; arg_index >= 0 ; --arg_index) { + int field_index = vk->field_index_for_argument(arg_index); + ciType* field_type = vt->get_field_type(field_index); Node* value = field_type->size() == 1 ? pop() : pop_pair(); - vt->set_field_value(i, value); + vt->set_field_value(field_index, value); } push(_gvn.transform(vt)); }