[Triton-IR] Fix LoadOp Triton->TritonGPU conversion (#775)

This commit is contained in:
Da Yan
2022-10-14 03:57:39 +08:00
committed by GitHub
parent 1baa4e125f
commit 963d031247

View File

@@ -242,10 +242,17 @@ struct TritonLoadPattern : public OpConversionPattern<triton::LoadOp> {
LogicalResult
matchAndRewrite(triton::LoadOp op, OpAdaptor adaptor,
ConversionPatternRewriter &rewriter) const override {
rewriter.replaceOpWithNewOp<triton::LoadOp>(
op, typeConverter->convertType(op.getType()), adaptor.ptr(),
adaptor.mask(), adaptor.other(), adaptor.cache(), adaptor.evict(),
adaptor.isVolatile());
if (op.getNumOperands() == 2) { // ptr & mask
rewriter.replaceOpWithNewOp<triton::LoadOp>(
op, typeConverter->convertType(op.getType()), adaptor.ptr(),
adaptor.getOperands()[1], adaptor.other(), adaptor.cache(),
adaptor.evict(), adaptor.isVolatile());
} else {
rewriter.replaceOpWithNewOp<triton::LoadOp>(
op, typeConverter->convertType(op.getType()), adaptor.ptr(),
adaptor.mask(), adaptor.other(), adaptor.cache(), adaptor.evict(),
adaptor.isVolatile());
}
return success();
}
};