aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/core/WindowIterator.h
diff options
context:
space:
mode:
authorAnthony Barbier <anthony.barbier@arm.com>2018-07-23 16:42:59 +0100
committerAnthony Barbier <anthony.barbier@arm.com>2018-11-02 16:54:54 +0000
commit3d677ccee046cd384abf2142f323f8e9e7a4834f (patch)
tree2e0d86a1b2438cb94386c55d1bc89b3e1061214c /arm_compute/core/WindowIterator.h
parent597a85666a84c9a9414264966651551564b79299 (diff)
downloadComputeLibrary-3d677ccee046cd384abf2142f323f8e9e7a4834f.tar.gz
COMPMID-1406: Refactor gemm_interleaved to use our own types and scheduler
- Ported PrepareB kernel from gemm_interleave - Ported TransformA feature from gemm_interleave - Allocate reshaped a and b buffers - Added memory_manager / memory_group - MatrixMultiply kernel - Interleave kernels execution. - Fixed a few bugs: all nightly Convolution tests passing for threads=1 and threads=4 - Added Doxygen documentations and comments in the code - Added support for all data types supported Change-Id: Iffa1c09fda0bb9c61213bb83524d5a48e7ecb03c Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/141281 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Diffstat (limited to 'arm_compute/core/WindowIterator.h')
-rw-r--r--arm_compute/core/WindowIterator.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/arm_compute/core/WindowIterator.h b/arm_compute/core/WindowIterator.h
index 8e58d0ce1c..32d6293a5a 100644
--- a/arm_compute/core/WindowIterator.h
+++ b/arm_compute/core/WindowIterator.h
@@ -110,6 +110,24 @@ public:
return get_ptr(x, y, z, w);
}
+ /** Returns a pointer to the first element of the tensor
+ *
+ * @return Pointer to the first element.
+ */
+ inline T *first_element()
+ {
+ return reinterpret_cast<T *>(_first);
+ }
+
+ /** Returns a pointer to the first element of the tensor
+ *
+ * @return Pointer to the first element.
+ */
+ inline T *operator()()
+ {
+ return first_element();
+ }
+
private:
uint8_t *_first; /**< Pointer to the first element of the tensor.*/
Strides _strides; /**< Strides in bytes of the tensor */