[PATCH] D77367: [mlir][Pass] Update the PassGen to generate base classes instead of utilities

River Riddle via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 2 22:13:27 PDT 2020


rriddle created this revision.
rriddle added a reviewer: mehdi_amini.
Herald added subscribers: llvm-commits, grosul1, bader, Joonsoo, liufengdb, aartbik, lucyrfox, mgester, arpith-jacob, csigg, nicolasvasilache, antiagainst, shauheen, burmako, jpienaar, zzheng, eraman, jholewinski.
Herald added a reviewer: mravishankar.
Herald added a reviewer: antiagainst.
Herald added a reviewer: nicolasvasilache.
Herald added a reviewer: herhut.
Herald added a reviewer: antiagainst.
Herald added a reviewer: aartbik.
Herald added a project: LLVM.

This is much cleaner, and fits the same structure as many other tablegen backends. This was not done originally as the CRTP in the pass classes made it overly verbose/complex.

Depends On D77350 <https://reviews.llvm.org/D77350>


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D77367

Files:
  mlir/include/mlir/Conversion/Passes.td
  mlir/include/mlir/Dialect/Affine/Passes.td
  mlir/include/mlir/Dialect/FxpMathOps/Passes.td
  mlir/include/mlir/Dialect/GPU/Passes.td
  mlir/include/mlir/Dialect/Linalg/Passes.td
  mlir/include/mlir/Dialect/LoopOps/Passes.td
  mlir/include/mlir/Dialect/Quant/Passes.td
  mlir/include/mlir/Dialect/SPIRV/Passes.td
  mlir/include/mlir/Pass/PassBase.td
  mlir/include/mlir/Quantizer/Transforms/Passes.td
  mlir/include/mlir/TableGen/Pass.h
  mlir/include/mlir/Transforms/Passes.td
  mlir/lib/Conversion/AVX512ToLLVM/ConvertAVX512ToLLVM.cpp
  mlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp
  mlir/lib/Conversion/GPUToCUDA/ConvertLaunchFuncToCudaCalls.cpp
  mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
  mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
  mlir/lib/Conversion/GPUToSPIRV/ConvertGPUToSPIRVPass.cpp
  mlir/lib/Conversion/GPUToVulkan/ConvertGPULaunchFuncToVulkanLaunchFunc.cpp
  mlir/lib/Conversion/GPUToVulkan/ConvertLaunchFuncToVulkanCalls.cpp
  mlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
  mlir/lib/Conversion/LinalgToSPIRV/LinalgToSPIRVPass.cpp
  mlir/lib/Conversion/LoopToStandard/LoopToStandard.cpp
  mlir/lib/Conversion/LoopsToGPU/LoopsToGPUPass.cpp
  mlir/lib/Conversion/PassDetail.h
  mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
  mlir/lib/Conversion/StandardToSPIRV/ConvertStandardToSPIRVPass.cpp
  mlir/lib/Conversion/StandardToSPIRV/LegalizeStandardForSPIRV.cpp
  mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
  mlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
  mlir/lib/Dialect/Affine/Transforms/AffineLoopInvariantCodeMotion.cpp
  mlir/lib/Dialect/Affine/Transforms/LoopTiling.cpp
  mlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
  mlir/lib/Dialect/Affine/Transforms/LoopUnrollAndJam.cpp
  mlir/lib/Dialect/Affine/Transforms/PassDetail.h
  mlir/lib/Dialect/Affine/Transforms/SimplifyAffineStructures.cpp
  mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
  mlir/lib/Dialect/FxpMathOps/Transforms/LowerUniformRealMath.cpp
  mlir/lib/Dialect/FxpMathOps/Transforms/PassDetail.h
  mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
  mlir/lib/Dialect/GPU/Transforms/PassDetail.h
  mlir/lib/Dialect/LLVMIR/Transforms/LegalizeForExport.cpp
  mlir/lib/Dialect/LLVMIR/Transforms/PassDetail.h
  mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
  mlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
  mlir/lib/Dialect/Linalg/Transforms/PassDetail.h
  mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
  mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
  mlir/lib/Dialect/LoopOps/Transforms/ParallelLoopFusion.cpp
  mlir/lib/Dialect/LoopOps/Transforms/ParallelLoopSpecialization.cpp
  mlir/lib/Dialect/LoopOps/Transforms/ParallelLoopTiling.cpp
  mlir/lib/Dialect/LoopOps/Transforms/PassDetail.h
  mlir/lib/Dialect/Quant/Transforms/ConvertConst.cpp
  mlir/lib/Dialect/Quant/Transforms/ConvertSimQuant.cpp
  mlir/lib/Dialect/Quant/Transforms/PassDetail.h
  mlir/lib/Dialect/SPIRV/Transforms/DecorateSPIRVCompositeTypeLayoutPass.cpp
  mlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
  mlir/lib/Dialect/SPIRV/Transforms/PassDetail.h
  mlir/lib/Dialect/SPIRV/Transforms/UpdateVCEPass.cpp
  mlir/lib/Quantizer/Transforms/AddDefaultStatsTestPass.cpp
  mlir/lib/Quantizer/Transforms/InferQuantizedTypesPass.cpp
  mlir/lib/Quantizer/Transforms/PassDetail.h
  mlir/lib/Quantizer/Transforms/RemoveInstrumentationPass.cpp
  mlir/lib/TableGen/Pass.cpp
  mlir/lib/Transforms/CSE.cpp
  mlir/lib/Transforms/Canonicalizer.cpp
  mlir/lib/Transforms/Inliner.cpp
  mlir/lib/Transforms/LocationSnapshot.cpp
  mlir/lib/Transforms/LoopCoalescing.cpp
  mlir/lib/Transforms/LoopFusion.cpp
  mlir/lib/Transforms/LoopInvariantCodeMotion.cpp
  mlir/lib/Transforms/MemRefDataFlowOpt.cpp
  mlir/lib/Transforms/OpStats.cpp
  mlir/lib/Transforms/ParallelLoopCollapsing.cpp
  mlir/lib/Transforms/PassDetail.h
  mlir/lib/Transforms/PipelineDataTransfer.cpp
  mlir/lib/Transforms/StripDebugInfo.cpp
  mlir/lib/Transforms/SymbolDCE.cpp
  mlir/lib/Transforms/ViewOpGraph.cpp
  mlir/lib/Transforms/ViewRegionGraph.cpp
  mlir/tools/mlir-tblgen/PassDocGen.cpp
  mlir/tools/mlir-tblgen/PassGen.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D77367.254706.patch
Type: text/x-patch
Size: 103357 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200403/44e2c882/attachment.bin>


More information about the llvm-commits mailing list