Skip to content

[SM6.9] Templated Load and Store long vectors from and to raw buffer types #7118

Closed
@pow2clk

Description

@pow2clk

Vectors of length greater than 4 should be loadable from ByteAddressBuffers and StructuredBuffers using the standard Load and Store methods. These are the templated methods in the case of ByteAddressBuffer. In SM 6.9, such loaded/stored vectors of over 1 element should generate rawBufferVectorLoad and rawBufferVectorStore DXIL intrinsics that operate on whole vectors rather than the previous 4 component at a time blocks.

Testing should be in the form of loading types with various shapes and element types involving vectors ranging from 1 to 1024 (though not inclusive) using the different load and store methods. This should include

  • long vectors directly
  • vectors as members of structs that are not the first element (requires valid offset loading)
  • arrays of long vectors
  • array of structs containing vectors
  • struct of arrays containing vectors

Metadata

Metadata

Assignees

Labels

enhancementFeature suggestionsm6.9Shader Model 6.9

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions