Tweak to misaligned memory pointer tests to not read/write to misaligned buffers
Signed-off-by: David Monahan <David.Monahan@arm.com>
Change-Id: Ic1272f1f6bb218e44cb0a0c58186641e8c4a5212
diff --git a/src/backends/backendsCommon/test/EndToEndTestImpl.hpp b/src/backends/backendsCommon/test/EndToEndTestImpl.hpp
index 086f6b7..77901df 100644
--- a/src/backends/backendsCommon/test/EndToEndTestImpl.hpp
+++ b/src/backends/backendsCommon/test/EndToEndTestImpl.hpp
@@ -1130,11 +1130,11 @@
// Check the output is correct
}
unsigned int index = 0;
- char outputData[expectedOutput.size() * sizeof(float)];
- std::memcpy(outputData, misalignedMemPtr, expectedOutput.size() * sizeof(float));
+ std::vector<float> outputData(expectedOutput.size(), 0);
+ std::memcpy(outputData.data(), misalignedMemPtr, expectedOutput.size() * sizeof(float));
for (auto outputValue : expectedOutput)
{
- CHECK(outputValue == reinterpret_cast<float*>(outputData)[index]);
+ CHECK(outputValue == outputData[index]);
++index;
}
std::free(memPtr);
@@ -1241,7 +1241,7 @@
}
// Check the output is correct
unsigned int index = 0;
- std::vector<float> outputData(expectedOutput.size());
+ std::vector<float> outputData(expectedOutput.size(), 0);
std::memcpy(outputData.data(), misalignedOutputPtr, expectedOutput.size() * sizeof(float));
for (auto expectedValue : expectedOutput)
{
@@ -1418,7 +1418,7 @@
}
// Check the output is correct
unsigned int index = 0;
- std::vector<float> alignedOutputData(expectedMisalignedOutput.size());
+ std::vector<float> alignedOutputData(expectedMisalignedOutput.size(), 0);
std::memcpy(alignedOutputData.data(), misalignedOutputPtr, expectedMisalignedOutput.size() * sizeof(float));
for (auto outputValue : expectedMisalignedOutput)
{