[all-commits] [llvm/llvm-project] d1ad52: [flang][NFC] Remove unnecessary #include directive...

Eugene Epshteyn via All-commits all-commits at lists.llvm.org
Tue Jul 7 17:53:40 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d1ad52f0ca135b972f352b38fbc813404efb91ac
      https://github.com/llvm/llvm-project/commit/d1ad52f0ca135b972f352b38fbc813404efb91ac
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-07-08 (Wed, 08 Jul 2026)

  Changed paths:
    M flang/include/flang/Common/constexpr-bitset.h
    M flang/include/flang/Common/idioms.h
    M flang/include/flang/Decimal/binary-floating-point.h
    M flang/include/flang/Evaluate/expression.h
    M flang/include/flang/Evaluate/fold-designator.h
    M flang/include/flang/Evaluate/fold.h
    M flang/include/flang/Evaluate/intrinsics.h
    M flang/include/flang/Evaluate/rewrite.h
    M flang/include/flang/Evaluate/shape.h
    M flang/include/flang/Evaluate/traverse.h
    M flang/include/flang/Evaluate/type.h
    M flang/include/flang/Frontend/CodeGenOptions.h
    M flang/include/flang/Frontend/TextDiagnostic.h
    M flang/include/flang/Lower/Allocatable.h
    M flang/include/flang/Lower/CUDA.h
    M flang/include/flang/Lower/CallInterface.h
    M flang/include/flang/Lower/ConvertExprToHLFIR.h
    M flang/include/flang/Lower/ConvertType.h
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/include/flang/Lower/HostAssociations.h
    M flang/include/flang/Lower/Mangler.h
    M flang/include/flang/Lower/OpenMP.h
    M flang/include/flang/Lower/Runtime.h
    M flang/include/flang/Lower/Support/Utils.h
    M flang/include/flang/Lower/SymbolMap.h
    M flang/include/flang/Optimizer/Builder/DirectivesCommon.h
    M flang/include/flang/Optimizer/Builder/Factory.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/MIFCommon.h
    M flang/include/flang/Optimizer/Builder/Runtime/Character.h
    M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
    M flang/include/flang/Optimizer/Builder/Todo.h
    M flang/include/flang/Optimizer/CodeGen/CodeGenOpenMP.h
    M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
    M flang/include/flang/Optimizer/Dialect/CUF/CUFDialect.h
    M flang/include/flang/Optimizer/Dialect/FIRCG/CGOps.h
    M flang/include/flang/Optimizer/Dialect/MIF/MIFDialect.h
    M flang/include/flang/Optimizer/Dialect/SafeTempArrayCopyAttrInterface.h
    M flang/include/flang/Optimizer/Passes/Pipelines.h
    M flang/include/flang/Optimizer/Support/InitFIR.h
    M flang/include/flang/Optimizer/Support/InternalNames.h
    M flang/include/flang/Optimizer/Support/Utils.h
    M flang/include/flang/Optimizer/Transforms/CUDA/CUFAllocationConversion.h
    M flang/include/flang/Optimizer/Transforms/CUFGPUToLLVMConversion.h
    M flang/include/flang/Optimizer/Transforms/CUFOpConversion.h
    M flang/include/flang/Optimizer/Transforms/MIFOpConversion.h
    M flang/include/flang/Optimizer/Transforms/Passes.h
    M flang/include/flang/Parser/char-block.h
    M flang/include/flang/Parser/char-buffer.h
    M flang/include/flang/Parser/openmp-utils.h
    M flang/include/flang/Parser/parse-state.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Parser/token-sequence.h
    M flang/include/flang/Parser/unparse.h
    M flang/include/flang/Parser/user-state.h
    M flang/include/flang/Runtime/CUDA/common.h
    M flang/include/flang/Runtime/CUDA/kernel.h
    M flang/include/flang/Runtime/array-constructor-consts.h
    M flang/include/flang/Runtime/random.h
    M flang/include/flang/Runtime/reduce.h
    M flang/include/flang/Runtime/reduction.h
    M flang/include/flang/Runtime/support.h
    M flang/include/flang/Semantics/attr.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/include/flang/Semantics/runtime-type-info.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/type.h
    M flang/include/flang/Semantics/unparse-with-symbols.h
    M flang/include/flang/Tools/CrossToolHelpers.h
    M flang/include/flang/Tools/TargetSetup.h
    M flang/lib/Decimal/big-radix-floating-point.h
    M flang/lib/Decimal/decimal-to-binary.cpp
    M flang/lib/Evaluate/expression.cpp
    M flang/lib/Evaluate/fold-implementation.h
    M flang/lib/Evaluate/host.h
    M flang/lib/Evaluate/intrinsics-library.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/real.cpp
    M flang/lib/Evaluate/variable.cpp
    M flang/lib/Frontend/CodeGenOptions.cpp
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendAction.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M flang/lib/Lower/Allocatable.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/ConvertArrayConstructor.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/CustomIntrinsicCall.cpp
    M flang/lib/Lower/HostAssociations.cpp
    M flang/lib/Lower/IO.cpp
    M flang/lib/Lower/Mangler.cpp
    M flang/lib/Lower/MultiImageFortran.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/Atomic.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/Decomposer.cpp
    M flang/lib/Lower/OpenMP/Decomposer.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Lower/Runtime.cpp
    M flang/lib/Lower/SymbolMap.cpp
    M flang/lib/Lower/VectorSubscripts.cpp
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/CUFCommon.cpp
    M flang/lib/Optimizer/Builder/MIFCommon.cpp
    M flang/lib/Optimizer/Builder/Runtime/Character.cpp
    M flang/lib/Optimizer/Builder/Runtime/Derived.cpp
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
    M flang/lib/Optimizer/Builder/Runtime/Main.cpp
    M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp
    M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
    M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
    M flang/lib/Optimizer/CodeGen/PassDetail.h
    M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
    M flang/lib/Optimizer/CodeGen/TBAABuilder.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/Dialect/CUF/Attributes/CUFAttr.cpp
    M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/MIF/MIFOps.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineHLFIRAssign.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/PropagateFortranVariableAttributes.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/ScheduleOrderedAssignments.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCAttributes.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenMP/DeleteUnreachableTargets.cpp
    M flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
    M flang/lib/Optimizer/OpenMP/LowerWorkdistribute.cpp
    M flang/lib/Optimizer/OpenMP/LowerWorkshare.cpp
    M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    M flang/lib/Optimizer/OpenMP/MapsForPrivatizedSymbols.cpp
    M flang/lib/Optimizer/OpenMP/Support/FIROpenMPAttributes.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Support/DataLayout.cpp
    M flang/lib/Optimizer/Support/InternalNames.cpp
    M flang/lib/Optimizer/Transforms/AddAliasTags.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/AffineDemotion.cpp
    M flang/lib/Optimizer/Transforms/AffinePromotion.cpp
    M flang/lib/Optimizer/Transforms/AssumedRankOpConversion.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFAddConstructor.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFAllocationConversion.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFComputeSharedMemoryOffsetsAndSize.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceGlobal.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFFunctionRewrite.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFGPUToLLVMConversion.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFLaunchAttachAttr.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFOpConversion.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFOpConversionLate.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFPredefinedVarToGPU.cpp
    M flang/lib/Optimizer/Transforms/CompilerGeneratedNames.cpp
    M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
    M flang/lib/Optimizer/Transforms/ConvertComplexPow.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/lib/Optimizer/Transforms/ExternalNameConversion.cpp
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/lib/Optimizer/Transforms/FIRToSCF.cpp
    M flang/lib/Optimizer/Transforms/GenRuntimeCallsForTest.cpp
    M flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
    M flang/lib/Optimizer/Transforms/MIFOpConversion.cpp
    M flang/lib/Optimizer/Transforms/MemRefDataFlowOpt.cpp
    M flang/lib/Optimizer/Transforms/MemoryAllocation.cpp
    M flang/lib/Optimizer/Transforms/MemoryUtils.cpp
    M flang/lib/Optimizer/Transforms/OptimizeArrayRepacking.cpp
    M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
    M flang/lib/Optimizer/Transforms/SetRuntimeCallAttributes.cpp
    M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.cpp
    M flang/lib/Optimizer/Transforms/SimplifyRegionLite.cpp
    M flang/lib/Optimizer/Transforms/StackReclaim.cpp
    M flang/lib/Optimizer/Transforms/VScaleAttr.cpp
    M flang/lib/Parser/basic-parsers.h
    M flang/lib/Parser/executable-parsers.cpp
    M flang/lib/Parser/expr-parsers.cpp
    M flang/lib/Parser/message.cpp
    M flang/lib/Parser/openmp-utils.cpp
    M flang/lib/Parser/parse-tree.cpp
    M flang/lib/Parser/preprocessor.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Parser/source.cpp
    M flang/lib/Parser/token-parsers.h
    M flang/lib/Semantics/assignment.cpp
    M flang/lib/Semantics/canonicalize-omp.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-case.cpp
    M flang/lib/Semantics/check-data.cpp
    M flang/lib/Semantics/check-data.h
    M flang/lib/Semantics/check-deallocate.cpp
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-if-stmt.cpp
    M flang/lib/Semantics/check-nullify.cpp
    M flang/lib/Semantics/check-select-rank.cpp
    M flang/lib/Semantics/check-select-type.cpp
    M flang/lib/Semantics/check-stop.cpp
    M flang/lib/Semantics/compute-offsets.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/resolve-labels.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names-utils.h
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/lib/Semantics/scope.cpp
    M flang/lib/Support/LangOptions.cpp
    M flang/lib/Support/Version.cpp
    M flang/lib/Testing/fp-testing.cpp

  Log Message:
  -----------
  [flang][NFC] Remove unnecessary #include directives across flang (#207640)

Audit of every #include directive in flang/lib/ and
flang/include/flang/:

- Remove 423 #include directives (293 from lib/ translation units, 23
from lib-private headers, 107 from public headers) that are not needed:
no entity declared by the removed header is used - directly or in any
conditional-compilation branch (Windows, macOS, ARM/PowerPC,
REAL(16)/REAL(2) configuration macros) - in the including file, and for
headers no consumer in flang/lib, flang/tools, flang/unittests, or
flang-rt relies on the include as a re-export. Load-bearing includes
were examined and retained: textual .inc/.def expansions, tablegen
pass-header declaration/definition pairings, dialect headers carrying
generated-op interface dependencies, config-macro providers (e.g.
float128.h ahead of matmul-instances.inc guards), and ADL formatting
machinery (Evaluate/formatting.h).

- Add 5 missing direct #includes in lib translation units that used
entities only via now-removed transitive includes, and drop one
vestigial 'using namespace Fortran::runtime;' whose declaring header no
longer arrives transitively (nothing namespace-qualified from it was
used), per the include rules in flang/docs/C++style.md.

Assisted-by: AI



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list