[all-commits] [llvm/llvm-project] e188aa: Cleanup header dependencies in LLVMCore
serge-sans-paille via All-commits
all-commits at lists.llvm.org
Tue Feb 1 21:56:00 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: e188aae406f3fecaed65a1f7e6562205f0de937e
https://github.com/llvm/llvm-project/commit/e188aae406f3fecaed65a1f7e6562205f0de937e
Author: serge-sans-paille <sguelton at redhat.com>
Date: 2022-02-02 (Wed, 02 Feb 2022)
Changed paths:
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M llvm/examples/IRTransforms/InitializePasses.h
M llvm/include/llvm-c/Core.h
M llvm/include/llvm-c/DebugInfo.h
M llvm/include/llvm/Analysis/AliasAnalysisEvaluator.h
M llvm/include/llvm/Analysis/CycleAnalysis.h
M llvm/include/llvm/Analysis/MLInlineAdvisor.h
M llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h
M llvm/include/llvm/Analysis/SparsePropagation.h
M llvm/include/llvm/CodeGen/ReplaceWithVeclib.h
M llvm/include/llvm/IR/AbstractCallSite.h
M llvm/include/llvm/IR/Attributes.h
M llvm/include/llvm/IR/CFG.h
M llvm/include/llvm/IR/DIBuilder.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/include/llvm/IR/DiagnosticInfo.h
M llvm/include/llvm/IR/Dominators.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/IRPrintingPasses.h
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/LLVMContext.h
M llvm/include/llvm/IR/LLVMRemarkStreamer.h
M llvm/include/llvm/IR/LegacyPassManager.h
M llvm/include/llvm/IR/MDBuilder.h
M llvm/include/llvm/IR/Metadata.h
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/include/llvm/IR/PassManager.h
M llvm/include/llvm/IR/PassTimingInfo.h
M llvm/include/llvm/IR/ReplaceConstant.h
M llvm/include/llvm/IR/SSAContext.h
M llvm/include/llvm/IR/Statepoint.h
M llvm/include/llvm/IR/Type.h
M llvm/include/llvm/IR/Use.h
M llvm/include/llvm/Transforms/AggressiveInstCombine/AggressiveInstCombine.h
M llvm/include/llvm/Transforms/IPO/AlwaysInliner.h
M llvm/include/llvm/Transforms/IPO/ForceFunctionAttrs.h
M llvm/include/llvm/Transforms/IPO/InferFunctionAttrs.h
M llvm/include/llvm/Transforms/IPO/SampleProfile.h
M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h
M llvm/include/llvm/Transforms/Instrumentation/BoundsChecking.h
M llvm/include/llvm/Transforms/Instrumentation/HWAddressSanitizer.h
M llvm/include/llvm/Transforms/Instrumentation/MemProfiler.h
M llvm/include/llvm/Transforms/Scalar/Scalarizer.h
M llvm/include/llvm/Transforms/Scalar/WarnMissedTransforms.h
M llvm/include/llvm/Transforms/Utils/AssumeBundleBuilder.h
M llvm/include/llvm/Transforms/Utils/Debugify.h
M llvm/include/llvm/Transforms/Utils/InjectTLIMappings.h
M llvm/include/llvm/Transforms/Vectorize/LoadStoreVectorizer.h
M llvm/lib/IR/Attributes.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Comdat.cpp
M llvm/lib/IR/ConstantFold.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DataLayout.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/IR/DebugLoc.cpp
M llvm/lib/IR/DiagnosticInfo.cpp
M llvm/lib/IR/Dominators.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/InlineAsm.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/IntrinsicInst.cpp
M llvm/lib/IR/LLVMContext.cpp
M llvm/lib/IR/LLVMContextImpl.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/LLVMRemarkStreamer.cpp
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/Metadata.cpp
M llvm/lib/IR/Module.cpp
M llvm/lib/IR/ModuleSummaryIndex.cpp
M llvm/lib/IR/Operator.cpp
M llvm/lib/IR/OptBisect.cpp
M llvm/lib/IR/PassManager.cpp
M llvm/lib/IR/ProfileSummary.cpp
M llvm/lib/IR/PseudoProbe.cpp
M llvm/lib/IR/ReplaceConstant.cpp
M llvm/lib/IR/SSAContext.cpp
M llvm/lib/IR/SafepointIRVerifier.cpp
M llvm/lib/IR/Statepoint.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Use.cpp
M llvm/lib/IR/Value.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/LTO/LTOBackend.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/X86/X86LowerAMXType.cpp
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
M llvm/lib/Transforms/IPO/CalledValuePropagation.cpp
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/NameAnonGlobals.cpp
M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
M llvm/lib/Transforms/Utils/Utils.cpp
M llvm/lib/Transforms/Utils/VNCoercion.cpp
M llvm/lib/Transforms/Vectorize/Vectorize.cpp
M llvm/tools/llvm-c-test/echo.cpp
M llvm/tools/llvm-extract/llvm-extract.cpp
M llvm/tools/llvm-stress/llvm-stress.cpp
M llvm/unittests/ExecutionEngine/MCJIT/MCJITTestAPICommon.h
M llvm/unittests/IR/TimePassesTest.cpp
M llvm/unittests/Transforms/Utils/LocalTest.cpp
M polly/include/polly/Support/DumpFunctionPass.h
Log Message:
-----------
Cleanup header dependencies in LLVMCore
Based on the output of include-what-you-use.
This is a big chunk of changes. It is very likely to break downstream code
unless they took a lot of care in avoiding hidden ehader dependencies, something
the LLVM codebase doesn't do that well :-/
I've tried to summarize the biggest change below:
- llvm/include/llvm-c/Core.h: no longer includes llvm-c/ErrorHandling.h
- llvm/IR/DIBuilder.h no longer includes llvm/IR/DebugInfo.h
- llvm/IR/IRBuilder.h no longer includes llvm/IR/IntrinsicInst.h
- llvm/IR/LLVMRemarkStreamer.h no longer includes llvm/Support/ToolOutputFile.h
- llvm/IR/LegacyPassManager.h no longer include llvm/Pass.h
- llvm/IR/Type.h no longer includes llvm/ADT/SmallPtrSet.h
- llvm/IR/PassManager.h no longer includes llvm/Pass.h nor llvm/Support/Debug.h
And the usual count of preprocessed lines:
$ clang++ -E -Iinclude -I../llvm/include ../llvm/lib/IR/*.cpp -std=c++14 -fno-rtti -fno-exceptions | wc -l
before: 6400831
after: 6189948
200k lines less to process is no that bad ;-)
Discourse thread on the topic: https://llvm.discourse.group/t/include-what-you-use-include-cleanup
Differential Revision: https://reviews.llvm.org/D118652
More information about the All-commits
mailing list