vkd3d-shader/hlsl: Implement the firstbithigh() intrinsic.

This commit is contained in:
Petrichor Park
2024-07-29 13:12:09 -05:00
committed by Henri Verbeet
parent e49beca0d5
commit e6d840170d
Notes: Henri Verbeet 2025-09-22 11:46:20 +02:00
Approved-by: Francisco Casas (@fcasas)
Approved-by: Elizabeth Figura (@zfigura)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/965
7 changed files with 192 additions and 7 deletions

View File

@@ -288,7 +288,7 @@ probe(1, 0) u32(0, 1, 0, 3)
probe(2, 0) u32(0, 1, 0, 2)
probe(3, 0) u32(0, 1, 0, 4)
[pixel shader todo]
[pixel shader]
uint4 u;
uint4 main() : sv_target
@@ -298,10 +298,10 @@ uint4 main() : sv_target
[test]
uniform 0 uint4 0 0xffffffff 0x00001000 0x00760400
todo(sm<6 | msl & sm>=6) draw quad
todo(msl & sm>=6) draw quad
probe (0, 0) u32(0xffffffff, 31, 12, 22)
[pixel shader todo]
[pixel shader]
int4 i;
uint4 main() : sv_target
@@ -311,13 +311,13 @@ uint4 main() : sv_target
[test]
uniform 0 uint4 0 0xffffffff 0x00001db4 0xff900000
todo(sm<6 | msl & sm>=6) draw quad
todo(msl & sm>=6) draw quad
probe (0, 0) i32(-1, -1, 12, 22)
uniform 0 int4 -500 -400 -300 -7604
todo(sm<6 | msl & sm>=6) draw quad
todo(msl & sm>=6) draw quad
probe (0, 0) i32(8, 8, 8, 12)
[pixel shader todo]
[pixel shader]
uint4 main(float4 pos : sv_position) : sv_target
{
uint4x4 umat =
@@ -332,7 +332,7 @@ uint4 main(float4 pos : sv_position) : sv_target
}
[test]
todo(sm<6 | msl & sm>=6) draw quad
todo(msl & sm>=6) draw quad
probe(0, 0) u32(0, 1, 1, 2)
probe(1, 0) u32(2, 2, 2, 3)
probe(2, 0) u32(3, 3, 3, 3)