diff options
author | Derek Lamberti <derek.lamberti@arm.com> | 2019-02-21 16:29:43 +0000 |
---|---|---|
committer | derek.lamberti <derek.lamberti@arm.com> | 2019-02-22 09:57:45 +0000 |
commit | 8ddae33ada66cc2ecdc0cde7799d81dda7532fb5 (patch) | |
tree | 3f835fe51cd00ddd1660e431b29db65991c66b06 /src/armnnDeserializer/test | |
parent | c64ea9fdf975a65e9a1dd67b44469add270d6f8b (diff) | |
download | armnn-8ddae33ada66cc2ecdc0cde7799d81dda7532fb5.tar.gz |
IVGSVSW-2736 Fix dangling reference to temporary storage
Change-Id: Ie6c553798eac732f37148d81970366e5a4ede1be
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
Diffstat (limited to 'src/armnnDeserializer/test')
-rw-r--r-- | src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp b/src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp index e5416362b6..d6504864ca 100644 --- a/src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp +++ b/src/armnnDeserializer/test/ParserFlatbuffersSerializeFixture.hpp @@ -166,11 +166,16 @@ void ParserFlatbuffersSerializeFixture::RunTest(unsigned int layersId, { using BindingPointInfo = std::pair<armnn::LayerBindingId, armnn::TensorInfo>; + auto ConvertBindingInfo = [](const armnnDeserializer::BindingPointInfo& bindingInfo) + { + return std::make_pair(bindingInfo.m_BindingId, bindingInfo.m_TensorInfo); + }; + // Setup the armnn input tensors from the given vectors. armnn::InputTensors inputTensors; for (auto&& it : inputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkInputBindingInfo(layersId, it.first); + BindingPointInfo bindingInfo = ConvertBindingInfo(m_Parser->GetNetworkInputBindingInfo(layersId, it.first)); armnn::VerifyTensorInfoDataType(bindingInfo.second, ArmnnType); inputTensors.push_back({ bindingInfo.first, armnn::ConstTensor(bindingInfo.second, it.second.data()) }); } @@ -180,7 +185,7 @@ void ParserFlatbuffersSerializeFixture::RunTest(unsigned int layersId, armnn::OutputTensors outputTensors; for (auto&& it : expectedOutputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(layersId, it.first); + BindingPointInfo bindingInfo = ConvertBindingInfo(m_Parser->GetNetworkOutputBindingInfo(layersId, it.first)); armnn::VerifyTensorInfoDataType(bindingInfo.second, ArmnnType); outputStorage.emplace(it.first, MakeTensor<DataType, NumOutputDimensions>(bindingInfo.second)); outputTensors.push_back( @@ -192,7 +197,7 @@ void ParserFlatbuffersSerializeFixture::RunTest(unsigned int layersId, // Compare each output tensor to the expected values for (auto&& it : expectedOutputData) { - BindingPointInfo bindingInfo = m_Parser->GetNetworkOutputBindingInfo(layersId, it.first); + BindingPointInfo bindingInfo = ConvertBindingInfo(m_Parser->GetNetworkOutputBindingInfo(layersId, it.first)); auto outputExpected = MakeTensor<DataType, NumOutputDimensions>(bindingInfo.second, it.second); BOOST_TEST(CompareTensors(outputExpected, outputStorage[it.first])); } |