diff options
author | Kevin Cheng <kevin.cheng@arm.com> | 2021-06-29 15:32:19 -0700 |
---|---|---|
committer | Kevin Cheng <kevin.cheng@arm.com> | 2021-08-20 18:07:06 +0100 |
commit | acb550f4410ae861e53cae27a9feb4b11d45769f (patch) | |
tree | ae2f4ec558c2cdf1afa020b80a09d7ab4be5ef6d /reference_model/src/ops/reduction.h | |
parent | 68e7aee65bda5ac03fa7def753b7dc7462554793 (diff) | |
download | reference_model-acb550f4410ae861e53cae27a9feb4b11d45769f.tar.gz |
Replace node level check ASSERT_MSG_NODE()/FATAL_ERROR_NODE() with REQUIRE() or ERROR_IF()
- Adding return code enum class: {VALID, UNPREDICTABLE, ERROR}
- Runtime errors (e.g. memory allocation failure) will abort immediately, or will return one of the three return codes
Part of the codes are re-written to pass REQUIRE() to the top-level (e.g. apply_scale_32/16())
- Update setExpectedFailure() to setExpectedReturnCode() on test generation script
- Update test regression script to interface with reference model change
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com>
Change-Id: Ia063c936bcb2a54d6e379a5bb6801aa72d1186f1
Diffstat (limited to 'reference_model/src/ops/reduction.h')
-rw-r--r-- | reference_model/src/ops/reduction.h | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/reference_model/src/ops/reduction.h b/reference_model/src/ops/reduction.h index cf75812..f4e29b9 100644 --- a/reference_model/src/ops/reduction.h +++ b/reference_model/src/ops/reduction.h @@ -27,7 +27,7 @@ template <int Rank, DType Dtype> class ReduceNode : public GraphNode { public: - ReduceNode(const Op& nodeType, TosaAttributeBase* attribute_, const uint64_t id_); + ReduceNode(SubgraphTraverser* sgt_, const Op& nodeType, TosaAttributeBase* attribute_, const uint64_t id_); virtual ~ReduceNode(); virtual int checkTensorAttributes(); virtual int eval() = 0; @@ -48,8 +48,8 @@ template <int Rank, DType Dtype> class OpReduceAll : public ReduceNode<Rank, Dtype> { public: - OpReduceAll(TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) - : ReduceNode<Rank, Dtype>(Op_REDUCE_ALL, attribute_, id_) + OpReduceAll(SubgraphTraverser* sgt_, TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) + : ReduceNode<Rank, Dtype>(sgt_, Op_REDUCE_ALL, attribute_, id_) {} virtual int eval(); }; @@ -58,8 +58,8 @@ template <int Rank, DType Dtype> class OpReduceAny : public ReduceNode<Rank, Dtype> { public: - OpReduceAny(TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) - : ReduceNode<Rank, Dtype>(Op_REDUCE_ALL, attribute_, id_) + OpReduceAny(SubgraphTraverser* sgt_, TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) + : ReduceNode<Rank, Dtype>(sgt_, Op_REDUCE_ALL, attribute_, id_) {} virtual int eval(); }; @@ -68,8 +68,8 @@ template <int Rank, DType Dtype> class OpReduceMax : public ReduceNode<Rank, Dtype> { public: - OpReduceMax(TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) - : ReduceNode<Rank, Dtype>(Op_REDUCE_MAX, attribute_, id_) + OpReduceMax(SubgraphTraverser* sgt_, TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) + : ReduceNode<Rank, Dtype>(sgt_, Op_REDUCE_MAX, attribute_, id_) {} virtual int eval(); }; @@ -78,8 +78,8 @@ template <int Rank, DType Dtype> class OpReduceMin : public ReduceNode<Rank, Dtype> { public: - OpReduceMin(TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) - : ReduceNode<Rank, Dtype>(Op_REDUCE_MIN, attribute_, id_) + OpReduceMin(SubgraphTraverser* sgt_, TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) + : ReduceNode<Rank, Dtype>(sgt_, Op_REDUCE_MIN, attribute_, id_) {} virtual int eval(); }; @@ -88,8 +88,8 @@ template <int Rank, DType Dtype> class OpReduceProduct : public ReduceNode<Rank, Dtype> { public: - OpReduceProduct(TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) - : ReduceNode<Rank, Dtype>(Op_REDUCE_PRODUCT, attribute_, id_) + OpReduceProduct(SubgraphTraverser* sgt_, TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) + : ReduceNode<Rank, Dtype>(sgt_, Op_REDUCE_PRODUCT, attribute_, id_) {} virtual int eval(); }; @@ -98,8 +98,8 @@ template <int Rank, DType Dtype> class OpReduceSum : public ReduceNode<Rank, Dtype> { public: - OpReduceSum(TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) - : ReduceNode<Rank, Dtype>(Op_REDUCE_SUM, attribute_, id_) + OpReduceSum(SubgraphTraverser* sgt_, TosaAttributeBase* attribute_, TosaQuantInfoBase* qinfo_, uint64_t id_) + : ReduceNode<Rank, Dtype>(sgt_, Op_REDUCE_SUM, attribute_, id_) {} virtual int eval(); }; |