RFR: 8234748: Clean up atomic and orderAccess includes
    Thomas Schatzl 
    thomas.schatzl at oracle.com
       
    Wed Nov 27 10:20:18 UTC 2019
    
    
  
Hi Stefan,
   thanks for tackling this.
On 26.11.19 12:11, Stefan Karlsson wrote:
> Hi all,
> 
> Please review this trivial, but large, patch to cleanup the includes of 
> atomic.hpp and orderAccess.hpp.
> 
> https://cr.openjdk.java.net/~stefank/8234748/webrev.01/
> https://bugs.openjdk.java.net/browse/JDK-8234748
> 
> Thanks,
> StefanK
I did the following bash-fu to find missing/superfluous includes:
  grep "Atomic::" `find . -name '*.?pp'` | sed 's/\(.*pp\):.*/\1/' | 
uniq | sort > users.txt
$ grep "atomic.hpp" `find . -name '*.?pp'` | sed 's/\(.*\):.*/\1/' | 
uniq | sort > includers.txt
$ diff users.txt includers.txt > diff.txt
diff.txt then contained the differences, with some false positives, all 
about containing the keywords in comments. Otherwise I think this should 
be complete.
The same has been done with "OrderAccess::" and "orderAccess.hpp".
Here are the results:
Improvements to orderAccess.hpp includes:
- gc/shenandoah/shenandoahVerifier.cpp misses it
- the #include from gc/z/zLiveMap.inline.hpp should maybe be moved to 
zLiveMap.cpp
Improvements to atomic.hpp includes:
In the following files the include of atomic.hpp should be removed as it 
seems unnecessary:
- share/utilities/bitMap.hpp
- share/oops/oop.hpp
- share/gc/z/zNMethodTable.cpp
- share/gc/shenandoah/shenandoahForwarding.inline.hpp
- share/gc/g1/g1CardTable.cpp
- os_cpu/solaris_x86/os_solaris_x86.cpp
The following need a #include atomic.hpp:
- share/oops/methodData.cpp
- share/oops/constantPool.cpp
- share/memory/metaspace/virtualSpaceNdoe.cpp
- os/posix/os_posix.cpp
Looks good otherwise.
Thanks,
   Thomas
    
    
More information about the hotspot-dev
mailing list