IVGCVSW-3572 Fix tests failing due to usupported input tensor

Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I55502cf2abcf28a1c1810269f1955ca78b23c39a
diff --git a/ConversionUtils.hpp b/ConversionUtils.hpp
index 790382d..694e1b2 100644
--- a/ConversionUtils.hpp
+++ b/ConversionUtils.hpp
@@ -994,8 +994,26 @@
 
         switch (operand->lifetime)
         {
-            case HalOperandLifeTime::TEMPORARY_VARIABLE: // intentional fallthrough
             case HalOperandLifeTime::MODEL_INPUT:
+            {
+                // NOTE: We must check whether we can support the input tensor on at least one
+                // of the provided backends; otherwise we cannot convert the operation
+                bool isInputSupported = false;
+                FORWARD_LAYER_SUPPORT_FUNC(__func__,
+                                           IsInputSupported,
+                                           data.m_Backends,
+                                           isInputSupported,
+                                           operandTensorInfo);
+
+                if (!isInputSupported)
+                {
+                    Fail("%s: unsupported input tensor", __func__);
+                    return LayerInputHandle();
+                }
+
+                BOOST_FALLTHROUGH; // intentional fallthrough
+            }
+            case HalOperandLifeTime::TEMPORARY_VARIABLE: // intentional fallthrough
             case HalOperandLifeTime::MODEL_OUTPUT:
             {
                 // The tensor is either an operand internal to the model, or a model input.
@@ -1004,9 +1022,8 @@
                 // m_OutputSlotForOperand[...] can be nullptr if the previous layer could not be converted
                 const uint32_t operandIndex = operation.inputs[inputIndex];
                 return LayerInputHandle(true, data.m_OutputSlotForOperand[operandIndex], operandTensorInfo);
-                break;
             }
-            case HalOperandLifeTime::CONSTANT_COPY:
+            case HalOperandLifeTime::CONSTANT_COPY: // intentional fallthrough
             case HalOperandLifeTime::CONSTANT_REFERENCE:
             {
                 // The tensor has an already known constant value, and can be converted into an ArmNN Constant layer.