Skip to content

Commit 949f3a1

Browse files
committed
fix arith+smt+create impmlicit
1 parent e8d226d commit 949f3a1

File tree

17 files changed

+352
-233
lines changed

17 files changed

+352
-233
lines changed

mlir/include/mlir/Dialect/Affine/IR/AffineOps.h

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,21 @@ class AffineDmaStartOp
114114
AffineMap tagMap, ValueRange tagIndices, Value numElements,
115115
Value stride = nullptr, Value elementsPerStride = nullptr);
116116

117+
static AffineDmaStartOp
118+
create(OpBuilder &builder, Location location, Value srcMemRef,
119+
AffineMap srcMap, ValueRange srcIndices, Value destMemRef,
120+
AffineMap dstMap, ValueRange destIndices, Value tagMemRef,
121+
AffineMap tagMap, ValueRange tagIndices, Value numElements,
122+
Value stride = nullptr, Value elementsPerStride = nullptr);
123+
124+
static AffineDmaStartOp create(ImplicitLocOpBuilder &builder, Value srcMemRef,
125+
AffineMap srcMap, ValueRange srcIndices,
126+
Value destMemRef, AffineMap dstMap,
127+
ValueRange destIndices, Value tagMemRef,
128+
AffineMap tagMap, ValueRange tagIndices,
129+
Value numElements, Value stride = nullptr,
130+
Value elementsPerStride = nullptr);
131+
117132
/// Returns the operand index of the source memref.
118133
unsigned getSrcMemRefOperandIndex() { return 0; }
119134

@@ -319,6 +334,12 @@ class AffineDmaWaitOp
319334

320335
static void build(OpBuilder &builder, OperationState &result, Value tagMemRef,
321336
AffineMap tagMap, ValueRange tagIndices, Value numElements);
337+
static AffineDmaWaitOp create(OpBuilder &builder, Location location,
338+
Value tagMemRef, AffineMap tagMap,
339+
ValueRange tagIndices, Value numElements);
340+
static AffineDmaWaitOp create(ImplicitLocOpBuilder &builder, Value tagMemRef,
341+
AffineMap tagMap, ValueRange tagIndices,
342+
Value numElements);
322343

323344
static StringRef getOperationName() { return "affine.dma_wait"; }
324345

mlir/include/mlir/Dialect/Arith/IR/Arith.h

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,19 +61,25 @@ class ConstantIntOp : public arith::ConstantOp {
6161
unsigned width);
6262
static ConstantIntOp create(OpBuilder &builder, Location location,
6363
int64_t value, unsigned width);
64+
static ConstantIntOp create(ImplicitLocOpBuilder &builder, int64_t value,
65+
unsigned width);
6466

6567
/// Build a constant int op that produces an integer of the specified type,
6668
/// which must be an integer type.
6769
static void build(OpBuilder &builder, OperationState &result, Type type,
6870
int64_t value);
6971
static ConstantIntOp create(OpBuilder &builder, Location location, Type type,
7072
int64_t value);
73+
static ConstantIntOp create(ImplicitLocOpBuilder &builder, Type type,
74+
int64_t value);
7175

7276
/// Build a constant int op that produces an integer from an APInt
7377
static void build(OpBuilder &builder, OperationState &result, Type type,
7478
const APInt &value);
7579
static ConstantIntOp create(OpBuilder &builder, Location location, Type type,
7680
const APInt &value);
81+
static ConstantIntOp create(ImplicitLocOpBuilder &builder, Type type,
82+
const APInt &value);
7783

7884
inline int64_t value() {
7985
return cast<IntegerAttr>(arith::ConstantOp::getValue()).getInt();
@@ -93,6 +99,8 @@ class ConstantFloatOp : public arith::ConstantOp {
9399
const APFloat &value);
94100
static ConstantFloatOp create(OpBuilder &builder, Location location,
95101
FloatType type, const APFloat &value);
102+
static ConstantFloatOp create(ImplicitLocOpBuilder &builder, FloatType type,
103+
const APFloat &value);
96104

97105
inline APFloat value() {
98106
return cast<FloatAttr>(arith::ConstantOp::getValue()).getValue();
@@ -110,6 +118,7 @@ class ConstantIndexOp : public arith::ConstantOp {
110118
static void build(OpBuilder &builder, OperationState &result, int64_t value);
111119
static ConstantIndexOp create(OpBuilder &builder, Location location,
112120
int64_t value);
121+
static ConstantIndexOp create(ImplicitLocOpBuilder &builder, int64_t value);
113122

114123
inline int64_t value() {
115124
return cast<IntegerAttr>(arith::ConstantOp::getValue()).getInt();

mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -582,9 +582,9 @@ def LinalgCopyToMemrefOp :
582582
let assemblyFormat = "$target attr-dict `:` "
583583
"functional-type(operands, results) ";
584584

585-
let builders = [
586-
OpBuilder<(ins "Value":$target)>,
587-
];
585+
// let builders = [
586+
// OpBuilder<(ins "Value":$target)>,
587+
// ];
588588
let extraClassDeclaration = [{
589589
::mlir::DiagnosedSilenceableFailure applyToOne(
590590
::mlir::transform::TransformRewriter &rewriter,
@@ -997,12 +997,12 @@ def PackGreedilyOp : Op<Transform_Dialect, "structured.pack_greedily", [
997997
[DenseArrayCount<3>]>:$matmul_inner_dims_order);
998998
let results = (outs TransformHandleTypeInterface:$packed_op);
999999

1000-
let builders = [
1001-
OpBuilder<(ins "Value":$target,
1002-
"ArrayRef<OpFoldResult>":$mixedMatmulPackedSizes,
1003-
"ArrayRef<int64_t>":$matmulPaddededSizesNextMultipleOf,
1004-
CArg<"ArrayRef<int64_t>", "{}">:$matmulDimsInnerDimsOrder)>
1005-
];
1000+
// let builders = [
1001+
// OpBuilder<(ins "Value":$target,
1002+
// "ArrayRef<OpFoldResult>":$mixedMatmulPackedSizes,
1003+
// "ArrayRef<int64_t>":$matmulPaddededSizesNextMultipleOf,
1004+
// CArg<"ArrayRef<int64_t>", "{}">:$matmulDimsInnerDimsOrder)>
1005+
// ];
10061006

10071007
let assemblyFormat = [{
10081008
$target
@@ -2509,10 +2509,10 @@ def HoistRedundantVectorTransfersOp :
25092509

25102510
let assemblyFormat = "$target attr-dict `:` functional-type(operands, results) ";
25112511

2512-
let builders = [
2513-
OpBuilder<(ins "Value":$target,
2514-
CArg<"bool", "false">:$verify_non_zero_trip)>,
2515-
];
2512+
// let builders = [
2513+
// OpBuilder<(ins "Value":$target,
2514+
// CArg<"bool", "false">:$verify_non_zero_trip)>,
2515+
// ];
25162516
let extraClassDeclaration = [{
25172517
::mlir::DiagnosedSilenceableFailure applyToOne(
25182518
::mlir::transform::TransformRewriter &rewriter,
@@ -2546,9 +2546,9 @@ def HoistRedundantVectorBroadcastsOp :
25462546

25472547
let assemblyFormat = "$target attr-dict `:` functional-type(operands, results) ";
25482548

2549-
let builders = [
2550-
OpBuilder<(ins "Value":$target)>,
2551-
];
2549+
// let builders = [
2550+
// OpBuilder<(ins "Value":$target)>,
2551+
// ];
25522552
let extraClassDeclaration = [{
25532553
::mlir::DiagnosedSilenceableFailure applyToOne(
25542554
::mlir::transform::TransformRewriter &rewriter,
@@ -2623,9 +2623,9 @@ def ConvertConv2DToImg2ColOp : Op<Transform_Dialect,
26232623
let assemblyFormat =
26242624
"$target attr-dict `:` functional-type($target, results)";
26252625

2626-
let builders = [
2627-
OpBuilder<(ins "Value":$target)>
2628-
];
2626+
// let builders = [
2627+
// OpBuilder<(ins "Value":$target)>
2628+
// ];
26292629

26302630
let extraClassDeclaration = [{
26312631
::mlir::DiagnosedSilenceableFailure applyToOne(
@@ -2666,9 +2666,9 @@ def FlattenElementwiseLinalgOp : Op<Transform_Dialect,
26662666
let assemblyFormat =
26672667
"$target attr-dict `:` functional-type($target, results)";
26682668

2669-
let builders = [
2670-
OpBuilder<(ins "Value":$target)>
2671-
];
2669+
// let builders = [
2670+
// OpBuilder<(ins "Value":$target)>
2671+
// ];
26722672

26732673
let extraClassDeclaration = [{
26742674
::mlir::DiagnosedSilenceableFailure applyToOne(
@@ -2715,9 +2715,9 @@ def TransposeConv2DOp : Op<Transform_Dialect,
27152715
let assemblyFormat =
27162716
"$target attr-dict `:` functional-type($target, results)";
27172717

2718-
let builders = [
2719-
OpBuilder<(ins "Value":$target)>
2720-
];
2718+
// let builders = [
2719+
// OpBuilder<(ins "Value":$target)>
2720+
// ];
27212721

27222722
let extraClassDeclaration = [{
27232723
::mlir::DiagnosedSilenceableFailure applyToOne(
@@ -2761,9 +2761,9 @@ def TransposeMatmulOp : Op<Transform_Dialect,
27612761
attr-dict `:` functional-type($target, results)
27622762
}];
27632763

2764-
let builders = [
2765-
OpBuilder<(ins "Value":$target)>
2766-
];
2764+
// let builders = [
2765+
// OpBuilder<(ins "Value":$target)>
2766+
// ];
27672767

27682768
let extraClassDeclaration = [{
27692769
::mlir::DiagnosedSilenceableFailure applyToOne(
@@ -2801,9 +2801,9 @@ def InsertSliceToCopyOp :
28012801

28022802
let assemblyFormat = "$target attr-dict `:` functional-type(operands, results) ";
28032803

2804-
let builders = [
2805-
OpBuilder<(ins "Value":$target)>,
2806-
];
2804+
// let builders = [
2805+
// OpBuilder<(ins "Value":$target)>,
2806+
// ];
28072807
let extraClassDeclaration = [{
28082808
::mlir::DiagnosedSilenceableFailure applyToOne(
28092809
::mlir::transform::TransformRewriter &rewriter,
@@ -2859,9 +2859,9 @@ def MapCopyToThreadsOp :
28592859
`:` functional-type(operands, results)
28602860
}];
28612861

2862-
let builders = [
2863-
OpBuilder<(ins "Value":$target)>,
2864-
];
2862+
// let builders = [
2863+
// OpBuilder<(ins "Value":$target)>,
2864+
// ];
28652865
let extraClassDeclaration = [{
28662866
::mlir::DiagnosedSilenceableFailure applyToOne(
28672867
::mlir::transform::TransformRewriter &rewriter,
@@ -2910,9 +2910,9 @@ def WinogradConv2DOp : Op<Transform_Dialect,
29102910
let assemblyFormat =
29112911
"$target attr-dict `:` functional-type($target, results)";
29122912

2913-
let builders = [
2914-
OpBuilder<(ins "Value":$target)>
2915-
];
2913+
// let builders = [
2914+
// OpBuilder<(ins "Value":$target)>
2915+
// ];
29162916

29172917
let extraClassDeclaration = [{
29182918
::mlir::DiagnosedSilenceableFailure applyToOne(
@@ -2947,9 +2947,9 @@ def DecomposeWinogradOp : Op<Transform_Dialect,
29472947
let assemblyFormat =
29482948
"$target attr-dict `:` functional-type($target, results)";
29492949

2950-
let builders = [
2951-
OpBuilder<(ins "Value":$target)>
2952-
];
2950+
// let builders = [
2951+
// OpBuilder<(ins "Value":$target)>
2952+
// ];
29532953

29542954
let extraClassDeclaration = [{
29552955
::mlir::DiagnosedSilenceableFailure applyToOne(

mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1751,9 +1751,9 @@ def DeclareMapperInfoOp : OpenMP_Op<"declare_mapper.info", [
17511751
parent DeclareMapperOp.
17521752
}] # clausesDescription;
17531753

1754-
let builders = [
1755-
OpBuilder<(ins CArg<"const DeclareMapperInfoOperands &">:$clauses)>
1756-
];
1754+
// let builders = [
1755+
// OpBuilder<(ins CArg<"const DeclareMapperInfoOperands &">:$clauses)>
1756+
// ];
17571757

17581758
let extraClassDeclaration = [{
17591759
// Override BlockArgOpenMPOpInterface method because `map` clauses have no

mlir/include/mlir/Dialect/Ptr/IR/PtrOps.td

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -171,9 +171,9 @@ def Ptr_TypeOffsetOp : Pointer_Op<"type_offset", [Pure]> {
171171

172172
let arguments = (ins TypeAttr:$elementType);
173173
let results = (outs AnySignlessIntegerOrIndex:$result);
174-
let builders = [
175-
OpBuilder<(ins "Type":$elementType)>
176-
];
174+
// let builders = [
175+
// OpBuilder<(ins "Type":$elementType)>
176+
// ];
177177
let assemblyFormat = [{
178178
$elementType attr-dict `:` type($result)
179179
}];

mlir/include/mlir/Dialect/SMT/IR/SMTIntOps.td

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,9 @@ class VariadicIntOp<string mnemonic> : SMTIntOp<mnemonic, [Pure, Commutative]> {
5454
let assemblyFormat = "$inputs attr-dict";
5555

5656
let builders = [
57-
OpBuilder<(ins "mlir::ValueRange":$inputs), [{
58-
build($_builder, $_state, $_builder.getType<smt::IntType>(), inputs);
59-
}]>,
57+
// OpBuilder<(ins "mlir::ValueRange":$inputs), [{
58+
// build($_builder, $_state, $_builder.getType<smt::IntType>(), inputs);
59+
// }]>,
6060
];
6161
}
6262

mlir/include/mlir/Dialect/Vector/IR/VectorOps.td

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3011,12 +3011,12 @@ def Vector_ScanOp :
30113011
vector<4x8x16x32xf32>, vector<4x16x32xf32>
30123012
```
30133013
}];
3014-
let builders = [
3015-
OpBuilder<(ins "Value":$source, "Value":$initial_value,
3016-
"CombiningKind":$kind,
3017-
CArg<"int64_t", "0">:$reduction_dim,
3018-
CArg<"bool", "true">:$inclusive)>
3019-
];
3014+
// let builders = [
3015+
// OpBuilder<(ins "Value":$source, "Value":$initial_value,
3016+
// "CombiningKind":$kind,
3017+
// CArg<"int64_t", "0">:$reduction_dim,
3018+
// CArg<"bool", "true">:$inclusive)>
3019+
// ];
30203020
let extraClassDeclaration = [{
30213021
VectorType getSourceType() {
30223022
return ::llvm::cast<VectorType>(getSource().getType());

mlir/include/mlir/IR/OpDefinition.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
namespace mlir {
3131
class Builder;
3232
class OpBuilder;
33+
class ImplicitLocOpBuilder;
3334

3435
/// This class implements `Optional` functionality for ParseResult. We don't
3536
/// directly use Optional here, because it provides an implicit conversion

0 commit comments

Comments
 (0)