[PATCH] D120213: [CodeGen] Forward declare classes & remove includes

Clemens Wasser via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Feb 20 07:35:17 PST 2022


clemenswasser created this revision.
Herald added subscribers: asavonic, foad, kerbowa, pengfei, dmgreen, hiraditya, jgravelle-google, sbc100, mgorny, nhaehnle, jvesely, dschuff, arsenm, MatzeB, jholewinski.
clemenswasser requested review of this revision.
Herald added subscribers: llvm-commits, aheejin.
Herald added a project: LLVM.

`llvm/CodeGen/Machine*.h`, `llvm/ADT/ArrayRef.h`, `llvm/IR/Instructions.h` and `llvm/CodeGen/SelectionDAG.h` were identified as being quiet heavy by clang build analyzer.
Removing includes and forward declaring the relevant classes saves compilation time.


https://reviews.llvm.org/D120213

Files:
  llvm/include/llvm/CodeGen/FastISel.h
  llvm/include/llvm/CodeGen/LivePhysRegs.h
  llvm/include/llvm/CodeGen/MachineFunction.h
  llvm/include/llvm/CodeGen/MachineModuleInfo.h
  llvm/include/llvm/CodeGen/ScheduleDAG.h
  llvm/include/llvm/CodeGen/StackProtector.h
  llvm/include/llvm/CodeGen/TargetLowering.h
  llvm/include/llvm/CodeGen/WasmEHFuncInfo.h
  llvm/lib/CodeGen/CFGuardLongjmp.cpp
  llvm/lib/CodeGen/CFIInstrInserter.cpp
  llvm/lib/CodeGen/CMakeLists.txt
  llvm/lib/CodeGen/EHContGuardCatchret.cpp
  llvm/lib/CodeGen/InterleavedAccessPass.cpp
  llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp
  llvm/lib/CodeGen/MacroFusion.cpp
  llvm/lib/CodeGen/PatchableFunction.cpp
  llvm/lib/CodeGen/RegUsageInfoPropagate.cpp
  llvm/lib/CodeGen/ResetMachineFunctionPass.cpp
  llvm/lib/CodeGen/ScheduleDAG.cpp
  llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
  llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
  llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
  llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
  llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
  llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
  llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp
  llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
  llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
  llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
  llvm/lib/CodeGen/SwitchLoweringUtils.cpp
  llvm/lib/CodeGen/TargetLoweringBase.cpp
  llvm/lib/Target/AMDGPU/AMDGPUGlobalISelUtils.h
  llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
  llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
  llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp
  llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
  llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
  llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
  llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
  llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
  llvm/lib/Target/Hexagon/HexagonISelLowering.h
  llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
  llvm/lib/Target/NVPTX/NVPTXUtilities.h
  llvm/lib/Target/VE/VEISelLowering.h
  llvm/lib/Target/WebAssembly/WebAssemblySelectionDAGInfo.cpp
  llvm/lib/Target/X86/X86ISelLowering.cpp
  llvm/lib/Target/X86/X86InstrInfo.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D120213.410157.patch
Type: text/x-patch
Size: 46148 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220220/3ff6c2a0/attachment.bin>


More information about the llvm-commits mailing list