Issue 184523
Summary [Matrix] Implement matrix support for the `WaveActiveAllEqual` HLSL Function
Labels HLSL, bot:HLSL
Assignees
Reporter kmpeng
    > Note: This issue tracks matrix support for `WaveActiveAllEqual`. The original implementation issue is [here](https://github.com/llvm/llvm-project/issues/99162).  

Matrix requirements:
- [ ] https://github.com/llvm/wg-hlsl/issues/387  


## HLSL:

Returns true if the _expression_ is the same for every active lane in the current wave (and thus uniform across it).

## Syntax


``` syntax
<bool-type> WaveActiveAllEqual(
   <type> expr
);
```



## Parameters

<dl> <dt>

*expr* 
</dt> <dd>

The _expression_ to evaluate.
`<type>` can be a basic scalar, vector, or matrix type.

</dd> </dl>

## Return value

Returns `true` for each component of `expr` that is the same for every active lane in the current wave.

`<bool-type>` will be a scalar, vector, or matrix of `bool`, matching the dimensionality of the input `<type>`.
For instance, an input `<type>` of `matrix<float, 4, 3>` will result in a return `<bool-type>` of `matrix<bool, 4, 3>`.

## Remarks

This function is supported from shader model 6.0 in all shader stages. 



 

## See also

<dl> <dt>

[Overview of Shader Model 6](https://github.com/MicrosoftDocs/win32/blob/docs/desktop-src//direct3dhlsl/hlsl-shader-model-6-0-features-for-direct3d-12.md)
</dt> <dt>

[Shader Model 6](https://github.com/MicrosoftDocs/win32/blob/docs/desktop-src//direct3dhlsl/shader-model-6-0.md)
</dt> </dl>
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to