COMPMID-2546: Fix kernel name tag invalid ptr for NEGEMMAssemblyWrapperKernel.h

Change-Id: Iafc53602c9e8795072939dc14782c4bc49940812
Signed-off-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
Reviewed-on: https://review.mlplatform.org/c/1700
Reviewed-by: Giorgio Arena <giorgio.arena@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
diff --git a/arm_compute/core/NEON/kernels/assembly/NEGEMMAssemblyWrapperKernel.h b/arm_compute/core/NEON/kernels/assembly/NEGEMMAssemblyWrapperKernel.h
index 084c3f2..53ec3e1 100644
--- a/arm_compute/core/NEON/kernels/assembly/NEGEMMAssemblyWrapperKernel.h
+++ b/arm_compute/core/NEON/kernels/assembly/NEGEMMAssemblyWrapperKernel.h
@@ -53,7 +53,7 @@
     /** Constructor
      */
     NEGEMMAssemblyWrapperKernel()
-        : _kernel(nullptr), _kernel_name_tag()
+        : _kernel(nullptr), _name("NEGEMMAssemblyWrapperKernel")
     {
     }
 
@@ -63,12 +63,7 @@
 
     const char *name() const override
     {
-        std::string name = "NEGEMMAssemblyWrapperKernel";
-        if(!_kernel_name_tag.empty())
-        {
-            name += "/" + _kernel_name_tag;
-        }
-        return name.c_str();
+        return _name.c_str();
     }
     // Inherited methods overridden:
     void run(const Window &window, const ThreadInfo &info) override
@@ -88,16 +83,20 @@
     {
         ARM_COMPUTE_ERROR_ON_NULLPTR((reinterpret_cast<void *>(kernel)));
         _kernel          = kernel;
-        _kernel_name_tag = kernel_name_tag;
         auto   win_last  = _kernel->get_window_size();
         Window win;
         win.set(Window::DimX, Window::Dimension(0, win_last, 1));
         INEKernel::configure(win);
+
+        if(!kernel_name_tag.empty())
+        {
+            _name += "/" + kernel_name_tag;
+        }
     }
 
 private:
     arm_gemm::GemmCommon<TypeInput, TypeOutput> *_kernel;
-    std::string _kernel_name_tag;
+    std::string _name;
 };
 } // namespace arm_compute
 #endif /* __ARM_COMPUTE_ASSEMBLY_GEMM_KERNEL_WRAPPER_KERNEL_H__ */