[llvm-branch-commits] [mlir] [mlir][GPU] Plumb range information through the NVVM lowterings (PR #107659)

Guray Ozen via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Sun Sep 8 03:15:25 PDT 2024


================
@@ -209,7 +209,12 @@ struct GPULaneIdOpToNVVM : ConvertOpToLLVMPattern<gpu::LaneIdOp> {
                   ConversionPatternRewriter &rewriter) const override {
     auto loc = op->getLoc();
     MLIRContext *context = rewriter.getContext();
-    Value newOp = rewriter.create<NVVM::LaneIdOp>(loc, rewriter.getI32Type());
+    LLVM::ConstantRangeAttr bounds = nullptr;
+    if (std::optional<APInt> upperBound = op.getUpperBound())
+      bounds = rewriter.getAttr<LLVM::ConstantRangeAttr>(
+          32, 0, upperBound->getZExtValue());
----------------
grypp wrote:

So 32 is the bitwidth, and 0 is the lower limit right? maybe we can create symbols to name them.  

https://github.com/llvm/llvm-project/pull/107659


More information about the llvm-branch-commits mailing list