<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/144608>144608</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [DirectX] DXIL Data Scalarization is not scalarizing GEP for an array of vectors
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          Icohedron
      </td>
    </tr>
</table>

<pre>
    The following shader compiles without error under clang, but fails validation
https://godbolt.org/z/Tnq16cMxh

```hlsl
uint foo(uint2 v[2], uint i) { return v[i]; }
RWStructuredBuffer<uint> output;
[numthreads(1, 1, 1)] 
void CSMain(uint3 Tid : SV_DispatchThreadID) {
  uint2 v[2] = {Tid.xy, Tid.yx};
  output[Tid.z] = foo(v, Tid.z);
}
```

Validation error:
```
Invalid record
Validation failed.
```

The validation error is likely due to this GEP in the resulting DXIL
```llvm
%13 = getelementptr inbounds nuw [2 x <2 x i32>], ptr %12, i32 0, i32 %7, !dbg !106
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxkU81u4zYQfprRZbAGRVqyddDBjuIiQBcoGmO7t4ISRxZbmnT548R5-oKSs92kACEONX_fzDcjQ9AnS9RCtYeqK2SKk_Pt0-AmUt7Zonfq1h4nwtEZ4160PWGYpCKPgztftKGALzpOLkUk753HZGelkfYE_AH7FHGU2gS8SqOVjNpZYLspxksAsQN-AH44OdU7E1fOn4Af3oAfjvafsh6-vk7AdvnUbDmTCQbYLmkbcXQO-DaLHK9Q7TlUXU45KzXwBmGzR08xeTsb6Gwg9gibDtju9z-eo09DTJ7UPo0jeRAP2RfEI7oULymC2Ofk1d6mc5w8SRWAb8uc5P3TQNUhsN3VaYUPz1-ltndQAo9aIYgdPn_7s9PhIuMwHecoT90dHbAd4scKEESXVUetVq-3nCVLt9cMWiwOd3DVbPP27rO04_ru8ZaxLfjncn-0cOnotx9sLLxlLj4aPdmZMfQ0OK8-umRGSa3-HzZPyvVTaNQBjf6bzA1VIowO46QD_vL4G2qLcSL0FJKJeba670-__hzVmOs5v3lVirnKE0UydCYbL9Gjtr1LVgW06QVzA_EVQTzkSwsO4vE-Etk2x-D5oQVH9i4ArzZZBl6q_pSvktU_IyhUK1QjGllQW24qVjbVljfF1Na1YlQ3Tb0ZeD8y2dd90wvORlJ8EIoVuuWMV6wuN7wUjDcrUqRqzreb9VYIEhzWjM5Sm1WuMg9_oUNI1Jbrdc22hZE9mTBvJueWXnDWAs9TUvg2O33p0ynAmhkdYvgvTNTRzCvdaU9D_J5HJHcWOxklPg_SSK_fFop0QOsihvvPTEJmZnQepUXpvbyhG_FKQ3Q-FMmb9tPy6jilfjW4M_DDzNdyfbl49xcNEfhhBh6AH-6VXVv-bwAAAP__1kxcHw">