llvm / llvm/offload-test-suite
Add tests for Texture2DMSArray
@Icohedron is already working on this.
Since Aug 18, 2026.
- Dominant language
- C++
- Stars
- 18
- Forks
- 39
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 40
Description
## References
- https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/sm5-object-texture2dmsarray
- Existing Texture2D offload tests: `offload-test-suite/test/Feature/Textures/Texture2D.*.test.yaml`
## Description
Add runtime GPU offload tests for `Texture2DMSArray`. This is a multisampled arrayed 2D texture that only supports `Load` (with sample index), `operator[]`, `GetDimensions`, and `GetSamplePosition`. It does **not** support Sample, Gather, CalculateLevelOfDetail, or mips.
## Tasks
- [ ] **Add `Texture2DMSArray` to offload-test-suite `ResourceKind`**
- `offload-test-suite/include/Support/Pipeline.h` — add `Texture2DMSArray` to `ResourceKind` enum, update all helper methods and `ScalarEnumerationTraits`
- `offload-test-suite/lib/API/VK/Device.cpp` — add `Texture2DMSArray` cases: `VkDescriptorType`, `VkImageViewType` (`VK_IMAGE_VIEW_TYPE_2D_ARRAY`), image creation with `VK_SAMPLE_COUNT_*` and array layers
- `offload-test-suite/lib/API/DX/Device.cpp` — add `Texture2DMSArray` cases: `D3D12_SRV_DIMENSION_TEXTURE2DMSARRAY`, SRV descriptor setup
- `offload-test-suite/lib/API/MTL/MTLDevice.cpp` — add `Texture2DMSArray` case for Metal texture type mapping (`MTLTextureType2DMultisampleArray`)
- [ ] **Write tests** (`offload-test-suite/test/Feature/Textures/`)
- `Load.test` — `Load(int3, int)` and `Load(int3, int, int2)` with different sample indices and array slices
- `OperatorIndex.test` — `Tex[int3]` subscript across array slices
- `sample.OperatorIndex.test` — `sample[int][int3]` with different sample indices and array slices
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.