equal
deleted
inserted
replaced
37 sizeof(instanceOopDesc); |
37 sizeof(instanceOopDesc); |
38 } |
38 } |
39 |
39 |
40 static bool contains_field_offset(int offset, int nonstatic_field_size) { |
40 static bool contains_field_offset(int offset, int nonstatic_field_size) { |
41 int base_in_bytes = base_offset_in_bytes(); |
41 int base_in_bytes = base_offset_in_bytes(); |
42 if (UseCompressedOops) { |
42 return (offset >= base_in_bytes && |
43 return (offset >= base_in_bytes && |
43 (offset-base_in_bytes) < nonstatic_field_size * heapOopSize); |
44 // field can be embedded in header, or is after header. |
|
45 (offset < (int)sizeof(instanceOopDesc) || |
|
46 (offset-(int)sizeof(instanceOopDesc))/wordSize < nonstatic_field_size)); |
|
47 } else { |
|
48 return (offset >= base_in_bytes && |
|
49 (offset-base_in_bytes)/wordSize < nonstatic_field_size); |
|
50 } |
|
51 } |
44 } |
52 }; |
45 }; |