JDK-8338447 : Remove InstanceKlass::_is_marked_dependent
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: runtime
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2024-08-15
  • Updated: 2024-08-26
  • Resolved: 2024-08-15
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 24
24 b12Fixed
Related Reports
Relates :  
Description
The flag came in with a merge conflict from JDK-8333542.

I don't think it added an alignment gap but this could use further investigation.

	u2                         _nest_host_index;     /*   304     2 */
	u2                         _this_class_index;    /*   306     2 */
	u2                         _static_oop_field_count; /*   308     2 */
	volatile u2                _idnum_allocated_count; /*   310     2 */
	bool                       _is_marked_dependent; /*   312     1 */
	volatile enum ClassState   _init_state;          /*   313     1 */
	u1                         _reference_type;      /*   314     1 */

	/* XXX 1 byte hole, try to pack */

	class InstanceKlassFlags  _misc_flags;           /*   316     4 */

	/* XXX last struct has 1 byte of padding */
	/* --- cacheline 5 boundary (320 bytes) --- */
	volatile class JavaThread *  _init_thread;       /*   320     8 */


With field removed.

	u2                         _nest_host_index;     /*   304     2 */
	u2                         _this_class_index;    /*   306     2 */
	u2                         _static_oop_field_count; /*   308     2 */
	volatile u2                _idnum_allocated_count; /*   310     2 */
	volatile enum ClassState   _init_state;          /*   312     1 */
	u1                         _reference_type;      /*   313     1 */
	class InstanceKlassFlags  _misc_flags;           /*   314     4 */

	/* XXX last struct has 1 byte of padding */
	/* XXX 2 bytes hole, try to pack */

	/* --- cacheline 5 boundary (320 bytes) --- */
	volatile class JavaThread *  _init_thread;       /*   320     8 */


From pahole.  There's nothing else to pack in those two bytes.
Comments
Changeset: 1cd48843 Branch: master Author: Coleen Phillimore <coleenp@openjdk.org> Date: 2024-08-15 18:20:20 +0000 URL: https://git.openjdk.org/jdk/commit/1cd488436880b00c55fa91f44c115999cf686afd
15-08-2024

A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/20595 Date: 2024-08-15 13:04:03 +0000
15-08-2024