COMPMID-3375: Port NEActivationLayer functions/kernels to run on
different tensors.
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com>
Change-Id: I98782bb73e9dc0899ffb1796aca6f99714adea94
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3343
Reviewed-by: Michalis Spyrou <michalis.spyrou@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
diff --git a/arm_compute/core/experimental/Types.h b/arm_compute/core/experimental/Types.h
index 6043db9..2b55918 100644
--- a/arm_compute/core/experimental/Types.h
+++ b/arm_compute/core/experimental/Types.h
@@ -36,21 +36,43 @@
/** Memory type */
enum class TensorType
{
- ACL_SRC = 0,
- ACL_SRC_0 = 0,
- ACL_SRC_1 = 1,
- ACL_SRC_2 = 2,
- ACL_DST = 30,
- ACL_DST_0 = 30,
- ACL_DST_1 = 31,
- ACL_INT = 50,
- ACL_INT_0 = 50,
- ACL_INT_1 = 51,
- ACL_INT_2 = 52
+ ACL_UNKNOWN = -1,
+ ACL_SRC = 0,
+ ACL_SRC_0 = 0,
+ ACL_SRC_1 = 1,
+ ACL_SRC_2 = 2,
+ ACL_DST = 30,
+ ACL_DST_0 = 30,
+ ACL_DST_1 = 31,
+ ACL_INT = 50,
+ ACL_INT_0 = 50,
+ ACL_INT_1 = 51,
+ ACL_INT_2 = 52
};
-using InputOperatorTensors = std::pair<TensorType /* tensor type */, const ITensor * /* tensor object */>;
-using OutputOperatorTensors = std::pair<TensorType /* tensor type */, ITensor * /* tensor object */>;
-using OperatorTensors = OutputOperatorTensors;
+
+/** Input tensor aggregate */
+struct InputTensor
+{
+ InputTensor(TensorType type, const ITensor *tensor)
+ : type(type), tensor(tensor)
+ {
+ }
+
+ TensorType type{ TensorType::ACL_UNKNOWN };
+ const ITensor *tensor{ nullptr };
+};
+/** Output tensor aggregate */
+struct OutputTensor
+{
+ OutputTensor(TensorType type, ITensor *tensor)
+ : type(type), tensor(tensor)
+ {
+ }
+
+ TensorType type{ TensorType::ACL_UNKNOWN };
+ ITensor *tensor{ nullptr };
+};
+using OperatorTensor = OutputTensor;
namespace experimental
{