aboutsummaryrefslogtreecommitdiff
path: root/tests/validation/fixtures/WarpPerspectiveFixture.h
diff options
context:
space:
mode:
authorPablo Tello <pablo.tello@arm.com>2018-08-07 11:23:54 +0100
committerAnthony Barbier <anthony.barbier@arm.com>2018-11-02 16:54:54 +0000
commitd8b03dd029261091e34dd8831d546299c60ce094 (patch)
treeced5c96940aa018f0a5a5a3a5fb0769d8dadcd1e /tests/validation/fixtures/WarpPerspectiveFixture.h
parent7da6dcfc199580828dbedfed15afdcc7a789192c (diff)
downloadComputeLibrary-d8b03dd029261091e34dd8831d546299c60ce094.tar.gz
MLCE-13: Sanitizing matrix argument in the Warp.
This changes help to prevent errors like passing a matrix with less elements than required into the warp functions. Change-Id: I863f933a5e0568258717cffed3a20788d3d03083 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/143044 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'tests/validation/fixtures/WarpPerspectiveFixture.h')
-rw-r--r--tests/validation/fixtures/WarpPerspectiveFixture.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/tests/validation/fixtures/WarpPerspectiveFixture.h b/tests/validation/fixtures/WarpPerspectiveFixture.h
index c804fa6da7..0eba97c47c 100644
--- a/tests/validation/fixtures/WarpPerspectiveFixture.h
+++ b/tests/validation/fixtures/WarpPerspectiveFixture.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017 ARM Limited.
+ * Copyright (c) 2017-2018 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -64,8 +64,8 @@ public:
std::array<float, 9> matrix = { { 0 } };
fill_warp_matrix<9>(matrix);
- _target = compute_target(input_shape, vmask_shape, matrix.data(), policy, border_mode, constant_border_value, data_type);
- _reference = compute_reference(input_shape, vmask_shape, matrix.data(), policy, border_mode, constant_border_value, data_type);
+ _target = compute_target(input_shape, vmask_shape, matrix, policy, border_mode, constant_border_value, data_type);
+ _reference = compute_reference(input_shape, vmask_shape, matrix, policy, border_mode, constant_border_value, data_type);
}
protected:
@@ -75,7 +75,8 @@ protected:
library->fill_tensor_uniform(tensor, 0);
}
- TensorType compute_target(const TensorShape &shape, const TensorShape &vmask_shape, const float *matrix, InterpolationPolicy policy, BorderMode border_mode, uint8_t constant_border_value,
+ TensorType compute_target(const TensorShape &shape, const TensorShape &vmask_shape, const std::array<float, 9> &matrix, InterpolationPolicy policy, BorderMode border_mode,
+ uint8_t constant_border_value,
DataType data_type)
{
// Create tensors
@@ -105,7 +106,8 @@ protected:
return dst;
}
- SimpleTensor<T> compute_reference(const TensorShape &shape, const TensorShape &vmask_shape, const float *matrix, InterpolationPolicy policy, BorderMode border_mode, uint8_t constant_border_value,
+ SimpleTensor<T> compute_reference(const TensorShape &shape, const TensorShape &vmask_shape, const std::array<float, 9> &matrix, InterpolationPolicy policy, BorderMode border_mode,
+ uint8_t constant_border_value,
DataType data_type)
{
ARM_COMPUTE_ERROR_ON(data_type != DataType::U8);
@@ -120,7 +122,7 @@ protected:
fill(src);
// Compute reference
- return reference::warp_perspective<T>(src, _valid_mask, matrix, policy, border_mode, constant_border_value);
+ return reference::warp_perspective<T>(src, _valid_mask, matrix.data(), policy, border_mode, constant_border_value);
}
TensorType _target{};