comparison src/share/vm/ci/ciInstanceKlass.cpp @ 1846:d55217dc206f

6829194: JSR 292 needs to support compressed oops Reviewed-by: kvn, jrose
author twisti
date Mon, 11 Oct 2010 04:18:58 -0700
parents 0e35fa8ebccd
children b0e6879e48fa
comparison
equal deleted inserted replaced
1845:a222fcfba398 1846:d55217dc206f
469 int last_offset = instanceOopDesc::base_offset_in_bytes(); 469 int last_offset = instanceOopDesc::base_offset_in_bytes();
470 for (int i = 0; i < fields->length(); i++) { 470 for (int i = 0; i < fields->length(); i++) {
471 ciField* field = fields->at(i); 471 ciField* field = fields->at(i);
472 int offset = field->offset_in_bytes(); 472 int offset = field->offset_in_bytes();
473 int size = (field->_type == NULL) ? heapOopSize : field->size_in_bytes(); 473 int size = (field->_type == NULL) ? heapOopSize : field->size_in_bytes();
474 assert(last_offset <= offset, "no field overlap"); 474 assert(last_offset <= offset, err_msg("no field overlap: %d <= %d", last_offset, offset));
475 if (last_offset > (int)sizeof(oopDesc)) 475 if (last_offset > (int)sizeof(oopDesc))
476 assert((offset - last_offset) < BytesPerLong, "no big holes"); 476 assert((offset - last_offset) < BytesPerLong, "no big holes");
477 // Note: Two consecutive T_BYTE fields will be separated by wordSize-1 477 // Note: Two consecutive T_BYTE fields will be separated by wordSize-1
478 // padding bytes if one of them is declared by a superclass. 478 // padding bytes if one of them is declared by a superclass.
479 // This is a minor inefficiency classFileParser.cpp. 479 // This is a minor inefficiency classFileParser.cpp.