@@ -100,13 +100,15 @@ class OperationNode : public FunctionBaseNode {
100
100
/* !
101
101
* \brief Propagate the bounds to inputs
102
102
* \param self The reference to self.
103
+ * \param analyzer The analyzer to be used in the function.
103
104
* \param dom_map the domain map of Variables(corresponds to root_iter_vars)
104
105
* \param out_dom_map The output domain.
105
106
* The function is only asked to fill the bounds for Tensors that
106
107
* is already in the out_dom_map
107
108
*/
108
109
virtual void PropBoundToInputs (
109
110
const Operation& self,
111
+ arith::Analyzer* analyzer,
110
112
const std::unordered_map<const Variable*, IntSet>& dom_map,
111
113
std::unordered_map<Tensor, TensorDom>* out_dom_map) const = 0;
112
114
/* !
@@ -170,6 +172,7 @@ class PlaceholderOpNode : public OperationNode {
170
172
const std::unordered_map<Tensor, Tensor>& rmap) const final ;
171
173
void PropBoundToInputs (
172
174
const Operation& self,
175
+ arith::Analyzer* analyzer,
173
176
const std::unordered_map<const Variable*, IntSet>& dom_map,
174
177
std::unordered_map<Tensor, TensorDom>* out_dom_map) const final ;
175
178
void GatherBound (
@@ -247,6 +250,7 @@ class TVM_DLL ComputeOpNode : public BaseComputeOpNode {
247
250
const std::unordered_map<Tensor, Tensor>& rmap) const final ;
248
251
void PropBoundToInputs (
249
252
const Operation& self,
253
+ arith::Analyzer* analyzer,
250
254
const std::unordered_map<const Variable*, IntSet>& dom_map,
251
255
std::unordered_map<Tensor, TensorDom>* out_dom_map) const final ;
252
256
Stmt BuildProvide (
@@ -299,6 +303,7 @@ class TensorComputeOpNode : public BaseComputeOpNode {
299
303
const std::unordered_map<Tensor, Tensor>& rmap) const final ;
300
304
void PropBoundToInputs (
301
305
const Operation& self,
306
+ arith::Analyzer* analyzer,
302
307
const std::unordered_map<const Variable*, IntSet>& dom_map,
303
308
std::unordered_map<Tensor, TensorDom>* out_dom_map) const final ;
304
309
Stmt BuildProvide (
@@ -373,6 +378,7 @@ class ScanOpNode : public OperationNode {
373
378
const std::unordered_map<Tensor, Tensor>& rmap) const final ;
374
379
void PropBoundToInputs (
375
380
const Operation& self,
381
+ arith::Analyzer* analyzer,
376
382
const std::unordered_map<const Variable*, IntSet>& dom_map,
377
383
std::unordered_map<Tensor, TensorDom>* out_dom_map) const final ;
378
384
void GatherBound (
@@ -439,6 +445,7 @@ class ExternOpNode : public OperationNode {
439
445
const std::unordered_map<Tensor, Tensor>& rmap) const final ;
440
446
void PropBoundToInputs (
441
447
const Operation& self,
448
+ arith::Analyzer* analyzer,
442
449
const std::unordered_map<const Variable*, IntSet>& dom_map,
443
450
std::unordered_map<Tensor, TensorDom>* out_dom_map) const final ;
444
451
void GatherBound (
@@ -506,6 +513,7 @@ class HybridOpNode : public OperationNode {
506
513
const std::unordered_map<Tensor, Tensor>& rmap) const final ;
507
514
void PropBoundToInputs (
508
515
const Operation& self,
516
+ arith::Analyzer* analyzer,
509
517
const std::unordered_map<const Variable*, IntSet>& dom_map,
510
518
std::unordered_map<Tensor, TensorDom>* out_dom_map) const final ;
511
519
void GatherBound (
0 commit comments