From acb550f4410ae861e53cae27a9feb4b11d45769f Mon Sep 17 00:00:00 2001 From: Kevin Cheng Date: Tue, 29 Jun 2021 15:32:19 -0700 Subject: 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 Change-Id: Ia063c936bcb2a54d6e379a5bb6801aa72d1186f1 --- reference_model/src/ops/op_factory.cc | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'reference_model/src/ops/op_factory.cc') diff --git a/reference_model/src/ops/op_factory.cc b/reference_model/src/ops/op_factory.cc index 726ab7c..2d9e428 100644 --- a/reference_model/src/ops/op_factory.cc +++ b/reference_model/src/ops/op_factory.cc @@ -32,7 +32,8 @@ using namespace TosaReference; using namespace tosa; -GraphNode* OpFactory::newOp(TosaSerializationHandler* tsh, +GraphNode* OpFactory::newOp(SubgraphTraverser* sgt, + TosaSerializationHandler* tsh, Op opType, TosaAttributeBase* attribute, TosaQuantInfoBase* qinfo, @@ -349,7 +350,7 @@ GraphNode* OpFactory::newOp(TosaSerializationHandler* tsh, // data_nodes case Op_CONST: - return new OpConst(id); + return new OpConst(sgt, id); case Op_IDENTITY: DEF_FACTORY_RANK0_6_ONE_RANK_ONE_TYPE(OpIdentity, FLOAT); DEF_FACTORY_RANK0_6_ONE_RANK_ONE_TYPE(OpIdentity, INT32); @@ -398,13 +399,13 @@ GraphNode* OpFactory::newOp(TosaSerializationHandler* tsh, // custom case Op_CUSTOM: - return new OpCustom(id); + return new OpCustom(sgt, id); // control_flow case Op_COND_IF: - return new OpCondIf(tsh, attribute, id); + return new OpCondIf(sgt, tsh, attribute, id); case Op_WHILE_LOOP: - return new OpWhileLoop(tsh, attribute, id); + return new OpWhileLoop(sgt, tsh, attribute, id); // Ops not recognized default: -- cgit v1.2.1