Skip to content

Long Vector Execution Tests: WaveMulti* #7612

@alsepkow

Description

@alsepkow

This issue captures adding long vector execution tests for the WaveOps intrinsics

The most recent Long Vector test plan document should be referenced when implementing: Long Vector Test Plan

Must be robust to different wave widths. Also need to deal with helper lanes in pixel shaders. Need testing in compute shaders. Might need to test in DXR shaders too.

Intrinsic Function Signature Operand Type(s) Return Type Notes
WaveMultiPrefixBitAnd T WaveMultiPrefixBitAnd(T expr, uint mask) int, uint (+vectors), mask same as T Bitwise AND prefix within subgroups
WaveMultiPrefixBitOr T WaveMultiPrefixBitOr(T expr, uint mask) int, uint (+vectors), mask same as T Bitwise OR prefix within subgroups
WaveMultiPrefixBitXor T WaveMultiPrefixBitXor(T expr, uint mask) int, uint (+vectors), mask same as T Bitwise XOR prefix within subgroups
WaveMultiPrefixProduct T WaveMultiPrefixProduct(T expr, uint mask) float, int, uint (+vectors) same as T Product prefix within subgroups
WaveMultiPrefixSum T WaveMultiPrefixSum(T expr, uint mask) float, int, uint (+vectors) same as T Sum prefix within subgroups

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions