Adrià
c20184aba7
Merge pull request #2162 from CouchRiv/fix-shader-fma-mix-f16-fused
...
fix(shader): round v_fma_mixlo_f16 and v_fma_mixhi_f16 once to f16
2026-10-10 08:46:56 +02:00
Adrià
092e133efe
Merge pull request #2313 from JulioCacko/contrib/shader-preparation-capture
...
fix(diagnostics): capture failed shader preparation requests
2026-10-10 08:39:37 +02:00
Adrià
b58b1ccff4
Merge pull request #2421 from Pouare514/fix/direct-memory-release-validation
...
fix(libkernel): reject malformed ranges in sceKernelReleaseDirectMemory
2026-10-10 08:37:29 +02:00
Adrià
d43d50beb1
Merge pull request #2322 from jweidenh/codex/last-provoking-vertex
...
feat(agc): support last provoking vertex for native primitives
2026-10-10 08:36:55 +02:00
Adrià
d7f24e7652
Merge pull request #2294 from Vabian124/cursor/fix-relinker-reject-non-regular-input-9077
...
fix(relinker): reject non-regular input files
2026-10-10 08:35:29 +02:00
Alex
3a9da568fe
fix(shader): round v_fma_mixlo_f16 and v_fma_mixhi_f16 once to f16
...
The f16 forms of v_fma_mix computed an f32 FMA and converted it to f16,
so a result that lands on an f16 tie after the f32 rounding was rounded
twice. RDNA2 rounds the exact product-sum once. They now use the exact
f64 path of v_interp_p2_f16 and flush f32 sources like v_fma_mix_f32.
They follow the f16 round and denormal fields on hardware, so another
f16 mode throws, as packed f16 does.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 08:33:43 +02:00
Adrià
8f693fc82c
Merge pull request #2274 from jweidenh/codex/fix-linux-program-header-count
...
fix(relinker): count all synthetic Linux program headers
2026-10-10 08:32:53 +02:00
Adrià
9db3480a65
Merge pull request #2330 from simonbbby/fix/relinker-init-array-roots
...
fix(relinker): collect init and fini array roots through the containing load segment
2026-10-10 08:31:38 +02:00
Julio Cacko
097aaa698b
fix(diagnostics): capture failed shader preparation requests
2026-10-10 08:31:22 +02:00
Adrià
55a631bb4a
Merge pull request #1281 from SirDarky/fix/shader-mad-legacy-rounded-product
...
fix(shader): round the v_mad_legacy_f32 product before the add
2026-10-10 08:31:19 +02:00
Dean
2e197741c8
Merge pull request #2208 from AchrafReyani/feat/libc-inet-ntoa
...
feat(libc): implement __inet_ntoa
2026-10-10 19:28:39 +13:00
Adrià
0aaadd6457
Merge pull request #1599 from andrey231/fix/storage-keep-baseline
...
fix(agc): store GPU results over CPU-stamped bytes the CPU left unchanged
2026-10-10 08:28:10 +02:00
Adrià
7d94990371
Merge pull request #2300 from AchrafReyani/fix/libkernel-stat-trailing-slash
...
fix(libkernel): report ENOTDIR from stat for a file with a trailing slash
2026-10-10 08:27:27 +02:00
Cursor Agent
eba1dec764
fix(relinker): reject non-regular input files
...
A directory opens and tellg reports an enormous size, so the relinker
tried to allocate it and failed with std::bad_alloc. Require a regular
file and a non-negative size before allocating the input buffer.
2026-10-10 08:26:32 +02:00
Adrià
23ed501f4a
Merge pull request #1511 from cubersu/fix/libc-swprintf-wcsrtombs-utf16
...
fix(libc): format guest wide strings in swprintf as 16-bit units
2026-10-10 08:26:15 +02:00
jweidenh
03cb114779
test(agc): render recompiled guest flat inputs in both vertex modes
2026-10-10 08:26:14 +02:00
jweidenh
3671668472
test(agc): supply pixel registers for provoking vertex precheck
2026-10-10 08:26:14 +02:00
jweidenh
3a8cf3a38b
feat(agc): support last provoking vertex for native primitives
2026-10-10 08:26:14 +02:00
Adrià
b5315f046d
Merge pull request #2381 from SleglJan/docs/shader-scalar-measurements
...
docs(shader): record the measured s_call_b64 and null s_swappc_b64 behaviour
2026-10-10 08:25:58 +02:00
simonbbby
fcb0b962a7
fix(relinker): collect init and fini array roots through the containing load segment
...
The unused-filter=1 entry point collector translated DT_INIT_ARRAY and
DT_FINI_ARRAY through PT_DYNAMIC and skipped arrays placed before it, which is
the usual linker layout, so constructors and destructors were not roots and
imports used only by them were dropped. Arrays are now translated through the
PT_LOAD that holds them, slot targets come from RELATIVE relocations when
present, and DT_PREINIT_ARRAY is collected as in the strict filter.
2026-10-10 08:25:50 +02:00
Adrià
1a668689d6
Merge pull request #2133 from queeeef/fix/agc-3d-access-on-2d-texture
...
fix(shader): bind 2D textures to 3D sample and load accesses as measured
2026-10-10 08:25:22 +02:00
Pouare514
03d975af3c
fix(libkernel): reject malformed ranges in sceKernelReleaseDirectMemory
...
A zero, unaligned, overflowing or out-of-range length reached the physical pool, where a sub-page length silently freed a whole page and fragmented the block map, and an out-of-range length walked the page table past the backing store. Validate alignment and bounds up front and return EINVAL instead.
2026-10-10 08:22:59 +02:00
Adrià
03bf8ff335
Merge pull request #2526 from Celegans12/perf/agc-registration-frontend-pair
...
perf(agc): reuse frontend within shader registration pairs
2026-10-10 08:20:52 +02:00
Adrià
530b6a4270
Merge pull request #2226 from EdouardSence/fix/agc-conservative-uncertainty-disabled
...
fix(agc): accept disabled conservative rasterization with uncertainty-region bits
2026-10-10 08:20:08 +02:00
Adrià
394b6d049c
Merge pull request #2253 from Raghav314/perf/agc-draw-inputs-in-place
...
perf(agc): read draw vertex and index buffers in place from host imports
2026-10-10 08:19:00 +02:00
Marcus
5377db48fd
fix(shader): round the v_mad_legacy_f32 product before the add
...
VOP3 0x140 is v_mad_legacy_f32 on gfx10.1. Measured on gfx1010 (RX 5700
XT) in wave32 and wave64, IEEE 0 and 1 and f32 denormal modes 0 to 3, it
rounds the product before the add, flushes f32 denormal sources, product
and result in every mode, and gives a +0 product for a zero factor.
The translation multiplies, applies the zero rule and flushTinyProduct,
adds, and keeps the nanResultF32 wrapper. f32DenormalFlushFor returns 3
for the instruction before reading FLOAT_MODE. A sum of two zeros takes
its sign on the bits, as lavapipe returned -0 for +0 + -0. The execution
test pins the measured results and compares NaN bits exactly. RDNA2
(gfx1031), where the encoding is v_fma_legacy_f32 and fused, is noted in
TechnicalDebt.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 08:18:55 +02:00
Adrià
4a01974b09
Merge pull request #1781 from babyhuey/feat/libc-rune-locale
...
feat(libc): export the C rune locale
2026-10-10 08:18:42 +02:00
Adrià
accf6bffc5
Merge pull request #2477 from itsbo5/feat/libScePad-bias-correction
...
feat(libScePad): implement scePadSetAngularVelocityBiasCorrectionState
2026-10-10 08:18:16 +02:00
Adrià
94ebb80c34
Merge pull request #2458 from gjonn/fix/recompiler-invariant-position
...
fix(shader): mark the vertex position output invariant
2026-10-10 08:17:50 +02:00
Adrià
ecd3dbadb3
Merge pull request #2376 from krishnaraya4/fix/rdna-drop-gcn-vop2-opcodes
...
fix(shader): stop decoding gfx6/7-only VOP2 opcodes on RDNA
2026-10-10 08:17:22 +02:00
Adrià
e53e26a209
Merge pull request #2378 from krishnaraya4/fix/agc-vertex-10-10-10-2-int-class
...
fix(shader): give 10_10_10_2 integer vertex inputs an integer type
2026-10-10 08:16:57 +02:00
Adrià
5bcbbeb449
Merge pull request #2371 from fisherjoey/fix/scanner-s-bfe-u32
...
fix(recompiler): apply the S_BFE_U32 width when the vertex fetch scanner folds constants
2026-10-10 08:16:16 +02:00
Adrià
189990dd1f
Merge pull request #2285 from Celegans12/fix/fetch-offset-double-add
...
fix(shader): count folded draw offsets once in the vertex and instance indices
2026-10-10 08:15:46 +02:00
Adrià
e0a311f8e5
Merge pull request #2315 from karanvora2599/perf/shader-min-max-native
...
perf(shader): pick f32 min, max and med3 results with fewer selects
2026-10-10 08:15:40 +02:00
Adrià
dac3aa547f
Merge pull request #2247 from mugurc/macos-nid
...
feat(nid): patch NIDs in Mach-O libraries
2026-10-10 08:15:03 +02:00
Adrià
3064754c6a
Merge pull request #1547 from russhil/feat/shader-barycentric-emulation
...
feat(shader): emulate fragment barycentrics with a generated geometry stage
2026-10-10 08:15:00 +02:00
Adrià
c94cbb7a58
Merge pull request #2279 from karanvora2599/perf/shader-nan-result-guard
...
perf(shader): choose the fma NaN result only when the result is NaN
2026-10-10 08:14:57 +02:00
Adrià
40aeb97d57
Merge pull request #1152 from alfalfa-star/perf/linux-direct-memory-import-chunks
...
perf(agc): share one dma-buf import per 64 MiB of Linux direct memory
2026-10-10 08:14:40 +02:00
Adrià
feea78cdd2
Merge pull request #2198 from XairRrR/fix/rect-list-fault-binding
...
fix(recompiler): bind the rect-list fault buffer in the tessellation control group
2026-10-10 08:14:27 +02:00
Adrià
21b7876487
Merge pull request #2200 from XairRrR/fix/recompiler-sdwa-v-not-b32
...
fix(recompiler): accept SDWA destination selects on v_not_b32
2026-10-10 08:14:14 +02:00
Adrià
831e071786
Merge pull request #2199 from XairRrR/fix/recompiler-r8-snorm
...
feat(agc-driver): sample 8_SNORM images
2026-10-10 08:14:05 +02:00
Adrià
87be948954
Merge pull request #2191 from tezzgod74/fix/spirv-1.3-no-mesh-targets
...
fix(shader): keep vector selects valid on SPIR-V 1.3 targets
2026-10-10 08:13:36 +02:00
Adrià
4088f7f9a7
Merge pull request #2103 from karanvora2599/perf/shader-redundant-denormal-flush
...
perf(shader): drop denormal flushes of values that can't be denormal
2026-10-10 08:13:14 +02:00
Adrià
dacb0cdd28
Merge pull request #2137 from Sanjaysrinivas/feat/mesh-wave32
...
fix(shader): support wave32 mesh programs
2026-10-10 08:13:11 +02:00
Adrià
9614e0a602
Merge pull request #2141 from authurtabo-byte/fix/shader-sixteen-sampler-pairs
...
fix(shader): reserve heap space for sixteen sampler pairs
2026-10-10 08:13:09 +02:00
Adrià
63cd22f395
Merge pull request #2105 from Raghav314/perf/recompiler-post-dominators-postorder
...
perf(recompiler): compute post-dominators visiting successors first
2026-10-10 08:13:07 +02:00
Adrià
9bb5619c83
Merge pull request #2045 from CouchRiv/fix-shader-div-fixup-flush
...
fix(shader): flush v_div_fixup_f32 src1 and src2 denormals
2026-10-10 08:12:41 +02:00
Adrià
ccedc3a891
Merge pull request #1947 from oguzhanozfe/fix/audio-propagation-singular-path
...
fix(audio): recognize individual propagation path import
2026-10-10 08:12:21 +02:00
Adrià
692c397a6c
Merge pull request #1854 from Sanjaysrinivas/fix/shader-mode-registers
...
fix(shader): guard runtime MODE changes
2026-10-10 08:12:00 +02:00
Adrià
dbe8961752
Merge pull request #1963 from Deftera186/fix/shader-div-fmas-zero-overflow
...
fix(shader): return +0 when v_div_fmas_f32 cancels with |src2| >= 2^64
2026-10-10 08:11:36 +02:00