mesa/src
Christian Gmeiner 68fb3a601c
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
etnaviv: isa: Add assembler support for infinity and NaN immediates
Implement parsing and encoding of special floating-point values for
both 20-bit (f20) and 16-bit (f16) immediate formats:

  inf:f20   - Positive infinity (imm_val=0x7f800, imm_type=0)
  -inf:f20  - Negative infinity (imm_val=0xff800, imm_type=0)
  nan:f20   - Quiet NaN         (imm_val=0x7fc00, imm_type=0)
  -nan:f20  - Negative NaN      (imm_val=0xffc00, imm_type=0)

  inf:f16   - Positive infinity (imm_val=0x7c00, imm_type=3)
  -inf:f16  - Negative infinity (imm_val=0xfc00, imm_type=3)
  nan:f16   - Quiet NaN         (imm_val=0x7fff, imm_type=3)
  -nan:f16  - Negative NaN      (imm_val=0xffff, imm_type=3)

The f20 format stores the upper 20 bits of an IEEE 754 single-precision
float. The f16 format stores the 16-bit half-float value directly.

This enables round-trip assembly of shaders containing these special
values, which can appear in GPU command streams captured from the
proprietary driver.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: @LingMan
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39016>
2025-12-25 22:57:48 +00:00
..
amd amd,radv,radeonsi: add a new function to update windowed perf counters 2025-12-24 07:20:01 +00:00
android_stub android_stub: fix missing prototypes issues 2025-12-02 20:03:02 +00:00
asahi nir: Drop the mode argument of nir_lower_vars_to_scratch(). 2025-12-17 19:50:28 +00:00
broadcom v3dv/ci: skip tests causing GPU issues 2025-12-23 18:26:08 +00:00
c11 c11/threads: fix build on c23 2025-11-10 07:01:50 +10:00
compiler compiler/rust: drop "borrow of a value the compiler would automatically borrow" 2025-12-20 00:13:19 +01:00
drm-shim drm-shim: handle DRM_CAP_ADDFB2_MODIFIERS 2025-11-24 12:34:08 +00:00
egl egl/x11: Fix memory leak when querying translated coord. 2025-12-11 14:58:59 +00:00
etnaviv etnaviv: isa: Add assembler support for infinity and NaN immediates 2025-12-25 22:57:48 +00:00
freedreno tu: Drop FD_NO_DEPRECATED_PACK 2025-12-20 00:23:13 +00:00
gallium amd,radv,radeonsi: add a new function to update windowed perf counters 2025-12-24 07:20:01 +00:00
gbm mesa: replace most occurrences of getenv() with os_get_option() 2025-11-06 04:36:13 +00:00
getopt build: pass licensing information in SPDX form 2024-06-29 12:42:49 -07:00
gfxstream gfxstream: don't dump genvk.py args to generated files 2025-12-18 18:52:19 +00:00
glx driconf: add a way to override GLX_CONTEXT_RESET_ISOLATION_BIT_ARB 2025-12-17 23:35:24 +00:00
gtest build: pass licensing information in SPDX form 2024-06-29 12:42:49 -07:00
imagination pvr: limit hw-defs to rogue 2025-12-19 10:35:05 +01:00
imgui imgui: Silence build warnings for imgui 2025-09-16 06:16:19 +00:00
intel anv, hasvk: Fix reported CPU page size 2025-12-23 13:22:41 +00:00
kosmickrisp nir: Drop the mode argument of nir_lower_vars_to_scratch(). 2025-12-17 19:50:28 +00:00
loader loader: Wrap nouveau_zink_predicate with HAVE_LIBDRM 2025-11-20 18:39:19 +00:00
mesa mesa: consider Attrib.MinLayer in do_blit_framebuffer 2025-12-18 10:45:49 +00:00
microsoft treewide: use BITSET_*_COUNT 2025-12-16 17:42:10 +00:00
nouveau nak/sm120: Fix panic for CS2R during prepass 2025-12-23 18:50:30 +00:00
panfrost pan: move pan_shader_update_info call for bifrost 2025-12-22 13:40:05 +00:00
poly nir: remove nir_io_add_const_offset_to_base 2025-11-29 00:16:38 +00:00
tool pps/meson: minor refactor for pps_deps 2025-11-08 18:39:00 -08:00
util pan: add actual register usage to the shaderdb stats 2025-12-22 13:40:03 +00:00
virtio venus: adopt vk_common_GetCalibratedTimestampsKHR 2025-12-21 16:47:30 +00:00
vulkan wsi/display: Set atomic client cap in Acquire{Drm,Xlib}DisplayEXT as well. 2025-12-23 00:47:26 +00:00
x11 treewide: strip unneeded inc_gallium inc_gallium_aux 2025-11-13 22:01:43 +00:00
.clang-format util: Add sparse bitset data structure 2025-11-06 21:34:33 +00:00
meson.build kk: Add KosmicKrisp 2025-10-20 17:46:38 +00:00