nmzik
54b937c85f
shader: support high products of 24-bit integers
2026-10-28 22:49:21 +01:00
nmzik
22610cb93e
shader: support unsigned 16-bit multiply-add
2026-10-28 22:41:29 +01:00
nmzik
0386f33bf3
shader: support four 16-bit integer ternary operations
2026-10-28 22:37:24 +01:00
nmzik
138d5b86c4
shader: support S_QUADMASK_B32
2026-10-28 22:31:16 +01:00
nmzik
41de2fd64e
shader: support five VOP3 float conversion forms
2026-10-28 22:19:02 +01:00
Chai T
a8e3c29b2e
shader: implement V_ASHRREV_I64 (VOP3 0x301)
2026-10-28 21:51:28 +01:00
Claxten
91a5ff6cb7
shader: decode s_dcache_inv as a no-op
2026-10-27 04:23:01 +01:00
Claxten
95a507a8ff
shader: support 64-bit buffer atomic minimum
2026-10-27 04:23:01 +01:00
nmzik and shadowbeat070
78adb9293d
shader: give A16 1D and late 3D gradients their own address VGPRs
...
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-10-27 04:23:01 +01:00
nmzik and shadowbeat070
04bfd9070c
shader: give an A16 bias its own address VGPR
...
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-10-27 04:23:01 +01:00
nmzik and shadowbeat070
ffa3992c1a
shader: decode every PS5 image_gather4 encoding
...
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-10-27 04:23:00 +01:00
MrFr3di
986721f5bc
shader: decode FLAT, GLOBAL and SCRATCH D16 high-half loads ( #1924 )
...
FLAT-family opcode 0x25 (FLAT/GLOBAL/SCRATCH_LOAD_SHORT_D16_HI) loads an
unsigned halfword into bits [31:16] of the destination and keeps bits [15:0].
Decode it beside the low-half variant and let it select the high half of the
existing partial destination write, so FLAT_LOAD needs no new path.
Ghost of Yotei CS 0x79b0066f0cd1f3cd stopped at
global_load_short_d16_hi v16, v18, s[0:1] offset:196 (0xdc9480c4 0x10000012).
2026-10-26 22:34:54 +01:00
nmzik and Senaxx
025d1f7edf
shader: decode the SHARED_LIMIT and PRIVATE_LIMIT inline constants
...
Co-authored-by: Senaxx <michelbeld@gmail.com >
2026-10-26 06:35:17 +01:00
nmzik and Senaxx
4ebae87a1b
shader: apply the LOD clamp of image_sample _cl variants
...
Co-authored-by: Senaxx <michelbeld@gmail.com >
2026-10-26 05:32:02 +01:00
nmzik
ecc30a1f2d
shader: decode S_FLBIT_I32 and S_FLBIT_I32_I64 with a 4-op signed leading-bit search
2026-10-23 19:48:53 +02:00
nmzik
c5016d9455
shader: support D16 XY and XYZ formatted buffer loads and stores
2026-10-22 05:26:54 +02:00
nmzik
753f285198
shader: generalize D16 buffer format component handling
2026-10-22 05:26:54 +02:00
Nawid3333 and nmzik
d7c1896647
shader: interpolate f16 parameter halves (V_INTERP_P1LL_F16, V_INTERP_P2_F16) ( #1792 )
...
shader: interpolate packed f16 attributes for v_interp_p1ll_f16 and v_interp_p2_f16
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-10-22 04:54:10 +02:00
nmzik
63ca9c0b80
shader: decode PS5 image_gather4_c_a and image_gather4_c_o_a
2026-10-20 15:21:19 +02:00
Mr. Big Britches
4a2961cdf9
shader: reflect tessellation strides across forward branches, DS write widths, and packed patch masks
2026-10-20 15:21:19 +02:00
nmzik
ab8566591f
shader: link multiple compute helpers without synthetic return loops
2026-10-19 02:34:25 +02:00
nmzik
22ef16a044
shader: implement PS5 vector data cache invalidation
2026-10-18 15:57:14 +02:00
e93b4b0378
shader: support returning 32-bit LDS compare-exchange (DS_CMPST_RTN_B32) ( #1578 )
...
* shader: support DS_CMPST_RTN_B32
Assassin's Creed Valhalla (PPSA01490, #281 ) stops on DS opcode 0x30 in a
compute shader. DS compares DATA and stores DATA2, the opposite of
BUFFER_ATOMIC_CMPSWAP, so the 32-bit atomic path swaps the two for this
opcode, as the 64-bit form does.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
* shader: reject unsupported GDS compare-store variant
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com >
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-10-17 04:37:16 +02:00
Çağatay Güçlü
02ead0e2e1
shader: 64-bit buffer atomic add (BUFFER_ATOMIC_ADD_X2)
2026-10-17 04:09:54 +02:00
nmzik and fxpw
dd429ef858
shader: decode high-half formatted buffer stores
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:00 +02:00
nmzik and fxpw
bc2664cefa
shader: decode comparison gathers with explicit LOD
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-15 22:28:00 +02:00
nmzik and fxpw
2f6ee0e91d
shader: support RDNA2 high-half short buffer stores
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-14 20:55:50 +02:00
nmzik and fxpw
4843d8d942
shader: support packed D16 XYZW formatted buffer stores
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-14 19:35:08 +02:00
nmzik and fxpw
e0586cc85a
shader: decode unsigned byte loads into preserved low halves
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-14 18:21:58 +02:00
nmzik
280b87adec
shader: allow reverse left shifts to use shared SDWA partial writes
2026-10-14 05:20:23 +02:00
nmzik and fxpw
8d18be71db
shader: decode upper-half byte stores through shared operand selection
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-14 04:20:02 +02:00
nmzik and fxpw
6abfe3bbe4
shader: share formatted loads and support packed D16 XYZW buffers
...
Co-authored-by: fxpw <fxpw@outlook.com >
2026-10-14 04:09:57 +02:00
nmzik
9e41d8320a
shader: support returning 64-bit LDS max and compare-exchange
2026-10-13 21:33:50 +00:00
nmzik
56738aa4e1
shader: sample packed normalized images with one bilinear gather
2026-10-13 21:27:07 +00:00
Mac
679be25c37
shader: recognize remaining disabled debug branches
2026-10-10 04:31:55 +02:00
fxpw
fa56c5eae9
shader: add scalar zero-bit count and search operations
2026-10-10 04:31:55 +02:00
foufouadi
3b9e176b70
shader: support VOP1/VOP2 DPP8 fetch-inactive
2026-10-10 04:31:55 +02:00
popcoder565 and Claude Opus 5.5
2f4d0f383e
shader: add SDWA support for V_MIN_I32 ( #1342 )
...
WWE 2K26 stops building a shader CFG with "unsupported family=VOP2
opcode=0x11 raw=[0x220404f9 0x00060605] reason=VOP2 SDWA modifier is not
supported for opcode".
V_MIN_I32 takes the same integer path as V_MAX_I32, so give it the same
full-destination SDWA profile. The test runs the game's encoding, which
takes the signed minimum with the zero-extended low byte of a register.
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 03:43:08 +02:00
TheCruZ
d247d3d60c
shader: complete signed 64-bit integer comparisons
2026-10-10 03:36:25 +02:00
nmzik and Hector Mödinger S.
59183dbfa8
shader: add missing F64 VOPC compares
...
Co-authored-by: Hector Mödinger S. <hectormodinger@gmail.com >
2026-10-09 21:01:51 +02:00
nmzik
3e9f88bf79
shader: isolate SWAPPC work from ordinary shader paths
2026-10-09 17:27:07 +02:00
nmzik
bb5edbd490
shader: expose graphics compute queue fields to GETREG
2026-10-09 15:06:39 +00:00
nmzik and Behzad
1818aae562
shader: link scalar leaf calls only for SWAPPC programs
...
Co-authored-by: Behzad <behzadkhan1736@gmail.com >
2026-10-09 15:06:39 +00:00
nmzik
a31e2cd361
shader: BUFFER_LOAD_SHORT_D16_HI
2026-10-09 12:57:04 +02:00
nmzik
1bd282ec0a
shader: BUFFER_LOAD_SHORT_D16
2026-10-09 12:57:04 +02:00
nmzik
1fc520cd62
shader: FLAT_STORE_DWORD
2026-10-09 12:57:04 +02:00
Mac
2f4b8a335d
shader: allow SDWA byte destinations for bitwise VOP2 ops
2026-10-08 22:12:05 +04:00
shadowbeat070
9f25e3c23e
shader: support partial SDWA multiply and byte-source moves
2026-10-08 01:10:49 +04:00
shadowbeat070
7881c69a54
shader: decode v_cmp_class_f16
2026-10-08 01:10:49 +04:00
shadowbeat070
9e666e4dd2
shader: support scalar byte sign extension
2026-10-08 01:10:49 +04:00