[SYCL] Fixup SYCL metadata when dead argument is optimized and enable DAE for ESIMD (#10644)
This change enables DAE for ESIMD kernels and adds code to fixup
metadata inserted
by the SYCL FE when an argument is removed.
I found the metadata problem when running our E2E tests after enabling
DAE for ESIMD but it does not seem like an ESIMD-specific issue. This
change is tested by existing E2E tests.
The metadata fixup is required because downstream code in llvm-spirv
assumes
the number of operands for the metadata will match the actual number of
arguments
for the kernel.
Another option would be to fix the downstream code, but making the
metadata be accurate
to the actual kernel the downstream code will see seemed to be a better
root cause fix to me.
Let me know if you disagree with the above, or if you have a way to
prevent explicitly
listing all of the metadata to fix, which I don't love.
---------
Signed-off-by: Sarnie, Nick <nick.sarnie@intel.com>