diff options
Diffstat (limited to 'src/armnn/layers/ElementwiseBaseLayer.cpp')
-rw-r--r-- | src/armnn/layers/ElementwiseBaseLayer.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/armnn/layers/ElementwiseBaseLayer.cpp b/src/armnn/layers/ElementwiseBaseLayer.cpp index 44bbd0b839..e063293815 100644 --- a/src/armnn/layers/ElementwiseBaseLayer.cpp +++ b/src/armnn/layers/ElementwiseBaseLayer.cpp @@ -1,5 +1,5 @@ // -// Copyright © 2017 Arm Ltd. All rights reserved. +// Copyright © 2017 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // @@ -49,10 +49,12 @@ std::vector<TensorShape> ElementwiseBaseLayer::InferOutputShapes(const std::vect void ElementwiseBaseLayer::ValidateTensorShapesFromInputs(ShapeInferenceMethod shapeInferenceMethod) { - IgnoreUnused(shapeInferenceMethod); - VerifyLayerConnections(2, CHECK_LOCATION()); + const TensorShape& outputShape = GetOutputSlot(0).GetTensorInfo().GetShape(); + + VerifyShapeInferenceType(outputShape, shapeInferenceMethod); + auto inferredShapes = InferOutputShapes({ GetInputSlot(0).GetConnection()->GetTensorInfo().GetShape(), GetInputSlot(1).GetConnection()->GetTensorInfo().GetShape() @@ -60,11 +62,7 @@ void ElementwiseBaseLayer::ValidateTensorShapesFromInputs(ShapeInferenceMethod s ARMNN_ASSERT(inferredShapes.size() == 1); - std::string msg = GetLayerTypeAsCString(GetType()); - msg += "Layer: TensorShape set on OutputSlot[0] does not match the inferred shape."; - ConditionalThrowIfNotEqual<LayerValidationException>(msg, - GetOutputSlot(0).GetTensorInfo().GetShape(), - inferredShapes[0]); + ValidateAndCopyShape(outputShape, inferredShapes[0], shapeInferenceMethod, GetLayerTypeAsCString(GetType())); } } // namespace armnn |