The file interfaceSupport.hpp has a set of classes and state transitions that are intended to be inlined in the caller. interfaceSupport.hpp also includes safepointMechanism.inline.hpp and handles.inline.hpp which breaks the coding standard. It is also included some header files, so it brings the inlined functions into these header files:
share/prims/methodHandles.hpp:#include "runtime/interfaceSupport.hpp"
share/prims/whitebox.hpp:#include "runtime/interfaceSupport.hpp"
share/prims/jvmtiEnter.hpp:#include "runtime/interfaceSupport.hpp"
share/ci/ciUtilities.hpp:#include "runtime/interfaceSupport.hpp"
First step to break the inline dependence in the header files is to rename interfaceSupport.hpp to interfaceSupport.inline.hpp, then remove the dependencies from these inlined functions. Breaking this up for sanity during code review clicking.
share/prims/methodHandles.hpp:#include "runtime/interfaceSupport.hpp"
share/prims/whitebox.hpp:#include "runtime/interfaceSupport.hpp"
share/prims/jvmtiEnter.hpp:#include "runtime/interfaceSupport.hpp"
share/ci/ciUtilities.hpp:#include "runtime/interfaceSupport.hpp"
First step to break the inline dependence in the header files is to rename interfaceSupport.hpp to interfaceSupport.inline.hpp, then remove the dependencies from these inlined functions. Breaking this up for sanity during code review clicking.