[Triton-IR] Fix LoadOp Triton->TritonGPU conversion (#775)
This commit is contained in:
@@ -242,10 +242,17 @@ struct TritonLoadPattern : public OpConversionPattern<triton::LoadOp> {
|
|||||||
LogicalResult
|
LogicalResult
|
||||||
matchAndRewrite(triton::LoadOp op, OpAdaptor adaptor,
|
matchAndRewrite(triton::LoadOp op, OpAdaptor adaptor,
|
||||||
ConversionPatternRewriter &rewriter) const override {
|
ConversionPatternRewriter &rewriter) const override {
|
||||||
|
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>(
|
rewriter.replaceOpWithNewOp<triton::LoadOp>(
|
||||||
op, typeConverter->convertType(op.getType()), adaptor.ptr(),
|
op, typeConverter->convertType(op.getType()), adaptor.ptr(),
|
||||||
adaptor.mask(), adaptor.other(), adaptor.cache(), adaptor.evict(),
|
adaptor.mask(), adaptor.other(), adaptor.cache(), adaptor.evict(),
|
||||||
adaptor.isVolatile());
|
adaptor.isVolatile());
|
||||||
|
}
|
||||||
return success();
|
return success();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user