aboutsummaryrefslogtreecommitdiff
path: root/src/backends/backendsCommon/WorkloadFactory.cpp
diff options
context:
space:
mode:
authorRyan OShea <Ryan.OShea2@arm.com>2020-06-05 17:17:06 +0100
committerKeithARM <keith.davis@arm.com>2020-06-11 12:17:49 +0000
commitec6c68093eaef8a2b8e1fd64fcc765237973512e (patch)
treee4dd87466d5be44d1310f9e1c9c6e1355df43fbf /src/backends/backendsCommon/WorkloadFactory.cpp
parent6350d27286114dfdae5f65ae1823ba1150087efb (diff)
downloadarmnn-ec6c68093eaef8a2b8e1fd64fcc765237973512e.tar.gz
IVGCVSW-4906 Add front-end support for FILL operator
* Added new fill layer * Added visitor tests Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com> Change-Id: Iea677014866b4f2d514004623f59ee83f3c0eef8 Signed-off-by: Keith Davis <keith.davis@arm.com>
Diffstat (limited to 'src/backends/backendsCommon/WorkloadFactory.cpp')
-rw-r--r--src/backends/backendsCommon/WorkloadFactory.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/backends/backendsCommon/WorkloadFactory.cpp b/src/backends/backendsCommon/WorkloadFactory.cpp
index 0a13c99ab8..d2565cf21d 100644
--- a/src/backends/backendsCommon/WorkloadFactory.cpp
+++ b/src/backends/backendsCommon/WorkloadFactory.cpp
@@ -312,6 +312,20 @@ bool IWorkloadFactory::IsLayerSupported(const BackendId& backendId,
reason);
break;
}
+ case LayerType::Fill:
+ {
+ auto cLayer = PolymorphicDowncast<const FillLayer*>(&layer);
+ const TensorInfo& input = layer.GetInputSlot(0).GetConnection()->GetTensorInfo();
+ const TensorInfo& output = layer.GetOutputSlot(0).GetTensorInfo();
+ const FillDescriptor& descriptor = cLayer->GetParameters();
+
+ result = layerSupportObject->IsFillSupported(
+ OverrideDataType(input, dataType),
+ OverrideDataType(output, dataType),
+ descriptor,
+ reason);
+ break;
+ }
case LayerType::FakeQuantization:
{
auto cLayer = PolymorphicDowncast<const FakeQuantizationLayer*>(&layer);
@@ -1336,6 +1350,12 @@ std::unique_ptr<IWorkload> IWorkloadFactory::CreateFakeQuantization(const FakeQu
return std::unique_ptr<IWorkload>();
}
+std::unique_ptr<IWorkload> IWorkloadFactory::CreateFill(const FillQueueDescriptor& /*descriptor*/,
+ const WorkloadInfo& /*info*/) const
+{
+ return std::unique_ptr<IWorkload>();
+}
+
std::unique_ptr<IWorkload> IWorkloadFactory::CreateFloor(const FloorQueueDescriptor& /*descriptor*/,
const WorkloadInfo& /*info*/) const
{