nmzik
7556a74f19
shader: implement s_bfe_i32
2026-08-18 03:53:42 +02:00
nmzik
b4809e7170
Fix SPIR-V float control contract (Preserve FP32 Inf and NaN)
2026-08-18 03:53:42 +02:00
nmzik
0df20eb300
fix opcode regression
2026-08-18 03:53:42 +02:00
nmzik
5bfdf4267e
Optimize decoder
2026-08-18 03:53:42 +02:00
nmzik
f453a752bb
shader: snapshot wide SMEM sources before writes
2026-08-18 03:53:42 +02:00
nmzik
28a913894d
graphics: implement RDNA2 64-bit first-set-bit
2026-08-18 03:53:42 +02:00
nmzik
13e87a8e58
graphics: implement RDNA2 alignbyte shader opcode
2026-08-18 03:53:42 +02:00
nmzik
9c316e6988
shader: implement RDNA2 v_cmp_gt_u64
2026-08-18 03:53:42 +02:00
nmzik
b42380ced6
shader_recompiler: add SSA
2026-08-18 03:53:41 +02:00
nmzik
4980efa9b7
refactor(subsystems&ime): RAII lifecycle
2026-08-11 16:12:38 +02:00
nmzik
21aa7b66ce
graphics: replace raw GPU enum values with typed formats
2026-08-11 16:12:38 +02:00
nmzik
11b95bed20
graphics: simplify render target format and color mapping resolution
2026-08-11 16:12:38 +02:00
nmzik
ac64d202af
shader: implement BUFFER_ATOMIC_FMAX
2026-08-05 02:59:28 +02:00
nmzik
df44ad3fac
shader: implement BUFFER_ATOMIC_FMIN, unhandled IR opcode now fails
2026-08-05 02:59:28 +02:00
nmzik
0a2f4814ac
refactor(shader): centralize opcode metadata and lookup paths
2026-08-05 02:59:28 +02:00
nmzik
9a3468e3a0
shader: implement V_MIN_U32
2026-08-05 02:59:28 +02:00
nmzik
73da43a7be
shader: implement V_CNDMASK_B32
2026-08-05 02:59:28 +02:00
nmzik
aa88d94755
shader: implement V_SUB_NC_U32
2026-08-05 02:59:27 +02:00
nmzik
51562cd8d2
tests: use valid image descriptors in shader CFG cases
2026-08-05 02:59:27 +02:00
nmzik
44d7f2a3e8
shader cfg: handle shared early exits
...
Duplicate small shared exit tails so each selection gets its own merge block. This keeps overlapping early-exit ladders on structured SPIR-V and adds a regression test.
2026-08-02 03:16:08 +02:00
nmzik
2dcb90066c
shader cfg: normalize loop structure
...
Give loops one header and one continue path before SPIR-V generation. This handles conditional headers and multiple latches without falling back to a dispatcher.
2026-08-02 03:15:26 +02:00
nmzik
51a33cc363
shader cfg: handle loop control branches
...
Keep simple break, continue, and repeat branches in structured control flow. Split conflicting merge blocks and add regression tests for nested loop exits.
2026-08-02 03:14:39 +02:00
nmzik
d8a4c83cc7
format src and tests with clang-format
2026-07-31 11:36:12 +02:00
nmzik
68be13345a
fix(shader): support multisampled depth image loads
2026-07-31 11:36:12 +02:00
nmzik
212282d693
fix(shader): preserve packed UINT16 MRT exports
2026-07-31 11:36:12 +02:00
3b75a5659a
shader: specialize cube image descriptors ( #134 )
...
* shader: specialize cube image descriptors
Track whether image descriptors refer to cube maps during resource specialization, and apply the coordinate offset conversion when sampling cube maps as 2D image arrays in SPIR-V emission.
* shader: fix cube array coordinate lowering
---------
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-07-31 03:59:10 +02:00
nmzik
a21d1aaa47
fix
2026-07-29 00:31:09 +02:00
nmzik
a6b61d7aa0
refactor(graphics): split renderer and recompiler into focused modules
2026-07-29 00:30:24 +02:00
nmzik
7351eae117
graphics: add 1D image descriptor support
2026-07-27 14:10:51 +02:00
nmzik
a20cf5d298
refactor renderer
2026-07-27 02:27:29 +02:00
nmzik
0a5f78c727
graphics: refactoring #2
2026-07-21 07:37:52 +02:00
nmzik
7905f2d12f
graphics: migrate Vulkan backend to Vulkan-Hpp
2026-07-18 12:33:21 +02:00
nmzik
da6cee924b
Revert "Implement vertex swizzle"
...
This reverts commit f4b52cea2b .
2026-07-18 06:21:00 +02:00
nmzik
f4b52cea2b
Implement vertex swizzle
2026-07-18 03:36:09 +02:00
nmzik
0abe03af94
Support reverse RGBA16F render targets
2026-07-17 12:54:28 +02:00
nmzik
147188b143
Initial commit
2026-07-16 10:21:41 +02:00