Skip to content

Commit 6a37f5b

Browse files
authored
[MLIR] Make the pass_thru argument of llvm masked.load intrinsic Optional instead of Variadic (#156917)
This is meant as NFC as multiple values there was never supported anyway. Extra values would be dropped when translating to LLVM IR.
1 parent 8bdaa12 commit 6a37f5b

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1000,17 +1000,17 @@ def LLVM_GetActiveLaneMaskOp
10001000
/// Create a call to Masked Load intrinsic.
10011001
def LLVM_MaskedLoadOp : LLVM_OneResultIntrOp<"masked.load"> {
10021002
let arguments = (ins LLVM_AnyPointer:$data, LLVM_VectorOf<I1>:$mask,
1003-
Variadic<LLVM_AnyVector>:$pass_thru, I32Attr:$alignment,
1003+
Optional<LLVM_AnyVector>:$pass_thru, I32Attr:$alignment,
10041004
UnitAttr:$nontemporal);
10051005
let results = (outs LLVM_AnyVector:$res);
10061006
let assemblyFormat =
10071007
"operands attr-dict `:` functional-type(operands, results)";
10081008

10091009
string llvmBuilder = [{
1010-
auto *inst = $pass_thru.empty() ? builder.CreateMaskedLoad(
1011-
$_resultType, $data, llvm::Align($alignment), $mask) :
1010+
auto *inst = $pass_thru ? builder.CreateMaskedLoad(
1011+
$_resultType, $data, llvm::Align($alignment), $mask, $pass_thru) :
10121012
builder.CreateMaskedLoad(
1013-
$_resultType, $data, llvm::Align($alignment), $mask, $pass_thru[0]);
1013+
$_resultType, $data, llvm::Align($alignment), $mask);
10141014
$res = inst;
10151015
}] #setNonTemporalMetadataCode;
10161016
string mlirBuilder = [{

0 commit comments

Comments
 (0)