COMPMID-1710: Account alignment for blob-base allocations

Change-Id: I290d33e25a5966d25a91df39ebc01c28bfa31f78
Reviewed-on: https://review.mlplatform.org/402
Reviewed-by: Anthony Barbier <Anthony.barbier@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
diff --git a/arm_compute/runtime/ISimpleLifetimeManager.h b/arm_compute/runtime/ISimpleLifetimeManager.h
index f2eb4f5..4384283 100644
--- a/arm_compute/runtime/ISimpleLifetimeManager.h
+++ b/arm_compute/runtime/ISimpleLifetimeManager.h
@@ -58,7 +58,7 @@
     // Inherited methods overridden:
     void register_group(IMemoryGroup *group) override;
     void start_lifetime(void *obj) override;
-    void end_lifetime(void *obj, IMemory &obj_memory, size_t size) override;
+    void end_lifetime(void *obj, IMemory &obj_memory, size_t size, size_t alignment) override;
     bool are_all_finalized() const override;
 
 protected:
@@ -69,14 +69,15 @@
     /** Element struct */
     struct Element
     {
-        Element(void *id_ = nullptr, IMemory *handle_ = nullptr, size_t size_ = 0, bool status_ = false)
-            : id(id_), handle(handle_), size(size_), status(status_)
+        Element(void *id_ = nullptr, IMemory *handle_ = nullptr, size_t size_ = 0, size_t alignment_ = 0, bool status_ = false)
+            : id(id_), handle(handle_), size(size_), alignment(alignment_), status(status_)
         {
         }
-        void    *id;     /**< Element id */
-        IMemory *handle; /**< Element's memory handle */
-        size_t   size;   /**< Element's size */
-        bool     status; /**< Lifetime status */
+        void    *id;        /**< Element id */
+        IMemory *handle;    /**< Element's memory handle */
+        size_t   size;      /**< Element's size */
+        size_t   alignment; /**< Alignment requirement */
+        bool     status;    /**< Lifetime status */
     };
 
     /** Blob struct */
@@ -84,6 +85,7 @@
     {
         void            *id;
         size_t           max_size;
+        size_t           max_alignment;
         std::set<void *> bound_elements;
     };