aboutsummaryrefslogtreecommitdiff
path: root/src/backends/backendsCommon/memoryOptimizerStrategyLibrary/strategies/SingleAxisPriorityList.cpp
diff options
context:
space:
mode:
authorFinn Williams <finn.williams@arm.com>2021-11-10 19:43:51 +0000
committerDavid Monahan <David.Monahan@arm.com>2021-11-11 15:19:39 +0000
commita1a28e0386d313b015519746e0f15e7bbbdf5ff9 (patch)
tree786952893d53914d82e17856e980016c2e8791bc /src/backends/backendsCommon/memoryOptimizerStrategyLibrary/strategies/SingleAxisPriorityList.cpp
parent7e4dc4729d2af8b554be52206fc89bbe1dc21882 (diff)
downloadarmnn-a1a28e0386d313b015519746e0f15e7bbbdf5ff9.tar.gz
IVGCVSW-6569 Fix SingleAxisPriorityList
* Fix overlap detection with strategy validator Signed-off-by: Finn Williams <finn.williams@arm.com> Change-Id: If9d9d9586864cef7d109aad24bdb0f682fefb1bd
Diffstat (limited to 'src/backends/backendsCommon/memoryOptimizerStrategyLibrary/strategies/SingleAxisPriorityList.cpp')
-rw-r--r--src/backends/backendsCommon/memoryOptimizerStrategyLibrary/strategies/SingleAxisPriorityList.cpp8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/backends/backendsCommon/memoryOptimizerStrategyLibrary/strategies/SingleAxisPriorityList.cpp b/src/backends/backendsCommon/memoryOptimizerStrategyLibrary/strategies/SingleAxisPriorityList.cpp
index 738b7137a7..002cd80bb0 100644
--- a/src/backends/backendsCommon/memoryOptimizerStrategyLibrary/strategies/SingleAxisPriorityList.cpp
+++ b/src/backends/backendsCommon/memoryOptimizerStrategyLibrary/strategies/SingleAxisPriorityList.cpp
@@ -8,7 +8,7 @@
#include <algorithm>
#include <cstdlib>
-
+#include <iostream>
namespace armnn
{
@@ -155,10 +155,8 @@ void SingleAxisPriorityList::PlaceBlocks(const std::list<MemBlock*>& priorityLis
// The indexes don't match we need at least two words
// Zero the bits to the right of curBlock->m_EndOfLife
- remainder = (curBlock->m_EndOfLife - lastWordIndex * wordSize);
-
- size_t lastWord = (1ul << remainder) - 1;
- lastWord = lastWord << (wordSize - remainder);
+ remainder = (curBlock->m_EndOfLife + 1 - lastWordIndex * wordSize);
+ size_t lastWord = std::numeric_limits<size_t>::max() << (wordSize - remainder);
if(firstWordIndex + 1 == lastWordIndex)
{