mesa/src/broadcom/vulkan
Iago Toral Quiroga 7e0616ecc5 v3dv: only flag 'shader writes point size' if the shader actually writes it
If the shader writes point size, then the compiler needs to ensure it
writes it in the appropriate vpm output slot and also clamp its value to
expected limits. This is why we have the per_vertex_point_size in the
shader key, so it doesn't really make sense to set this if the shader
doesn't write point size.

If the shader record flags that the shader writes point size then the
hardware will use the shader written value to override point size state
(set with the POINT_SIZE packet), so again, we really only want to set
this in the shader state record if the shader actually writes its value.

While we could also limit this to point primitives, since these are the
only primitives where point size has an effect, this is not really
required, and skipping this allows us to use the same shader with any
primitive type (otherwise we would have to compile 2 different shaders).

Finally, this change makes the vertex shader setup for point size match the
one we had been doing for geometry shaders, so it makes both stages behave
consistently regarding point size behavior.

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29413>
2024-05-28 05:31:13 +00:00
..
.dir-locals.el
.editorconfig
meson.build v3dv: fix CLE MMU errors avoiding using last bytes of CL BOs. 2024-05-22 18:44:14 +00:00
v3dv_android.c v3dv/android: Migrate ANB and AHB to use common helpers 2024-05-16 00:27:24 +00:00
v3dv_bo.c v3dv: store the offset of the BRANCH instruction in a CL 2024-04-03 12:57:56 +02:00
v3dv_bo.h v3dv: store the offset of the BRANCH instruction in a CL 2024-04-03 12:57:56 +02:00
v3dv_cl.h v3dv: fix CLE MMU errors avoiding using last bytes of CL BOs. 2024-05-22 18:44:14 +00:00
v3dv_cmd_buffer.c v3dv: SetRasterizerDiscardEnable is dynamic now 2024-05-08 11:18:28 +00:00
v3dv_debug.c v3dv/v3d: Fix copyright holder to Raspberry Pi Ltd 2022-02-18 11:50:07 +01:00
v3dv_debug.h v3dv/v3d: Fix copyright holder to Raspberry Pi Ltd 2022-02-18 11:50:07 +01:00
v3dv_descriptor_set.c vulkan,nir: Refactor ycbcr conversion state into a struct 2023-02-06 18:36:29 +00:00
v3dv_device.c v3dv: add debug option to disable custom pipeline caches for meta operations 2024-05-20 10:01:33 +02:00
v3dv_event.c nir: Drop "SSA" from NIR language 2023-08-12 16:44:41 -04:00
v3dv_formats.c broadcom: use common stype debug 2024-05-10 18:49:38 +00:00
v3dv_image.c v3dv/android: Migrate ANB and AHB to use common helpers 2024-05-16 00:27:24 +00:00
v3dv_limits.h v3d,v3dv: support up to 8 render targets in v7.1+ 2023-10-13 22:37:43 +00:00
v3dv_meta_clear.c v3dv/meta_clear: use v3dv_renderpass used as parameter 2024-05-20 10:01:33 +02:00
v3dv_meta_common.h v3dv/v3d: Fix copyright holder to Raspberry Pi Ltd 2022-02-18 11:50:07 +01:00
v3dv_meta_copy.c v3dv: add debug option to disable custom pipeline caches for meta operations 2024-05-20 10:01:33 +02:00
v3dv_pass.c v3dv: handle render pass continue flag with dynamic passes 2024-03-19 12:06:21 +00:00
v3dv_pipeline.c v3dv: only flag 'shader writes point size' if the shader actually writes it 2024-05-28 05:31:13 +00:00
v3dv_pipeline_cache.c treewide: Remove vulkan/runtime vulkan/util prefix in include path 2024-03-05 19:05:00 +00:00
v3dv_private.h v3dv: add debug option to disable custom pipeline caches for meta operations 2024-05-20 10:01:33 +02:00
v3dv_query.c v3dv: Use DRM_IOCTL_V3D_GET_COUNTER to get perfcnt information 2024-05-22 05:37:48 +00:00
v3dv_queue.c v3dv: fix job suspend with command buffer simultaneous use flag 2024-04-03 13:35:54 +02:00
v3dv_uniforms.c v3dv: port dynamic state tracking to use Mesa Vulkan 2024-04-26 12:34:44 +00:00
v3dv_wsi.c v3dv: disallow image stores on VK_KHR_DISPLAY surfaces 2023-12-13 06:17:15 +00:00
v3dvx_cl.c v3dv: V3D_CL_MAX_INSTR_SIZE bytes in last CL instruction not needed 2024-05-22 18:44:14 +00:00
v3dvx_cmd_buffer.c v3dv: support 2712D0 2024-05-15 13:57:10 +00:00
v3dvx_descriptor_set.c v3dv: add support for multi-planar formats, enable YCbCr 2023-01-16 14:10:21 +00:00
v3dvx_device.c treewide: Replace usage of macro DEBUG with MESA_DEBUG when possible 2024-03-22 18:22:34 +00:00
v3dvx_formats.c treewide: Remove vulkan/runtime vulkan/util prefix in include path 2024-03-05 19:05:00 +00:00
v3dvx_image.c v3dv: use new texture shader state rb_swap and reverse fields in v3d 7.x 2023-10-13 22:37:43 +00:00
v3dvx_meta_common.c v3d,v3dv: don't use max internal bpp for tile sizing in V3D 7.x 2023-10-13 22:37:43 +00:00
v3dvx_pipeline.c v3dv: only flag 'shader writes point size' if the shader actually writes it 2024-05-28 05:31:13 +00:00
v3dvx_private.h v3dv: Use DRM_IOCTL_V3D_GET_COUNTER to get perfcnt information 2024-05-22 05:37:48 +00:00
v3dvx_query.c v3dv: Use DRM_IOCTL_V3D_GET_COUNTER to get perfcnt information 2024-05-22 05:37:48 +00:00
v3dvx_queue.c v3d,v3dv: don't use max internal bpp for tile sizing in V3D 7.x 2023-10-13 22:37:43 +00:00