From 598e3a8f32c68129958b9f6a40c684842f708f8a Mon Sep 17 00:00:00 2001 From: Gian Marco Iodice Date: Tue, 13 Apr 2021 15:53:20 +0100 Subject: Fix TILE initialization in direct convolution and winograd transforms - The array initializer for the TILE object cannot always be utilized and so we do require to manually initialize the TILE with the LOOP_UNROLLING macro - Resolves COMPMID-4371 Change-Id: I2598354b9fae84c5e3bd11219fffdcdc297215e1 Signed-off-by: Gian Marco Iodice Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5417 Reviewed-by: Georgios Pinitas Comments-Addressed: Arm Jenkins Tested-by: Arm Jenkins --- src/core/CL/cl_kernels/direct_convolution.cl | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/core/CL/cl_kernels/direct_convolution.cl') diff --git a/src/core/CL/cl_kernels/direct_convolution.cl b/src/core/CL/cl_kernels/direct_convolution.cl index 220179effb..a9a997f9ac 100644 --- a/src/core/CL/cl_kernels/direct_convolution.cl +++ b/src/core/CL/cl_kernels/direct_convolution.cl @@ -150,7 +150,12 @@ __kernel void direct_convolution_nhwc( } // Initialize the accumulators - TILE(ACC_DATA_TYPE, M0, N0, c) = { { { 0 } } }; + TILE(ACC_DATA_TYPE, M0, N0, c); + + LOOP_UNROLLING(int, i, 0, M0, 1) + { + c[i].v = 0; + } for(int i = 0; i < (_IWEI_WIDTH * _IWEI_HEIGHT); ++i) { -- cgit v1.2.1