aboutsummaryrefslogtreecommitdiff
path: root/src/core/GLES_COMPUTE/kernels
diff options
context:
space:
mode:
authorFrank Lei <frank.lei@arm.com>2018-01-04 13:02:40 +0800
committerAnthony Barbier <anthony.barbier@arm.com>2018-11-02 16:42:39 +0000
commit1bfc7849950b67aeee382b08f27fd0b1b5ef0587 (patch)
treeac26809b0691234f2ae6ee4a775027746455decd /src/core/GLES_COMPUTE/kernels
parent345ab188c66017bf80512024a42b8e85ee96c872 (diff)
downloadComputeLibrary-1bfc7849950b67aeee382b08f27fd0b1b5ef0587.tar.gz
APPBROWSER-376: Work around for scale validation error.
Use "vec2 scale" instead of scale_x/scale_y to work around this issue. Change-Id: Ieae55327596fdb853d7b625262fec3a3a84f577c Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/115143 Reviewed-by: Joel Liang <joel.liang@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com> Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Frank Lei <frank.lei@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'src/core/GLES_COMPUTE/kernels')
-rw-r--r--src/core/GLES_COMPUTE/kernels/GCScaleKernel.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/core/GLES_COMPUTE/kernels/GCScaleKernel.cpp b/src/core/GLES_COMPUTE/kernels/GCScaleKernel.cpp
index 7461c544da..f307cfb239 100644
--- a/src/core/GLES_COMPUTE/kernels/GCScaleKernel.cpp
+++ b/src/core/GLES_COMPUTE/kernels/GCScaleKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016, 2018 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -128,13 +128,9 @@ void GCScaleKernel::configure(const IGCTensor *input, IGCTensor *output, Interpo
IGCKernel::configure(win);
- // Set static kernel arguments
- const float scale_x = static_cast<float>(input->info()->dimension(0)) / output->info()->dimension(0);
- const float scale_y = static_cast<float>(input->info()->dimension(1)) / output->info()->dimension(1);
-
unsigned int idx = 2 * num_arguments_per_2D_tensor(); //Skip the tensor parameters
_kernel.set_argument<float>(idx++, static_cast<float>(input->info()->dimension(0)));
_kernel.set_argument<float>(idx++, static_cast<float>(input->info()->dimension(1)));
- _kernel.set_argument(idx++, scale_x);
- _kernel.set_argument(idx++, scale_y);
+ _kernel.set_argument<float>(idx++, wr);
+ _kernel.set_argument<float>(idx++, hr);
}