Integrate Dynamic Fusion patches

* Add public interfaces:
    * OperatorGraph: Describe a workload that could contain fused kernels
    * IWorkload: Generic interface for workloads built from OperatorGraph
    * ClWorkload: OpenCL workloads built from OperatorGraph
    * ClCompositeOperator: Runtime async operator to execute a ClWorkload
    * DependencyGraph (will likely be deprecated in later iterations)

* Add example
    * cl_fused_conv2d_elementwise_add.cpp to explain how to use the new
      interfaces

* Add internal translation layer

* Refactor ClKernelBuildingAPI
    * Remove non-tile based gemm native kernel component
    * Minor interface changes

* Add integration tests

Resolves COMPMID-5161

Signed-off-by: SiCong Li <sicong.li@arm.com>
Change-Id: Ib987ed79289ab0bcbd3130d54f5793408d9f1240
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/7510
Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
Reviewed-by: Gunes Bayir <gunes.bayir@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
diff --git a/filelist.json b/filelist.json
index 93dfdff..dc4be05 100644
--- a/filelist.json
+++ b/filelist.json
@@ -2074,10 +2074,17 @@
     "dynamic_fusion": [
       "src/core/experimental/dynamic_fusion/ClKernelBuildingAPI.cpp",
       "src/core/experimental/dynamic_fusion/ClKernelBuildingImpl/components/ClDirectConvolutionKernelComponent.cpp",
-      "src/core/experimental/dynamic_fusion/ClKernelBuildingImpl/components/ClGemmNativeKernelComponent.cpp",
       "src/core/experimental/dynamic_fusion/ClKernelBuildingImpl/components/ClElementwiseAddKernelComponent.cpp",
       "src/core/experimental/dynamic_fusion/ClKernelBuildingImpl/components/ClStoreKernelComponents.cpp",
-      "src/gpu/cl/kernels/experimental/dynamic_fusion/ClCompositeKernel.cpp"
+      "src/gpu/cl/kernels/experimental/dynamic_fusion/ClCompositeKernel.cpp",
+
+      "src/core/experimental/dynamic_fusion/OperatorGraph.cpp",
+      "src/core/experimental/dynamic_fusion/WorkloadImpl/ClWorkload.cpp",
+      "src/gpu/cl/operators/experimental/dynamic_fusion/ClCompositeOperator.cpp",
+      "src/core/experimental/dynamic_fusion/WorkloadImpl/OperatorGraphImpl.cpp",
+      "src/core/experimental/dynamic_fusion/WorkloadImpl/DependencyGraph.cpp",
+      "src/core/experimental/dynamic_fusion/WorkloadImpl/ClKernelGraph.cpp",
+      "src/core/experimental/dynamic_fusion/WorkloadImpl/ClFusedKernelGraph.cpp"
     ]
   }
 }