Timur Kristóf
411c081e97
drirc: Apply radv_invariant_geom workaround to World War Z games.
...
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5433
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13312 >
2021-10-13 08:55:33 +00:00
Timur Kristóf
bbce747a0d
drirc: Apply radv_invariant_geom workaround to Resident Evil Village.
...
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5071
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13312 >
2021-10-13 08:55:33 +00:00
Timur Kristóf
574c6612ae
drirc: Fix indentation.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13312 >
2021-10-13 08:55:33 +00:00
Marek Olšák
84d0f54e75
ac/surface: enable better display DCC for chips newer than Yellow Carp
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13214 >
2021-10-13 06:20:13 +00:00
Marek Olšák
a18a7626a2
ac/surface: disallow display DCC for big resolutions
...
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13214 >
2021-10-13 06:20:13 +00:00
Marek Olšák
1a8df6f1be
ac/surface: always use suboptimal display DCC with DRM <= 3.43.0
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13214 >
2021-10-13 06:20:13 +00:00
Tapani Pälli
840c79fc9b
anv/android: fix parameters given for vk_common_QueueSubmit
...
Common queue submit expects pWaitDstStageMask to be set per each
semaphore (as per Vulkan spec) and crashes if these are not given
properly.
This fixes crashes seen when running vulkan apps on Android.
v2: change the VkPipelineStageFlags given (Lionel)
Fixes: b996fa8efa ("anv: implement VK_KHR_synchronization2")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13305 >
2021-10-13 06:00:56 +00:00
Kyle Brenneman
e28ce12afa
Remove the shebang from eglFunctionList.py.
...
eglFunctionList.py isn't executed directly, so it doesn't need a shebang
line.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13130 >
2021-10-13 05:34:27 +00:00
Kyle Brenneman
06309e0f26
Add copyright comments to the GLVND-related files.
...
A few of the GLVND-related files were missing a copyright comment at the
top. Copy the same MIT license text from gen_egl_dispatch.py et. al.
https://gitlab.freedesktop.org/mesa/mesa/-/issues/5267
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13130 >
2021-10-13 05:34:27 +00:00
Rhys Perry
d9c7a17542
radv: enable VK_EXT_vertex_input_dynamic_state
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Tested-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4768
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
d3c0cbbc84
radv: implement VK_EXT_vertex_input_dynamic_state
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
d45958f82e
aco: implement VS input loads with prologs
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
f4ea2d7887
aco: implement aco_compile_vs_prolog
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
f6f6f18e55
radv: add pre-compiled vertex shader prologs for common states
...
This lets us pre-compile a prolog and avoid a hash table lookup during
command buffer recording, most of the time.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
80841196b2
radv: implement dynamic vertex input state using vertex shader prologs
...
This doesn't actually use the functionality or implement prolog
compilation yet.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
2b8d88ed91
radv: move VS specific input SGPRs first
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
a1069b8bd4
radv: add segregated fit shader memory allocator
...
Way faster than the previous one, especially with a large number of
shaders.
This doesn't have much of an effect right now, but the previous allocator
was expensive compared to the cost of compiling vertex shader prologs.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
404752bfb2
radv: add radv_shader_variant_get_va and radv_find_shader_variant helpers
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
d1f09419b4
radv: add radv_translate_vertex_format()
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
6bfacb60ee
radv: add and use radv_vs_input_alpha_adjust
...
Unlike ac_fetch_format, this enum can be packed into two bits.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Rhys Perry
1988a78430
aco: fix vadd32() when b is neither a constant nor temporary
...
This will be useful for compiling vertex shader prologs, where we
basically use ACO as an assembler.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11717 >
2021-10-13 05:13:10 +00:00
Qiang Yu
50c0451424
nir/linker: rename replace_constant_input to replace_varying_input_by_constant_load
...
To align with replace_varying_input_by_uniform_load and better
describe what it does.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12613 >
2021-10-13 04:45:15 +00:00
Qiang Yu
2604625043
nir/linker: support uniform when optimizing varying
...
Varying assigned from uniform won't change after interpolation,
so move uniform load to fragment shader to eliminate the varying.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12613 >
2021-10-13 04:45:15 +00:00
Qiang Yu
3127282944
mesa/st: delay nir spirv link
...
Following commit for st_nir_link_shaders->nir_link_opt_varyings
may copy uniform variable from one shader to another, so delay
the nir_spirv link which contains mesa uniform information
update (gl_nir_link_uniforms) after it and align with glsl link.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12613 >
2021-10-13 04:45:15 +00:00
Felix DeGrood
5bf6987873
anv: dirty only state impacted by blorp_exec
...
Instead of dirtying all state after blorp operations,
avoid dirtying state that blorp never touches.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5077
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12567 >
2021-10-13 04:31:34 +00:00
Filip Gawin
fab1ad1a11
r300: fixes for UB caused by left shifts
...
r300_vs.c:252:37: runtime error: left shift of negative value -1
r300_state.c:1824:66: runtime error: left shift of 63112 by 16 places
cannot be represented in type 'int'
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13308 >
2021-10-13 04:17:33 +00:00
Marek Olšák
b378d6c5db
radeonsi: fix an out-of-bounds access in si_create_vertex_state
...
Fixes: fb8f532ea1 - radeonsi: implement draw_vertex_state for lower display list overhead
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5484
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13309 >
2021-10-13 03:57:30 +00:00
Marek Olšák
c85ce2531e
radeonsi: align pipe_resource & sampler_view allocations to a cache line
...
It eliminates "False Sharing" for atomic operations. (see wikipedia)
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11618 >
2021-10-13 03:26:20 +00:00
Marek Olšák
8c6e18bc51
util,gallium: put count in pipe_resource & sampler_view on its own cache line
...
This adds 60 bytes to both structures. It eliminates "False Sharing"
for atomic operations (see wikipedia).
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11618 >
2021-10-13 03:26:20 +00:00
Daniel Schürmann
b34a3459f8
driconf: set vk_x11_strict_image_count for Wolfenstein: Youngblood
...
Otherwise, the game refuses to start on xwayland.
Cc: mesa-stable
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13289 >
2021-10-13 02:44:48 +00:00
Filip Gawin
28a6e45a0f
nir: avoiding reading unitialized memory when using nir_dest_copy
...
Deeper in chain of calls, function "src_has_indirect" is used (which
reads "is_ssa" and "reg.indirect").
Fixes: d1eae6f36b ("nir: Properly clean up nir_src/dest indirects")
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13317 >
2021-10-13 02:21:20 +00:00
Danylo Piliaiev
9539315f97
turnip: fix streamout buffer offset calculations
...
Fixes vkd3d test "test_vbv_stride_edge_cases"
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13315 >
2021-10-13 01:46:03 +00:00
Emma Anholt
62949e7519
ci: Update piglit to 7d7dd2688c214e1b3c00f37226500cbec4a58efb.
...
This brings in a bunch of i915g spurious fail fixes, fixes for !12613 , and
new tests.
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13253 >
2021-10-13 00:37:59 +00:00
Emma Anholt
613b9c8c47
ci: Update deqp to vulkan-cts-1.2.7.1.
...
Brings in some VK fixes for tilers.
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13253 >
2021-10-13 00:37:59 +00:00
Jason Ekstrand
a00f4c6f7d
vulkan/wsi/display: Delete the wrapper entrypoints
...
Acked-by: Chia-I Wu <olvaffe@gmail.com >
Acked-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
8abeecf505
vulkan/wsi/wayland: Delete the wrapper entrypoints
...
Acked-by: Chia-I Wu <olvaffe@gmail.com >
Acked-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
8ade418144
vulkan/wsi/x11: Delete the wrapper entrypoints
...
Acked-by: Chia-I Wu <olvaffe@gmail.com >
Acked-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
1680cd907d
vulkan/wsi/common: Delete the wrapper entrypoints
...
Acked-by: Chia-I Wu <olvaffe@gmail.com >
Acked-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
1f2ef68bab
venus: Use the common WSI wrappers
...
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
8c4d78c764
lavapipe: Use the common WSI wrappers
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
1f06554df7
panvk: Use the common WSI wrappers
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
dfed852ddf
v3dv: Use the common WSI wrappers
...
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
531437d7f6
turnip: Use the common WSI wrappers
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
fbfd761461
radv: Use the common WSI wrappers
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
a64d90026b
anv: Use the common WSI wrappers
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
75955c6685
vulkan/wsi: Add common wrappers for most entrypoints
...
For a long time, our Vulkan WSI code has acted as something of a layer.
The WSI code calls into various Vulkan entrypoints inside the driver to
create images, allocate memory, etc. It then implements the API-facing
interface almost entirely. The only thing the driver has to provide is
little wrappers that wrap around the WSI calls to expose them through
the API.
However, now that we have a common dispatch framework, we can implement
entrypoints directly in the WSI code. As long as the driver uses
vk_instance, vk_physical_device, and vk_device, we can provide common
wrappers for the vast majority of entrypoints. The only exceptions are
vkAcquireNextImage, vkQueuePresent, vkRegisterDeviceEventEXT, and
vkRegisterDisplayEventEXT because those may have to manually poke at
synchronization primitives. We provide wrappers for vkAcquireNextImage
and vkQueuePresent because some drivers can use the default versions.
For now, we're intentionally avoiding any link-time dependencies between
WSI and the common code. We only use VK_FROM_HANDLE and associated
inline helpers and vk_physical_device has a pointer to a wsi_device.
Eventually, we may tie the two together closer, but this lets us get 95%
of the way there without reworking the universe.
Acked-by: Chia-I Wu <olvaffe@gmail.com >
Acked-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
020fbb9ea1
vulkan/wsi: Add a dispatch table for WSI entrypoints
...
Acked-by: Chia-I Wu <olvaffe@gmail.com >
Acked-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Jason Ekstrand
916c9335b4
meson: Add and use an idep for Vulkan WSI
...
Acked-by: Chia-I Wu <olvaffe@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13234 >
2021-10-13 00:06:15 +00:00
Ella-0
17dcdb000a
v3dv: enable VK_KHR_surface_protected_capabilities
...
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13298 >
2021-10-12 22:12:46 +00:00
Eric Engestrom
9aee7855d2
egl: implement EGL_EXT_present_opaque on wayland
...
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: James Jones <jajones@nvidia.com >
Reviewed-by: Simon Ser <contact@emersion.fr >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12373 >
2021-10-12 21:40:54 +00:00