[PATCH] D74012: [mlir][spirv] Use spv.entry_point_abi in GPU to SPIR-V conversions

Mahesh Ravishankar via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 5 23:01:03 PST 2020


mravishankar added a comment.

Lets go with this for now. We can clean this up when the attribute story gets fixed up.



================
Comment at: mlir/include/mlir/Conversion/GPUToSPIRV/ConvertGPUToSPIRV.h:26
                                 SPIRVTypeConverter &typeConverter,
-                                OwningRewritePatternList &patterns,
-                                ArrayRef<int64_t> workGroupSize);
+                                OwningRewritePatternList &patterns);
 } // namespace mlir
----------------
Can we leave the workgroup size as optional. If provided will be used for overriding the default way of using the attribute.


================
Comment at: mlir/include/mlir/Conversion/GPUToSPIRV/ConvertGPUToSPIRVPass.h:27
+/// should have a spv.entry_point_abi attribute.
+std::unique_ptr<OpPassBase<ModuleOp>> createConvertGPUToSPIRVPass();
 
----------------
Same here, make the workgroup size optional.


================
Comment at: mlir/lib/Dialect/SPIRV/TargetAndABI.cpp:49
+spirv::EntryPointABIAttr spirv::lookupEntryPointABI(Operation *op) {
+  while (op && !op->hasTrait<OpTrait::FunctionLike>())
+    op = op->getParentOp();
----------------
Cant you just do op->getParentOfType<FuncOp>(op) / op->getParentOfType<gpu::FuncOp>(op).


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D74012/new/

https://reviews.llvm.org/D74012





More information about the llvm-commits mailing list