[Mlir-commits] [mlir] [MLIR][GPU-LLVM] Add in-pass signature update option for opencl kernels (PR #105664)
Victor Perez
llvmlistbot at llvm.org
Tue Sep 17 00:45:38 PDT 2024
================
@@ -325,6 +369,20 @@ struct GPUToLLVMSPVConversionPass final
LLVMTypeConverter converter(context, options);
LLVMConversionTarget target(*context);
+ if (forceOpenclAddressSpaces) {
+ MemorySpaceToOpenCLMemorySpaceConverter converter;
+ AttrTypeReplacer replacer;
+ replacer.addReplacement([&converter](BaseMemRefType origType)
+ -> std::optional<BaseMemRefType> {
+ return converter.convertType<BaseMemRefType>(origType);
+ });
+
+ replacer.recursivelyReplaceElementsIn(getOperation(),
+ /*replaceAttrs=*/true,
+ /*replaceLocs=*/false,
+ /*replaceTypes=*/true);
+ }
+
----------------
victor-eds wrote:
True, conversion to LLVM assumes memspace `None` maps to the default address space in several places. It'd be complex to change that.
https://github.com/llvm/llvm-project/pull/105664
More information about the Mlir-commits
mailing list