mesa/src/broadcom/vulkan
Iago Toral Quiroga 940725a7d9 broadcom/compiler: implement gl_PrimitiveID in FS without a GS
OpenGL ES 3.1 specifies that a geometry shader can write to gl_PrimitiveID,
which can then be read by a fragment shader.

OpenGL ES 3.2 additionally adds the capacity for the fragment shader
to read gl_PrimitiveID even if there is no geometry shader. This
commit adds support for this feature, which is also implicitly
expected by the geometry shader feature in Vulkan 1.0.

Fixes:
dEQP-VK.pipeline.framebuffer_attachment.no_attachments
dEQP-VK.pipeline.framebuffer_attachment.no_attachments_ms

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11874>
2021-07-14 12:05:56 +00:00
..
.dir-locals.el v3dv: add v3d vulkan driver skeleton 2020-10-13 21:21:24 +00:00
.editorconfig v3dv: add v3d vulkan driver skeleton 2020-10-13 21:21:24 +00:00
meson.build v3dv/build: meson infrastructure for multi-hw-version support 2021-06-22 11:34:06 +02:00
v3dv_bo.c v3dv: use a bitfield to implement a quick check for job BO tracking 2021-04-15 06:09:34 +00:00
v3dv_bo.h v3dv: use a bitfield to implement a quick check for job BO tracking 2021-04-15 06:09:34 +00:00
v3dv_cl.c v3dv/build: meson infrastructure for multi-hw-version support 2021-06-22 11:34:06 +02:00
v3dv_cl.h v3dv: remove gen-dependant includes from v3dv_private 2021-06-22 11:34:06 +02:00
v3dv_cmd_buffer.c v3dv: remove deferred vkCmdClearAtachments path 2021-07-12 09:25:28 +02:00
v3dv_debug.c v3dv/debug: add v3dv_debug 2020-10-13 21:21:25 +00:00
v3dv_debug.h v3dv/debug: add v3dv_print_v3d_key 2020-10-13 21:21:33 +00:00
v3dv_descriptor_set.c v3dv: don't use cl_packet_length for prepacked data 2021-06-22 11:34:06 +02:00
v3dv_device.c v3dv: expose geometry shaders 2021-07-12 09:25:28 +02:00
v3dv_formats.c v3dv: split v3dv_format hw version dependant code to a new source file 2021-06-22 11:34:06 +02:00
v3dv_image.c v3dv: move several hw version dependant code to their own (v3dvx) source file 2021-06-22 11:34:06 +02:00
v3dv_limits.h v3dv: don't use cl_packet_length for prepacked data 2021-06-22 11:34:06 +02:00
v3dv_meta_clear.c v3dv: remove deferred vkCmdClearAtachments path 2021-07-12 09:25:28 +02:00
v3dv_meta_copy.c v3dv: use defines for push constant offsets used by texel buffer copy shaders 2021-07-13 10:20:39 +00:00
v3dv_meta_copy.h v3dv: move several hw version dependant code to their own (v3dvx) source file 2021-06-22 11:34:06 +02:00
v3dv_pass.c v3dv: split v3dv_format hw version dependant code to a new source file 2021-06-22 11:34:06 +02:00
v3dv_pipeline.c broadcom/compiler: implement gl_PrimitiveID in FS without a GS 2021-07-14 12:05:56 +00:00
v3dv_pipeline_cache.c v3dv: add support for geometry shaders to pipelines 2021-07-12 08:35:55 +02:00
v3dv_private.h v3dv: implement layered texel buffer copies using a geometry shader 2021-07-13 10:20:39 +00:00
v3dv_query.c v3dv: use VKAPI_ATTR and VKAPI_CALL. 2021-05-31 17:08:27 +00:00
v3dv_queue.c v3dv: account for dst offset of copy query results operations 2021-07-07 10:41:06 +00:00
v3dv_uniforms.c v3dv: expose geometry shaders 2021-07-12 09:25:28 +02:00
v3dv_util.c v3dv: move error string definition to debug path 2020-12-01 12:10:11 +00:00
v3dv_wsi.c v3dv: use VKAPI_ATTR and VKAPI_CALL. 2021-05-31 17:08:27 +00:00
v3dv_wsi_display.c v3dv: implement VK_KHR_get_display_properties2 2021-06-10 11:01:28 +00:00
v3dv_wsi_wayland.c v3dv: use VKAPI_ATTR and VKAPI_CALL. 2021-05-31 17:08:27 +00:00
v3dv_wsi_x11.c v3dv: use VKAPI_ATTR and VKAPI_CALL. 2021-05-31 17:08:27 +00:00
v3dvx_cmd_buffer.c broadcom/compiler: implement gl_PrimitiveID in FS without a GS 2021-07-14 12:05:56 +00:00
v3dvx_descriptor_set.c v3dv: split v3dv_descriptor hw version dependant to a new source file. 2021-06-22 11:34:06 +02:00
v3dvx_device.c v3dv: don't use cl_packet_length for prepacked data 2021-06-22 11:34:06 +02:00
v3dvx_formats.c v3dv/format: expose properly that some formats are not filterable 2021-07-09 11:37:01 +00:00
v3dvx_image.c v3dv: split v3dv_image hw version dependant code to a new source file 2021-06-22 11:34:06 +02:00
v3dvx_meta_clear.c v3dv: move several hw version dependant code to their own (v3dvx) source file 2021-06-22 11:34:06 +02:00
v3dvx_meta_copy.c v3dv: move several hw version dependant code to their own (v3dvx) source file 2021-06-22 11:34:06 +02:00
v3dvx_pipeline.c v3dv: add support for geometry shaders to pipelines 2021-07-12 08:35:55 +02:00
v3dvx_private.h v3dv: don't use cl_packet_length for prepacked data 2021-06-22 11:34:06 +02:00
v3dvx_queue.c v3dv: move several hw version dependant code to their own (v3dvx) source file 2021-06-22 11:34:06 +02:00
vk_format_info.h anv: Move vk_format helpers to common code 2021-03-10 18:17:31 +00:00