Skip to content

Commit 9eb9b6f

Browse files
add scalar load support for advanced path (#2934)
1 parent 7ac1225 commit 9eb9b6f

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

third_party/intel/lib/TritonIntelGPUToLLVM/TritonOpsToLLVM.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,18 @@ class LoadStorePrefetchOpConversion
156156
matchAndRewrite(OpType op, typename OpType::Adaptor adaptor,
157157
ConversionPatternRewriter &rewriter) const override {
158158
auto ptrType = cast<PointerType>(op.getPtr().getType());
159+
// scalar load/store
160+
if (!isa<RankedTensorType>(ptrType.getPointeeType())) {
161+
if constexpr (std::is_same_v<OpType, LoadOp>) {
162+
auto newLoad = rewriter.create<LLVM::LoadOp>(op.getLoc(), op.getType(),
163+
adaptor.getPtr());
164+
rewriter.replaceOp(op, newLoad);
165+
return success();
166+
}
167+
assert(0 && "add more support");
168+
return failure();
169+
}
170+
// blocked load/store
159171
auto tensorType = cast<RankedTensorType>(ptrType.getPointeeType());
160172
assert(tensorType.getRank() == 2 &&
161173
"only support 2d load/store/prefetch for now");

0 commit comments

Comments
 (0)