nmzik
346e9a3c69
shader: resolve getpc/add/addc long jumps through any scalar pair
2026-10-30 10:12:37 +01:00
nmzik
5eab0ec738
shader: add BVH8 intersections and instance transforms
2026-10-29 18:37:29 +01:00
nmzik
bfd4c34b88
shader: add BVH stack operations
2026-10-29 18:37:29 +01:00
Çağatay Güçlü
63207739bc
shader: initialize local vertex count from active lanes
2026-10-29 05:52:04 +01:00
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
nmzik
a833e1b735
graphics: fix vertex and instance IDs for unpatched indirect draws
2026-10-28 04:33:03 +01:00
nmzik
a5b3673a39
graphics: draw patched-offset indirect draws from GPU-read records
2026-10-27 10:13:15 +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
nmzik
2483573651
shader: mask V_MAD_U64_U32 carry-out bits of lanes outside EXEC
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
943bc19f46
shader: leave the start instance out of mesh and NGG instance ID VGPRs
...
Co-authored-by: Senaxx <michelbeld@gmail.com >
2026-10-26 07:43:11 +01:00
nmzik
5429888d4c
shader: keep pixel helper lanes out of the EXEC and VCC words
2026-10-26 07:43:11 +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
7524e8f79e
shader: count one SGPR for lane reads and wave32 lane masks in call targets
...
Co-authored-by: Ali Almohaya <AliAlmohaya@gmail.com >
Co-authored-by: Senaxx <michelbeld@gmail.com >
Co-authored-by: Mac <me@itsmemac.com >
2026-10-26 05:32:02 +01:00
nmzik
153dadd0b3
shader: emit 16-bit packs with a zero high lane as a mask
2026-10-26 05:32:02 +01:00
nmzik
67c89e0915
shader: keep the old V_PERMLANE16 destination for inactive sources without BOUND_CTRL
2026-10-25 02:20:44 +02:00
TheCruZ
e864cb20bd
shader: clamp V_FRACT_F16/F32/F64 results below one
2026-10-25 02:20:44 +02:00
TheCruZ
9210264d47
shader: saturate V_CVT_PK_U16_U32 and V_CVT_PK_I16_I32
2026-10-25 02:20:44 +02:00
Senaxx
77a8f30758
shader: read S_MEMREALTIME from the host device clock shifted to about 100 MHz
2026-10-23 19:48:53 +02: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
Felipe
9dcff95e80
shader: fix crash from packed ancillary used as DPP old operand ( #1769 )
...
shader: emit plain EXEC selects for DPP writes that reach every active lane (Street Fighter 6)
2026-10-23 09:51:32 +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
6ee2ef8715
shader: insert the V_CVT_PK_U8_F32 byte with one bit-field insert
2026-10-22 00:31:52 +02:00
nmzik
9e4234cdbe
shader: extract the V_CVT_F32_UBYTE source byte with one bit-field extract
2026-10-22 00:30:39 +02:00
nmzik
2d00e13bf3
shader: rely on the saturating float-to-int conversion instead of re-saturating in the translator
2026-10-22 00:26:40 +02:00
nmzik
9c39062d3e
shader: double the cube major axis once after selecting the face
2026-10-21 23:56:13 +02:00
nmzik
da19501889
shader: translate zero-kind branches as the negated nonzero vote
2026-10-21 23:33:30 +02:00
nmzik
ae47ac26e7
shader: compute scalar signed-overflow SCC with compares instead of XOR masks
2026-10-21 23:27:04 +02:00
nmzik
7c40dbc36c
shader: build the S_BFE_U64 mask from clamped halves and remove RightMask64
2026-10-21 23:16:17 +02:00
nmzik
0cdc5c1224
shader: build the V_MBCNT lanes-below mask with the shared right-mask helper
2026-10-21 23:11:26 +02:00
nmzik
fa32940d14
shader: drop BFM mask bits shifted past bit 31 instead of an out-of-range bit-field insert
2026-10-21 22:59:56 +02:00
nmzik
2862ad5b25
shader: compute scalar signed-overflow and shift-add carry SCC with fewer ops
2026-10-21 22:56:21 +02:00
nmzik
aacf15fd0b
shader: write preserved SDWA fields with one bit-field insert and drop duplicate 16-bit masks
2026-10-21 22:52:14 +02:00
nmzik
10a852c2ac
shader: pack 16-bit lane pairs with one bit-field insert
2026-10-21 22:46:04 +02:00
nmzik
4a1440197f
shader: share one find-first-bit lowering for S_FF0/FF1/FLBIT_I32_B64 and remove FindUMsb64
2026-10-21 22:39:34 +02:00
nmzik
6e5167598e
shader: compute add-with-carry with compares and remove IAddCarry32
2026-10-21 22:28:11 +02:00
nmzik
c571d8ed5a
shader: remove IR opcodes and IREmitter helpers that nothing produces
2026-10-21 22:19:26 +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