[SYCL] Add pass to finish SROA for cooperative matrices
SROA has troubles processing structures containing TargetExtType, which in some cases will lead to a situation, when OpAccessChain would attempt to access a structure containing a cooperative matrix, but with indexes set to access the matrix itself, which is invalid. This PR adds routine that finds alloca to such structure and replaces it with alloca to cooperative matrix type.
@bwlodarcz @VyacheslavLevytskyy for some reasons can't add you as reviewers, yet please take a look when convenient
@AlexeySachkov thanks for the suggestions! Applied comments and move to be a pass executed during sycl-post-link.
@intel/dpcpp-tools-reviewers @intel/dpcpp-esimd-reviewers please take a look
@intel/llvm-gatekeepers please help with merge
Failure on Windows is after testing and is infrastructural.
@MrSidims Seeing postcommit XPASS failures on DG2, can you take a look?
https://github.com/intel/llvm/actions/runs/10678654371/job/29596502570