@@ -37,107 +37,61 @@ def CreateONNXMaxOp : NativeCodeCall<"$_builder.create<ONNXMaxOp>($_loc, $0.getT
37
37
// ONNXAddOp %X = ZHighUnstickOp (ZHighAddOp (ZHighStickOp %X),
38
38
// (ZHighStickOp %Y))
39
39
//===----------------------------------------------------------------------===//
40
- def replaceZHighAddPattern1 : Pat<
41
- (ZHighUnstickOp (ZHighAddOp (ZHighStickOp:$s_x $x, $_, $_), $y)),
42
- (ONNXAddOp $x, (ZHighUnstickOp $y)),
43
- [(NotBlockArgument:$x), (HasOneUse:$s_x)]
44
- >;
45
-
46
- def replaceZHighAddPattern2 : Pat<
47
- (ZHighUnstickOp (ZHighAddOp $x, (ZHighStickOp:$s_y $y, $_, $_))),
48
- (ONNXAddOp (ZHighUnstickOp $x), $y),
49
- [(NotBlockArgument:$y), (HasOneUse:$s_y)]
40
+ def replaceZHighAddPattern : Pat<
41
+ (ZHighUnstickOp (ZHighAddOp (ZHighStickOp:$s_x $x, $_, $_), (ZHighStickOp:$s_y $y, $_, $_))),
42
+ (ONNXAddOp $x, $y),
43
+ [(NotBlockArgument:$x), (HasOneUse:$s_x), (NotBlockArgument:$y), (HasOneUse:$s_y)]
50
44
>;
51
45
52
46
//===----------------------------------------------------------------------===//
53
47
// ONNXMulOp %X = ZHighUnstickOp (ZHighMulOp (ZHighStickOp %X),
54
48
// (ZHighStickOp %Y))
55
49
//===----------------------------------------------------------------------===//
56
- def replaceZHighMulPattern1 : Pat<
57
- (ZHighUnstickOp (ZHighMulOp (ZHighStickOp:$s_x $x, $_, $_), $y)),
58
- (ONNXMulOp $x, (ZHighUnstickOp $y)),
59
- [(NotBlockArgument:$x), (HasOneUse:$s_x)], [ ],
60
- (addBenefit 1)
61
- >;
62
-
63
- def replaceZHighMulPattern2 : Pat<
64
- (ZHighUnstickOp (ZHighMulOp $x, (ZHighStickOp:$s_y $y, $_, $_))),
65
- (ONNXMulOp (ZHighUnstickOp $x), $y),
66
- [(NotBlockArgument:$y), (HasOneUse:$s_y)], [],
67
- (addBenefit 0)
50
+ def replaceZHighMulPattern : Pat<
51
+ (ZHighUnstickOp (ZHighMulOp (ZHighStickOp:$s_x $x, $_, $_), (ZHighStickOp:$s_y $y, $_, $_))),
52
+ (ONNXMulOp $x, $y),
53
+ [(NotBlockArgument:$x), (HasOneUse:$s_x), (NotBlockArgument:$y), (HasOneUse:$s_y)]
68
54
>;
69
55
70
56
//===----------------------------------------------------------------------===//
71
57
// ONNXSubOp %X = ZHighUnstickOp (ZHighSubOp (ZHighStickOp %X),
72
58
// (ZHighStickOp %Y))
73
59
//===----------------------------------------------------------------------===//
74
- def replaceZHighSubPattern1 : Pat<
75
- (ZHighUnstickOp (ZHighSubOp (ZHighStickOp:$s_x $x, $_, $_), $y)),
76
- (ONNXSubOp $x, (ZHighUnstickOp $y)),
77
- [(NotBlockArgument:$x), (HasOneUse:$s_x)], [ ],
78
- (addBenefit 1)
79
- >;
80
-
81
- def replaceZHighSubPattern2 : Pat<
82
- (ZHighUnstickOp (ZHighSubOp $x, (ZHighStickOp:$s_y $y, $_, $_))),
83
- (ONNXSubOp (ZHighUnstickOp $x), $y),
84
- [(NotBlockArgument:$y), (HasOneUse:$s_y)], [ ],
85
- (addBenefit 0)
60
+ def replaceZHighSubPattern : Pat<
61
+ (ZHighUnstickOp (ZHighSubOp (ZHighStickOp:$s_x $x, $_, $_), (ZHighStickOp:$s_y $y, $_, $_))),
62
+ (ONNXSubOp $x, $y),
63
+ [(NotBlockArgument:$x), (HasOneUse:$s_x), (NotBlockArgument:$y), (HasOneUse:$s_y)]
86
64
>;
87
65
88
66
//===----------------------------------------------------------------------===//
89
67
// ONNXDivOp %X = ZHighUnstickOp (ZHighDivOp (ZHighStickOp
90
68
// %X),(ZHighStickOp %Y))
91
69
// Note: turn off this pattern since NNPA is faster at this moment.
92
70
//===----------------------------------------------------------------------===//
93
- //def replaceZHighDivPattern1 : Pat<
94
- // (ZHighUnstickOp (ZHighDivOp (ZHighStickOp:$s_x $x, $_), $y)),
95
- // (ONNXDivOp $x, (ZHighUnstickOp $y)),
96
- // [(NotBlockArgument:$x), (HasOneUse:$s_x)], [ ],
97
- // (addBenefit 1)
98
- //>;
99
- //
100
- //def replaceZHighDivPattern2 : Pat<
101
- // (ZHighUnstickOp (ZHighDivOp $x, (ZHighStickOp:$s_y $y, $_))),
102
- // (ONNXDivOp (ZHighUnstickOp $x), $y),
103
- // [(NotBlockArgument:$y), (HasOneUse:$s_y)], [ ],
104
- // (addBenefit 0)
105
- //>;
71
+ // def replaceZHighDivPattern : Pat<
72
+ // (ZHighUnstickOp (ZHighDivOp (ZHighStickOp:$s_x $x, $_, $_), (ZHighStickOp:$s_y $y, $_, $_))),
73
+ // (ONNXDivOp $x, $y),
74
+ // [(NotBlockArgument:$x), (HasOneUse:$s_x), (NotBlockArgument:$y), (HasOneUse:$s_y)]
75
+ // >;
106
76
107
77
//===----------------------------------------------------------------------===//
108
78
// ONNXMinOp %X = ZHighUnstickOp (ZHighMinOp (ZHighStickOp %X),
109
79
// (ZHighStickOp %Y))
110
80
//===----------------------------------------------------------------------===//
111
- def replaceZHighMinPattern1 : Pat<
112
- (ZHighUnstickOp:$u (ZHighMinOp (ZHighStickOp:$s_x $x, $_, $_), $y)),
113
- (CreateONNXMinOp $u, $x, (ZHighUnstickOp $y)),
114
- [(NotBlockArgument:$x), (HasOneUse:$s_x)], [ ],
115
- (addBenefit 1)
116
- >;
117
-
118
- def replaceZHighMinPattern2 : Pat<
119
- (ZHighUnstickOp:$u (ZHighMinOp $x, (ZHighStickOp:$s_y $y, $_, $_))),
120
- (CreateONNXMinOp $u, (ZHighUnstickOp $x), $y),
121
- [(NotBlockArgument:$y), (HasOneUse:$s_y)], [ ],
122
- (addBenefit 0)
81
+ def replaceZHighMinPattern : Pat<
82
+ (ZHighUnstickOp:$u (ZHighMinOp (ZHighStickOp:$s_x $x, $_, $_), (ZHighStickOp:$s_y $y, $_, $_))),
83
+ (CreateONNXMinOp $u, $x, $y),
84
+ [(NotBlockArgument:$x), (HasOneUse:$s_x), (NotBlockArgument:$y), (HasOneUse:$s_y)]
123
85
>;
124
86
125
87
//===----------------------------------------------------------------------===//
126
88
// ONNXMaxOp %X = ZHighUnstickOp (ZHighMaxOp (ZHighStickOp %X),
127
89
// (ZHighStickOp %Y))
128
90
//===----------------------------------------------------------------------===//
129
- def replaceZHighMaxPattern1 : Pat<
130
- (ZHighUnstickOp:$u (ZHighMaxOp (ZHighStickOp:$s_x $x, $_, $_), $y)),
131
- (CreateONNXMaxOp $u, $x, (ZHighUnstickOp $y)),
132
- [(NotBlockArgument:$x), (HasOneUse:$s_x)], [ ],
133
- (addBenefit 1)
134
- >;
135
-
136
- def replaceZHighMaxPattern2 : Pat<
137
- (ZHighUnstickOp:$u (ZHighMaxOp $x, (ZHighStickOp:$s_y $y, $_, $_))),
138
- (CreateONNXMaxOp $u, (ZHighUnstickOp $x), $y),
139
- [(NotBlockArgument:$y), (HasOneUse:$s_y)], [ ],
140
- (addBenefit 0)
91
+ def replaceZHighMaxPattern : Pat<
92
+ (ZHighUnstickOp:$u (ZHighMaxOp (ZHighStickOp:$s_x $x, $_, $_), (ZHighStickOp:$s_y $y, $_, $_))),
93
+ (CreateONNXMaxOp $u, $x, $y),
94
+ [(NotBlockArgument:$x), (HasOneUse:$s_x), (NotBlockArgument:$y), (HasOneUse:$s_y)]
141
95
>;
142
96
143
97
//===----------------------------------------------------------------------===//
0 commit comments