mesa/src
Chia-I Wu d3d34ad476 turnip: emit VPC_SO_DISABLE in xfb begin/end
SO was always enabled before this change.  That meant, after a call to
tu_CmdBindTransformFeedbackBuffersEXT to emit VPC_SO_BUFFER_SIZE, any
draw call (from the same render pass, in a different render pass, or in
a different cmdbuf) could potentially cause writes to the SO buffers
regardless of whether the draw is inside xfb begin/end or not.

I choose to emit VPC_SO_DISABLE instead of using stateobjs like
freedreno does only because it is simpler.  It is not clear to me which
is more efficient to HW.

This also fixes double SO writes for gmem rendering.  While
tu6_tile_render_begin was careful to disable SO for the draw pass,
tu6_emit_tile_select re-enabled it.

dEQP-VK.transform_feedback.* still passes.  It fixes
dEQP-GLES3.functional.transform_feedback.* on angle.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16502>
2022-05-16 20:46:59 +00:00
..
amd radv: Add macros for win32 that accessed 2022-05-16 18:57:06 +00:00
android_stub
asahi agx: Restore Valve copyright header 2022-05-10 01:36:18 +00:00
broadcom ci: uprev piglit 2022-05-10 2022-05-16 06:33:36 +00:00
compiler glsl: Delete lower_extracts code 2022-05-16 16:06:01 +00:00
drm-shim drm-shim: Cleanup on device file close 2022-05-02 19:50:33 +00:00
egl egl/kopper: Hook up eglSwapInterval 2022-05-04 15:06:51 +00:00
etnaviv etnaviv: fill all minor GPU features from the kernel 2022-04-27 09:10:27 +00:00
freedreno turnip: emit VPC_SO_DISABLE in xfb begin/end 2022-05-16 20:46:59 +00:00
gallium llvmpipe: Do not use _Atomic keyword that doesn't support by MSVC 2022-05-16 18:57:06 +00:00
gbm gallium: Learn about kopper 2022-04-07 00:17:40 +00:00
getopt
glx glx/kopper: Enable GLX_EXT_swap_control etc. 2022-05-04 15:06:51 +00:00
gtest
hgl
imagination pvr: Fix argument comments in render job submission. 2022-05-13 23:18:16 +00:00
imgui
intel anv: fix primitives generated queries values 2022-05-14 10:47:29 +00:00
loader
mapi mapi: added EXT_external_objects_win32 definitions 2022-05-15 19:56:49 +00:00
mesa glsl: Delete lower_extracts code 2022-05-16 16:06:01 +00:00
microsoft dzn: Fix dzn_cmd_buffer_collect_queries() 2022-05-16 07:46:57 +00:00
nouveau nouveau: disable fences when running under drm-shim. 2022-05-09 23:10:45 +00:00
panfrost glsl: enable the use of the nir based varying linker 2022-05-16 03:33:18 +00:00
tool pps: Open writable renderer node in DrmDevice::create 2022-05-11 15:41:28 +00:00
util util/queue: handle thread cration failure in util_queue_adjust_num_threads 2022-05-13 19:35:11 +00:00
virtio venus: extend buffer cache to cover layering usage 2022-05-07 05:26:44 +00:00
vulkan vulkan/wsi: unbreak win32-support 2022-05-16 18:57:06 +00:00
meson.build microsoft: Initial vulkan-on-12 driver 2022-03-25 16:21:45 +00:00