Claxten
0a72641678
shader: evaluate saturating float-to-signed conversions in runtime descriptor values
2026-10-27 04:23:01 +01:00
Claxten
99f4eba223
shader: read bit-scan records only at ranks their mask buffer words set
2026-10-27 04:23:01 +01:00
Claxten
1b70938052
agc: emit async memory semaphores and execute them in the CP
2026-10-27 04:23:00 +01:00
Claxten
914a3bb4b8
shader: enumerate set ranks of eight-word light bitmaps
2026-10-27 04:23:00 +01:00
Claxten
ffb6ad6cab
shader: bound selected-lane record indices by guarded shared append lists
2026-10-27 04:23:00 +01:00
Claxten
ff5d16eefc
tests: expect an inclusive child limit to bound one more record
2026-10-27 04:23:00 +01:00
Claxten
d118afbeae
tests: expect scalar selector records past the V# to read zero
2026-10-27 04:23:00 +01:00
Claxten
a3ac6d0d32
shader: bound table keys by an inclusive guard with a constant limit
2026-10-27 04:23:00 +01:00
Claxten
f297c0bfe1
shader: bound bit-scan record keys and drop the key a guard rules out
2026-10-27 04:23:00 +01:00
Claxten
20bb268a48
shader: bound raw image table keys by a signed clamp on the key or a sibling read
2026-10-27 04:23:00 +01:00
Claxten
d3768c00e9
shader: accept indirect image rows whose type reads the leading sample coordinates
2026-10-27 04:23:00 +01:00
Claxten
dfcf1c0b03
shader: bound waterfall image table keys converted from clamped float arithmetic
2026-10-27 04:23:00 +01:00
Claxten
de3ed905c8
shader: track image table keys divided from a runtime base plus the workgroup ID
2026-10-27 04:23:00 +01:00
Claxten
0a140911ad
kernel: default flexible memory to 448 MiB and charge loaded modules' segments to it
2026-10-27 04:23:00 +01:00
Claxten
dd754065d8
graphics: preserve full tiled array backing in image-to-buffer copies
2026-10-07 21:17:35 +04:00
Claxten
743fdc6990
graphics: synchronize raw storage reads with GPU image aliases
2026-10-07 21:17:35 +04:00
Claxten
9f83fd5f0c
graphics: apply indirect draw offsets to guest user SGPRs
2026-10-07 21:17:35 +04:00
Claxten
5297abb7ac
shader: run non-amplifying NGG programs in mesh workgroups
2026-10-07 21:17:35 +04:00
Claxten
a8beac190f
shader: evaluate scalar branch decisions across the complete guest wave
2026-10-07 21:17:35 +04:00
Claxten
b96871e2bf
shader: unpack compressed SNORM16 color exports as normalized signed values
2026-10-07 21:17:35 +04:00
Claxten
21a1346e27
graphics: route compact color exports through CB_SHADER_MASK
2026-10-07 21:17:35 +04:00
Claxten
3ba6ebae81
shader: initialize perspective sample barycentrics at SampleId
2026-10-07 20:44:46 +04:00
Claxten
afbb322b32
kernel: deliver persistent user events once per wait
2026-10-06 14:53:17 +04:00
Claxten
5601861d67
shader: implement RDNA2 scalar 16-bit sign extension
2026-10-06 14:53:17 +04:00
Claxten
cd06601022
shader: replace CPU selector chains with direct image-table lookup
2026-10-06 14:53:17 +04:00
Claxten
9caec9f2c8
shader: preserve RDNA2 DLC coherence for flat address loads
2026-10-06 14:53:17 +04:00
Claxten
43f30d3ab2
graphics: shader: ignore unused sampler border state
...
* Sampler dword 3 only matters when a clamp mode uses border color
(values >= 4). When no border mode is active, dword 3 is unused
but can still vary across loop iterations due to wave-lane spills.
This makes resource tracking think the descriptor is dynamic and
fail with "unsupported GPU selection".
* Fix by zeroing dword 3 when all clamp modes are non-border.
Signed-off-by: Claxten <claxten10@gmail.com >
2026-08-02 02:42:15 +02:00
Claxten
c1a5927036
graphics: pm4: accept trailing PM4 type-2 packets
...
* A one-dword type-2 NOP is a valid packet tail. Parse it normally instead of aborting command-buffer dumps.
Signed-off-by: Claxten <claxten10@gmail.com >
2026-08-02 02:07:37 +02:00
Claxten
bc436548a9
graphics: support packed 10-10-10-2 uint buffers
...
Signed-off-by: Claxten <claxten10@gmail.com >
2026-08-02 01:44:21 +02:00
Claxten
e91dd39cb0
Drop redundant PROT_NONE tracking in reserve paths for Linux ( #122 )
...
src: platform: Linux: Drop redundant PROT_NONE tracking in reserve paths
* Some UE4 games, such as The Pathless, reserve a 512 GiB virtual address range during libc startup.
Tracking every 4 KiB page causes a long delay and is unnecessary since the range is already PROT_NONE,
and untracked pages are treated as NoAccess.
Signed-off-by: Claxten <claxten10@gmail.com >
2026-07-30 00:00:21 +02:00