tree b1a75d350aea1f99d89c9dbf795b9f3173fca7b9
parent cd40bc487a8d07dfdcf58f6ab919543f8336d1db
author Sietze Riemersma <43845930+KungFuDonkey@users.noreply.github.com> 1761674473 +0100
committer GitHub <noreply@github.com> 1761674473 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJpAQTpCRC1aQ7uu5UhlAAAhnoQAHp9DXkuWAxYZmnv39wPBJLQ
 YHse39DqYDi79ZRsQYrLb06ETeoHMJh3l9qG2jJxGjNxPJ3tmcDlW6OmVJA+QVqT
 qGuxWJXVMatIk6n4DwDkfA4mJbajWMzV3ZqhEriVnRP+aq8+jdnZGV1ZesQPy0j7
 MSW9BpL8REIGaaS5OODhlbnclE5xsX2iy9+GQxcg4vpWs1HK+kmC1R64GX7Ve0ls
 V/0JJkdaDlN4Ew+sFGNp+mEhaCQPWUWH3zaVlYHSbPK0Kygh0nXH0EJABVNrhfKH
 ZEKqCItabEo16e+WbP4RQnvMZH0Tbf9maLsanVneeZ7oc62cvd8/W/TcrANAMImX
 BYKmNUl6gvdGQj1Lf0JOHtxm0bAMZihVp1Qm732YYbGajspyOQjdM+bhEZ/3B/G4
 fbcJDSQo8MQrtRr45U+8gJXZdkaEHm1wmfh4s2RyQ/Fo72JiZuqCK2V2TsJo5X2q
 NhcVZYgpLNHf9Z7lNuCH2Wb04/zOFRxI9nEdQt3dFuIEPYM2jf1MH7Iaf7ukORR7
 MIYornnejqmF/zw7LlEltuvoIkSIRNJ3ucaYr6vrdlIYsm4Yb9me/dgNdC0XHI3v
 1KIpsNlSiIGCfjOd9jjl1jmYqxUO92VMQVzIF70BgR6X+gQ8oZeKmEGuoo5IXE2C
 J9LTZKw2qB06MLQblBeS
 =Lkzn
 -----END PGP SIGNATURE-----
 

[HLSL][DXIL][SPRIV] Added WaveActiveMin intrinsic (#164385)

Adds the WaveActiveMin intrinsic from #99169. I think I did all of the
required things on the checklist:
- [x]  Implement `WaveActiveMin` clang builtin,
- [x]  Link `WaveActiveMin` clang builtin with `hlsl_intrinsics.h`
- [x] Add sema checks for `WaveActiveMin` to
`CheckHLSLBuiltinFunctionCall` in `SemaChecking.cpp`
- [x] Add codegen for `WaveActiveMin` to `EmitHLSLBuiltinExpr` in
`CGBuiltin.cpp`
- [x] Add codegen tests to
`clang/test/CodeGenHLSL/builtins/WaveActiveMin.hlsl`
- [x] Add sema tests to
`clang/test/SemaHLSL/BuiltIns/WaveActiveMin-errors.hlsl`
- [x] Create the `int_dx_WaveActiveMin` intrinsic in
`IntrinsicsDirectX.td`
- [x] Create the `DXILOpMapping` of `int_dx_WaveActiveMin` to `119` in
`DXIL.td`
- [x] Create the `WaveActiveMin.ll` and `WaveActiveMin_errors.ll` tests
in `llvm/test/CodeGen/DirectX/`
- [x] Create the `int_spv_WaveActiveMin` intrinsic in
`IntrinsicsSPIRV.td`
- [x] In SPIRVInstructionSelector.cpp create the `WaveActiveMin`
lowering and map it to `int_spv_WaveActiveMin` in
`SPIRVInstructionSelector::selectIntrinsic`.
- [x] Create SPIR-V backend test case in
`llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveMin.ll

But as some of the code has changed and was moved around (E.G.
`CGBuiltin.cpp` -> `CGHLSLBuiltins.cpp`) I mostly followed how
`WaveActiveMax()` is implemented.

I have not been able to run the tests myself as I am unsure which
project runs the correct test. Any guidance on how I can test myself
would be helpful.

Also added some tests to the offload-test-suite
https://github.com/llvm/offload-test-suite/pull/478