diff options
Diffstat (limited to 'src/armnn/StaticRangeVisitor.cpp')
-rw-r--r-- | src/armnn/StaticRangeVisitor.cpp | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/src/armnn/StaticRangeVisitor.cpp b/src/armnn/StaticRangeVisitor.cpp index 815730be31..d437a99931 100644 --- a/src/armnn/StaticRangeVisitor.cpp +++ b/src/armnn/StaticRangeVisitor.cpp @@ -152,6 +152,24 @@ void StaticRangeVisitor::VisitSoftmaxLayer(const IConnectableLayer* layer, SetRange(layer, 0, 0.f, 1.f); } +void StaticRangeVisitor::VisitConcatLayer(const IConnectableLayer* layer, + const OriginsDescriptor& originsDescriptor, + const char* name) +{ + float min = std::numeric_limits<float>::max(); + float max = std::numeric_limits<float>::lowest(); + for (unsigned int i = 0; i < layer->GetNumInputSlots(); ++i) + { + const IOutputSlot* outputSlot = layer->GetInputSlot(i).GetConnection(); + LayerGuid layerId = outputSlot->GetOwningLayerGuid(); + unsigned int slotIndex = outputSlot->CalculateIndexOnOwner(); + RangeTracker::MinMaxRange range = m_RangeTracker.GetRange(layerId, slotIndex); + min = std::min(min, range.first); + max = std::max(max, range.second); + } + SetRange(layer, 0, min, max); +} + void StaticRangeVisitor::VisitConstantLayer(const IConnectableLayer* layer, const ConstTensor& input, const char* name) @@ -180,24 +198,6 @@ void StaticRangeVisitor::VisitConstantLayer(const IConnectableLayer* layer, SetRange(layer, 0, min, max); } -void StaticRangeVisitor::VisitMergerLayer(const IConnectableLayer* layer, - const OriginsDescriptor& mergerDescriptor, - const char* name) -{ - float min = std::numeric_limits<float>::max(); - float max = std::numeric_limits<float>::lowest(); - for (unsigned int i = 0; i < layer->GetNumInputSlots(); ++i) - { - const IOutputSlot* outputSlot = layer->GetInputSlot(i).GetConnection(); - LayerGuid layerId = outputSlot->GetOwningLayerGuid(); - unsigned int slotIndex = outputSlot->CalculateIndexOnOwner(); - RangeTracker::MinMaxRange range = m_RangeTracker.GetRange(layerId, slotIndex); - min = std::min(min, range.first); - max = std::max(max, range.second); - } - SetRange(layer, 0, min, max); -} - void StaticRangeVisitor::VisitReshapeLayer(const IConnectableLayer* layer, const ReshapeDescriptor& reshapeDescriptor, const char* name) |