Mary Guillemard
131d2745c4
panvk/ci: Update Mali-G52 status with full VKCTS
...
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31340 >
2024-09-25 11:05:52 +00:00
Lionel Landwerlin
2193d87277
brw: remove EOT handling from sampler messages
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Suggested-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31307 >
2024-09-25 10:22:40 +00:00
Lionel Landwerlin
2ed4af057a
brw: fix mask componentation for 16-bit sampler returns
...
We can't use register counts since 16-bit sampler loads in SIMD8 will
only write back half a GRF.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Fixes: 0116430d39 ("intel/brw: Handle 16-bit sampler return payloads")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31307 >
2024-09-25 10:22:40 +00:00
Lionel Landwerlin
eeb5f6e8c8
brw: make sampler message emission more generic
...
We can generalize the simd8-16bits case by just rounding to a physical
register.
We also take the opportunity to limit the register allocation to a
single physical GRF for the residency data.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Fixes: 0116430d39 ("intel/brw: Handle 16-bit sampler return payloads")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31307 >
2024-09-25 10:22:40 +00:00
Timothy Arceri
f6e7520b13
glsl: remove now unused linker code
...
This has all be replaced by a nir based linker implementation.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
cbfc225e2b
glsl: switch to a full nir based linker
...
This commit does 3 things at once (3 squashed commits) as required
to make sure the commit doesn't break things.
1. convert to nir at compile time
2. enable full nir linking
3. switch standalone compiler to nir linker
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
5108a9a37d
glsl: set blake3 hash in standalone scaffolding
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
1c88ed6194
glsl: add lower_derivatives_without_layout() helper
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Georg Lehmann
ff4596ae61
spirv: explicitly lower derivatives to zero
...
To allow removal of the existing nir_builder lowering.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
721d23b8ff
glsl: add intrastage shader linking helpers for nir linker
...
Conversions of the existing glsl ir linking code to nir.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
fe9b93fc1c
nir: handle wildcard array deref
...
Here we add handling of wildcard array derefs when attempting to mark
an io as partially used rather than hitting an assert.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
6bb6b0e5ad
nir: add nir_intrinsic_deref_implicit_array_length intrinsic
...
This will be used to handle .length() calls on unsized arrays
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
083b4ffb78
glsl: add gl_nir_linker_size_arrays()
...
This will size implicitly size arrays during linking, replacing the glsl
ir version.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
a235da080e
glsl: add gl_nir_link_function_calls()
...
This will link functions combining multiple shaders from the same stage
into a single shader. Unlike alot of the glsl ir linker that has been
converted to NIR the logic here is completely different from the glsl ir
code that linked functions. The existing nir cloning code allows us to
implement this functionality in a much more eligant way than what glsl
ir was doing.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
60937b5286
nir: add implicit_conversion_prohibited field to nir_parameter
...
Will be used in link time validation in following patches.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
5645495156
nir: store variable mode in nir_parameter
...
This will be used by the nir glsl linker in following patches.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
89a2411c54
nir: serialize nir_parameter type
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
6ff3e87e5f
nir: add function in/outs to variable modes
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:44 +00:00
Timothy Arceri
f3da074dc3
glsl: move _mesa_glsl_can_implicitly_convert() to linker_util.cpp
...
Makes more sense here as its used by both the compiler and linker.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:43 +00:00
Timothy Arceri
1cb115abd2
nir: add nir_function_impl_clone_remap_globals()
...
This will be use by the glsl nir linker when we are combining
different shaders from the same shader stage that might have multiple
declarations of global variables across the different shaders.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:43 +00:00
Timothy Arceri
7a1061e0dd
nir: add max_ifc_array_access field to vars
...
This will be used in following patches by the nir based glsl
linker code.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:43 +00:00
Timothy Arceri
6219275ffe
util/hash_table: add _mesa_string_hash_table_create() helper
...
This adds a string version of the _mesa_pointer_hash_table_create()
helper allowing us to write tidy code.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:43 +00:00
Timothy Arceri
7c5b21c032
glsl: add support for converting global instructions to NIR
...
NIR doesn't really support global instructions such as global val
initilisation. So here we add functionality to glsl_to_nir() to
put these instructions into a temporary function that will be
later inlined into main.
We give the function a name starting with gl_mesa_tmp_ as functions
starting with gl_ are reserved and will not have any clashes with
user functions, we finish the name with the blake3 of the shader
source to avoid conflicts with multiple shaders attached to a single
stage.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:43 +00:00
Timothy Arceri
1fc9d5223e
glsl: make gl_nir_validate_intrastage_arrays() more flexible
...
This will allow us to use it before shaders from the same stage have
been linked and merged.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:43 +00:00
Timothy Arceri
ffbd763586
glsl: add gl_nir_validate_intrastage_interface_blocks()
...
This is a nir version of the existing glsl ir validation function.
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:43 +00:00
Timothy Arceri
90e76d34ff
mesa/glsl: add nir fields to the gl shader structs
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31137 >
2024-09-25 09:39:43 +00:00
Samuel Pitoiset
a9095f0dbf
radv: do not keep executable info when compiling shaders for ESO
...
This is completely useless and it's wasting memory.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31345 >
2024-09-25 08:33:31 +00:00
Samuel Pitoiset
f7482e85ba
radv: move updating compute scratch for RT when stack size is emitted
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31347 >
2024-09-25 07:56:58 +00:00
Samuel Pitoiset
ebe66dee08
radv: move emitting some RT user SGPRs when the RT pipeline is emitted
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31347 >
2024-09-25 07:56:58 +00:00
Mike Blumenkrantz
c4d6d9254a
vk/image: fix view creation for planar video aspects
...
drivers do implement this
cc: mesa-stable
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31318 >
2024-09-25 06:21:58 +00:00
Mike Blumenkrantz
e0efab520e
zink: add adl flake
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31277 >
2024-09-25 03:16:27 +00:00
Mike Blumenkrantz
427014e4e3
zink: add some other missing X format emulation variants
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31277 >
2024-09-25 03:16:27 +00:00
Mike Blumenkrantz
66e3df6a2a
zink: add X format variants for 30-bit formats
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31277 >
2024-09-25 03:16:27 +00:00
Mike Blumenkrantz
f96dc11e41
zink: fix zink_format_is_voidable_rgba_variant()
...
this should just match whatever X formats are emulated
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31277 >
2024-09-25 03:16:27 +00:00
Mike Blumenkrantz
42648508f7
zink: move x8 format function to zink_format.c
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31277 >
2024-09-25 03:16:26 +00:00
Mike Blumenkrantz
735e402ae4
zink: implement compression control
...
this just passes the info through to struct creation and returns
previously queried info
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31024 >
2024-09-25 02:30:40 +00:00
Mike Blumenkrantz
9696df4132
zink: store compression rate info for formats
...
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31024 >
2024-09-25 02:30:40 +00:00
Mike Blumenkrantz
33c1b940e0
zink: hook up compression control extensions
...
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31024 >
2024-09-25 02:30:40 +00:00
Mike Blumenkrantz
33335fdd89
egl/kopper: hook up EGL_EXT_surface_compression on wayland
...
the driver hook isn't supported yet, so this does nothing
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31024 >
2024-09-25 02:30:40 +00:00
Mike Blumenkrantz
f4aab9984b
gallium: delete pipe_screen::is_compression_modifier
...
this is unused
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31024 >
2024-09-25 02:30:40 +00:00
Mike Blumenkrantz
1cb1212823
trace: add get_device_reset_status
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31276 >
2024-09-25 01:08:21 +00:00
Timothy Arceri
c1b97415fa
ci: disable gimark trace
...
gimark requires a mesa environment variable to be set to work around
a shader bug, disable it for now.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31353 >
2024-09-25 09:25:52 +10:00
Valentine Burley
ec59d56c52
ci: Add a new build-only job without libdrm
...
Add a new build job for Turnip/kgsl, to have coverage for building without libdrm.
Signed-off-by: Valentine Burley <valentine.burley@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31182 >
2024-09-24 19:22:24 +00:00
Samuel Pitoiset
087ef34b9c
aco: fix descriptor leaking when printing assembly with CLRX
...
This can explode the maximum number of descriptors.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31344 >
2024-09-24 18:11:36 +00:00
Eric Engestrom
480793be98
ci/build: move debian-clang-release to priority build-for-tests stage
...
`shader-db` uses its output, and with its 8-10min runtime it can't be
ignored and should be counted with the other test jobs.
This makes the critical build jobs a bit slower but makes the overall
pipeline shorter when the test jobs respect the 15min deadline.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31327 >
2024-09-24 17:31:54 +00:00
Konstantin Seurer
25b09b9c5a
radv: Fix report_ray_intersection affecting terminated rays
...
Fixes dEQP-VK.ray_tracing_pipeline.amber.flags-accept-first.
cc: mesa-stable
Reviewed-by: Friedrich Vock <friedrich.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31186 >
2024-09-24 16:18:31 +00:00
Konstantin Seurer
466bbaf40f
lavapipe: Do not return in report_ray_intersection
...
report_ray_intersection should not terminate invocations.
Fixes: d99e95e ("lavapipe: Implement VK_KHR_ray_tracing_pipeline")
Reviewed-by: Friedrich Vock <friedrich.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31186 >
2024-09-24 16:18:31 +00:00
Konstantin Seurer
4824bcdd5d
lavapipe: Fix report_ray_intersection affecting terminated rays
...
Fixes dEQP-VK.ray_tracing_pipeline.amber.flags-accept-first.
Fixes: d99e95e ("lavapipe: Implement VK_KHR_ray_tracing_pipeline")
Reviewed-by: Friedrich Vock <friedrich.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31186 >
2024-09-24 16:18:31 +00:00
Rhys Perry
bf41cf2eef
radv/rt: don't split array/struct payload variables
...
If the shader has multiple payload variables, split passes might not
preserve the order and this can cause the offsets used for the stores to
not match the payload offsets for nir_intrinsic_trace_ray.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31204 >
2024-09-24 15:41:04 +00:00
Rhys Perry
204e446bcd
radv/rt: align constant data by 64 when inlining shaders
...
There's never any need for anything higher. If this were too high (such
as NIR_ALIGN_MUL_MAX), it would have caused issues.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31204 >
2024-09-24 15:41:04 +00:00