mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-26 22:34:27 +02:00
7058036: FieldsAllocationStyle=2 does not work in 32-bit VM
ParseClassFile() incorrectly uses nonstatic_oop_map_size() method instead of nonstatic_oop_map_count(). Reviewed-by: never
This commit is contained in:
parent
8df44305c7
commit
976fd97ddf
1 changed files with 2 additions and 2 deletions
|
@ -3287,9 +3287,9 @@ instanceKlassHandle ClassFileParser::parseClassFile(Symbol* name,
|
|||
// Fields allocation: oops fields in super and sub classes are together.
|
||||
if( nonstatic_field_size > 0 && super_klass() != NULL &&
|
||||
super_klass->nonstatic_oop_map_size() > 0 ) {
|
||||
int map_size = super_klass->nonstatic_oop_map_size();
|
||||
int map_count = super_klass->nonstatic_oop_map_count();
|
||||
OopMapBlock* first_map = super_klass->start_of_nonstatic_oop_maps();
|
||||
OopMapBlock* last_map = first_map + map_size - 1;
|
||||
OopMapBlock* last_map = first_map + map_count - 1;
|
||||
int next_offset = last_map->offset() + (last_map->count() * heapOopSize);
|
||||
if (next_offset == next_nonstatic_field_offset) {
|
||||
allocation_style = 0; // allocate oops first
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue