From ac4e873dad6aa6291fc36aff62047a896db04f6a Mon Sep 17 00:00:00 2001 From: Georgios Pinitas Date: Wed, 5 Jul 2017 17:02:25 +0100 Subject: COMPMID-417: Port DepthConcatenate to QS8/QS16 for NEON/CL. Change-Id: I3dddae63043c7aa18d908a4fc8abacf3c64f98ca Reviewed-on: http://mpd-gerrit.cambridge.arm.com/80081 Tested-by: Kaizen Reviewed-by: Steven Niu --- .../core/NEON/kernels/NEDepthConcatenateKernel.h | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'arm_compute/core/NEON') diff --git a/arm_compute/core/NEON/kernels/NEDepthConcatenateKernel.h b/arm_compute/core/NEON/kernels/NEDepthConcatenateKernel.h index 7384cd1f02..b22d37bfe6 100644 --- a/arm_compute/core/NEON/kernels/NEDepthConcatenateKernel.h +++ b/arm_compute/core/NEON/kernels/NEDepthConcatenateKernel.h @@ -51,9 +51,9 @@ public: ~NEDepthConcatenateKernel() = default; /** Initialise the kernel's inputs and output * - * @param[in] input Input tensor. Data types supported: F32. + * @param[in] input Input tensor. Data types supported: QS8/QS16/F16/F32. * @param[in] depth_offset The offset on the Z axis. - * @param[in,out] output Output tensor. Data types supported: F32. + * @param[in,out] output Output tensor. Data types supported: Same as @p input. * * @note: The output tensor's low two dimensions can't be smaller than the input one's. * @note: The gaps between the two lowest dimensions of input and output need to be divisible by 2. @@ -66,11 +66,15 @@ public: BorderSize border_size() const override; private: - const ITensor *_input; - ITensor *_output; - int _top_bottom; - int _left_right; - unsigned int _depth_offset; + using DepthConcatFunction = void(const ITensor *in, ITensor *out, std::pair start_xy, int depth_offset, const Window &window); + +private: + DepthConcatFunction *_func; + const ITensor *_input; + ITensor *_output; + int _top_bottom; + int _left_right; + unsigned int _depth_offset; }; } #endif /* __ARM_COMPUTE_NEDEPTHCONCATENATEKERNEL_H__ */ -- cgit v1.2.1