RFR: 8292267: Clean up synchronizer.hpp

Daniel D. Daugherty dcubed at openjdk.org
Fri Aug 12 15:30:18 UTC 2022


On Fri, 12 Aug 2022 00:42:52 GMT, Ioi Lam <iklam at openjdk.org> wrote:

> Fix two problems with synchronizer.hpp:
> 
> - It's unnecessarily included in two popular headers: monitorChunk.hpp and frame_<cpu\>.hpp. The latter is most problematic because it includes synchronizer.hpp in the middle of a class declaration!
> - synchronizer.hpp includes linkedlist.hpp. This can be avoid by moving the definition of Synchronizer::PtrList into synchronizer.cpp.
> 
> These headers are included much less after this PR (out of ~1000 hotspot .o files)
> 
> 
> linkedlist.hpp    857 -> 101
> synchronizer.hpp  848 -> 122
> resourceHash.hpp  850 -> 270

Looks great. I only posted a few nit comments.

src/hotspot/share/gc/shenandoah/shenandoahPadding.hpp line 28:

> 26: #define SHARE_GC_SHENANDOAH_SHENANDOAHPADDING_HPP
> 27: 
> 28: #include "memory/padded.hpp"

This one surprised me, but I'm guessing it was included indirectly
from synchronizer.hpp via some frame header...

src/hotspot/share/prims/jvmtiExport.hpp line 50:

> 48: class JvmtiEnv;
> 49: class JvmtiThreadState;
> 50: class ThreadsList;

Not in sorted order relative to OopStorage. Does it need to be?

-------------

Marked as reviewed by dcubed (Reviewer).

PR: https://git.openjdk.org/jdk/pull/9849


More information about the shenandoah-dev mailing list