Skip to content

Commit

Permalink
[Backend] Reject volatile TMA load in LLVM codegen (#5568)
Browse files Browse the repository at this point in the history
This isn't supported by the lowering, so reject it properly. Also,
switch from using asserts to emitting an MLIR error.
  • Loading branch information
Mogball authored Jan 10, 2025
1 parent 015bfe5 commit 4746ca9
Showing 1 changed file with 7 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1082,10 +1082,13 @@ struct AsyncTMACopyGlobalToLocalOpConversion
matchAndRewrite(triton::nvidia_gpu::AsyncTMACopyGlobalToLocalOp op,
OpAdaptor adaptor,
ConversionPatternRewriter &rewriter) const override {
assert(op.getCache() == triton::CacheModifier::NONE &&
"cache modifiers not supported yet.");
assert(op.getEvict() == triton::EvictionPolicy::NORMAL &&
"eviction policy not supported yet.");
if (op.getCache() != triton::CacheModifier::NONE)
return op.emitError("cache modifiers not supported yet");
if (op.getEvict() != triton::EvictionPolicy::NORMAL)
return op.emitError("eviction policy not supported yet");
if (op.getIsVolatile())
return op.emitError("volatile not supported yet");

auto loc = op.getLoc();
Type llvmElemTy =
typeConverter->convertType(op.getResult().getType().getElementType());
Expand Down

0 comments on commit 4746ca9

Please sign in to comment.