tint/hlsl: widen scope of workaround of DXC bug with const structs/arrays

Initial fix was not good enough:
https://dawn-review.googlesource.com/c/dawn/+/156900

In HLSL, composite types are all treated the same: arrays, structs,
vectors, and matrices. The bug happens when intializing a const variable
of composite type with another composite type. Any dynamic writes to the
rhs beforehand are ignored. To fix this, we simply will not emit 'const'
for any lets.

I've updated the upstream issue with these findings:
https://github.com/microsoft/DirectXShaderCompiler/issues/5883

Bug: tint:2059
Bug: tint:2150
Change-Id: I1df1017ee130514b3f6564791d1679145d8b1e7e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/171880
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
diff --git a/test/tint/builtins/atomicStore/array/arrays.wgsl.expected.dxc.hlsl b/test/tint/builtins/atomicStore/array/arrays.wgsl.expected.dxc.hlsl
index 4e13e38..f1093da 100644
--- a/test/tint/builtins/atomicStore/array/arrays.wgsl.expected.dxc.hlsl
+++ b/test/tint/builtins/atomicStore/array/arrays.wgsl.expected.dxc.hlsl
@@ -7,9 +7,9 @@
 void compute_main_inner(uint local_invocation_index) {
   {
     for(uint idx = local_invocation_index; (idx < 6u); idx = (idx + 1u)) {
-      const uint i = (idx / 2u);
-      const uint i_1 = (idx % 2u);
-      const uint i_2 = (idx % 1u);
+      uint i = (idx / 2u);
+      uint i_1 = (idx % 2u);
+      uint i_2 = (idx % 1u);
       uint atomic_result = 0u;
       InterlockedExchange(wg[i][i_1][i_2], 0u, atomic_result);
     }