IVGCVSW-5131 Add support for REDUCE_SUM, REDUCE_MIN and REDUCE_MAX
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ib88544dd6adc3d6a0d2f4c0b395e05b89bc8ad3e
diff --git a/1.2/HalPolicy.cpp b/1.2/HalPolicy.cpp
index 557b78c..7d45688 100644
--- a/1.2/HalPolicy.cpp
+++ b/1.2/HalPolicy.cpp
@@ -86,7 +86,7 @@
case V1_2::OperationType::MAXIMUM:
return ConvertMaximum(operation, model, data);
case V1_2::OperationType::MEAN:
- return ConvertMean(operation, model, data);
+ return ConvertReduce(operation, model, data, ReduceOperation::Mean);
case V1_2::OperationType::MINIMUM:
return ConvertMinimum(operation, model, data);
case V1_2::OperationType::MUL:
@@ -105,6 +105,12 @@
return ConvertQuantize(operation, model, data);
case V1_2::OperationType::QUANTIZED_16BIT_LSTM:
return ConvertQuantized16BitLstm(operation, model, data);
+ case V1_2::OperationType::REDUCE_MAX:
+ return ConvertReduce(operation, model, data, ReduceOperation::Max);
+ case V1_2::OperationType::REDUCE_MIN:
+ return ConvertReduce(operation, model, data, ReduceOperation::Min);
+ case V1_2::OperationType::REDUCE_SUM:
+ return ConvertReduce(operation, model, data, ReduceOperation::Sum);
case V1_2::OperationType::RELU:
return ConvertReLu(operation, model, data);
case V1_2::OperationType::RELU1:
@@ -306,10 +312,11 @@
return ::ConvertMaximum<hal_1_2::HalPolicy>(operation, model, data);
}
-bool HalPolicy::ConvertMean(const Operation& operation, const Model& model, ConversionData& data)
+bool HalPolicy::ConvertReduce(const Operation& operation, const Model& model, ConversionData& data,
+ ReduceOperation reduceOperation)
{
- ALOGV("hal_1_2::HalPolicy::ConvertMean()");
- return ::ConvertMean<hal_1_2::HalPolicy>(operation, model, data);
+ ALOGV("hal_1_2::HalPolicy::ConvertReduce()");
+ return ::ConvertReduce<hal_1_2::HalPolicy>(operation, model, data, reduceOperation);
}
bool HalPolicy::ConvertMinimum(const Operation& operation, const Model& model, ConversionData& data)