Add support for Rank and scalar tensors
!armnn:3330
Signed-off-by: Finn Williams <Finn.Williams@Arm.com>
Change-Id: Icc429d9fabb570193d12bffef0e00dda7b51032f
diff --git a/Utils.cpp b/Utils.cpp
index 6481c28..d94a937 100644
--- a/Utils.cpp
+++ b/Utils.cpp
@@ -200,6 +200,9 @@
case V1_3::OperandType::TENSOR_INT32:
type = armnn::DataType::Signed32;
break;
+ case V1_3::OperandType::INT32:
+ type = armnn::DataType::Signed32;
+ break;
case V1_3::OperandType::TENSOR_QUANT8_ASYMM_SIGNED:
type = armnn::DataType::QAsymmS8;
break;
@@ -207,7 +210,17 @@
throw UnsupportedOperand<V1_3::OperandType>(operand.type);
}
- TensorInfo ret(operand.dimensions.size(), operand.dimensions.data(), type);
+ TensorInfo ret;
+ // 0 dimensional tensors will be flagged as scalars
+ if ( operand.dimensions.size() != 0)
+ {
+ ret = TensorInfo(operand.dimensions.size(), operand.dimensions.data(), type);
+ }
+ else
+ {
+ ret = TensorInfo(TensorShape(armnn::Dimensionality::Scalar), type);
+ }
+
if (perChannel)
{
// ExtraParams is expected to be of type channelQuant
@@ -224,7 +237,6 @@
ret.SetQuantizationScale(operand.scale);
ret.SetQuantizationOffset(operand.zeroPoint);
}
-
return ret;
}