diff options
author | Finn Williams <Finn.Williams@Arm.com> | 2020-08-17 19:08:35 +0100 |
---|---|---|
committer | Finn Williams <Finn.Williams@Arm.com> | 2020-08-19 15:59:11 +0100 |
commit | 9a0444164b638dddbf480aa4fb081796c687e0fd (patch) | |
tree | 4f696a0e42ea76195dea133dcd6469b12d27f05b | |
parent | 1910a186e3d739a576a2a9ac2af8e8c245203e33 (diff) | |
download | android-nn-driver-9a0444164b638dddbf480aa4fb081796c687e0fd.tar.gz |
IVGCVSW-5220 Fix UnknownCombinationsTest/UnknownDimensionsTest
Signed-off-by: Finn Williams <Finn.Williams@Arm.com>
Change-Id: I4729497e67b711a8f1fbf7c555a26e97fa6c9ab6
-rw-r--r-- | ConversionUtils.hpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/ConversionUtils.hpp b/ConversionUtils.hpp index f2f95ac8..51727a31 100644 --- a/ConversionUtils.hpp +++ b/ConversionUtils.hpp @@ -1287,10 +1287,22 @@ LayerInputHandle ConvertToLayerInputHandle(const ::android::hardware::neuralnetw try { armnn::TensorInfo operandTensorInfo = GetTensorInfoForOperand(*operand); + if (IsDynamicTensor(operandTensorInfo)) { - Fail("%s: dynamic input tensors are not supported", __func__); - return LayerInputHandle(); + const uint32_t operandIndex = operation.inputs[inputIndex]; + + // Check if the dynamic input tensors have been inferred by one of the previous layers + // If not we can't support them + if(data.m_OutputSlotForOperand.size() >= operandIndex && data.m_OutputSlotForOperand[operandIndex]) + { + operandTensorInfo = data.m_OutputSlotForOperand[operandIndex]->GetTensorInfo(); + } + else + { + Fail("%s: Type 2 dynamic input tensors are not supported", __func__); + return LayerInputHandle(); + } } switch (operand->lifetime) |