summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* mesa/main: Exit early when trying to create an unsupported context APIHEADmainJordan Justen2023-05-181-0/+18
| | | | | | | | Fixes: adbe8b6c17a ("mesa: optimize out _mesa_is_desktop_gl*() and _mesa_is_gles*() calls when not built") Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9038 Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Eric Engestrom <eric@engestrom.ch> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23068>
* vtn: add more info to bitcast bit size error messageMike Blumenkrantz2023-05-181-2/+2
| | | | | Reviewed-by: Caio Oliveira <caio.oliveira@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22932>
* vtn: print spirv ids for type mismatch in bcselMike Blumenkrantz2023-05-181-1/+1
| | | | | Reviewed-by: Caio Oliveira <caio.oliveira@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22932>
* vtn: print spirv id for type mismatch errorMike Blumenkrantz2023-05-181-1/+1
| | | | | Reviewed-by: Caio Oliveira <caio.oliveira@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22932>
* vtn: add spirv index to type mismatch error for debuggingMike Blumenkrantz2023-05-181-3/+3
| | | | | Reviewed-by: Caio Oliveira <caio.oliveira@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22932>
* nir: Drop unused argument from nir_ssa_dest_init_for_typeAlyssa Rosenzweig2023-05-176-16/+10
| | | | | | | | | | | | | | | | | | Similar to nir_ssa_dest_init, but with fewer call sites to churn through. This was done with the help of Coccinelle: @@ expression A, B, C, D; @@ -nir_ssa_dest_init_for_type(A, B, C, D); +nir_ssa_dest_init_for_type(A, B, C); Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Reviewed-by: Timur Kristóf <timur.kristof@gmail.com> Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23078>
* nir: Drop unused name from nir_ssa_dest_initAlyssa Rosenzweig2023-05-17118-323/+283
| | | | | | | | | | | | | | | | | | | Since 624e799cc34 ("nir: Drop nir_ssa_def::name and nir_register::name"), SSA defs don't have names, making the name argument unused. Drop it from the signature and fix the call sites. This was done with the help of the following Coccinelle semantic patch: @@ expression A, B, C, D, E; @@ -nir_ssa_dest_init(A, B, C, D, E); +nir_ssa_dest_init(A, B, C, D); Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Reviewed-by: Timur Kristóf <timur.kristof@gmail.com> Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23078>
* spirv: Improve the 'ID is the wrong kind of value' error messagesCaio Oliveira2023-05-172-5/+63
| | | | | | | | | | | | | Include the expected and actual values in the errors -- since very frequently we care about them to diagnose issues. Since these helpers are meant to be inlined, also pull the failure code out of the way into a separate function (not meant to be inlined). This way, extra calls to to_string will not harm the existing client code size. Verified this with GCC release build. Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22977>
* anv: mark images compressed for untracked layout/accessLionel Landwerlin2023-05-173-0/+68
| | | | | | | | | | | | | | | | | | | Most of the compressed writes are tracked by the driver, for instances : - blorp writes - render target writes But we don't have any tracking for storage images (which have gained compression support on DG2+). So inspect the layout transition and when we see a layout/access that can do writes outside of our driver tracking, update the image state tracking. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: mesa-stable Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8946 Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Nanley Chery <nanley.g.chery@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22988>
* ci/v3d: add flaking opengl ↵David Heidelberg2023-05-171-0/+1
| | | | | | | 1.1@depthstencil-default_fb-drawpixels-float-and-ushort Signed-off-by: David Heidelberg <david.heidelberg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23086>
* vulkan/pipeline_cache: don't log warnings for client-invisible cachesDaniel Schürmann2023-05-177-29/+9
| | | | | Fixes: d3f06cf5ce0764b37a03a0f2bfbb109a4d75884d ('vulkan/pipeline_cache: don't log warnings for internal caches') Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22986>
* docs/rusticl: add Contributing sectionnorablackcat2023-05-172-3/+19
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23051>
* spirv: Fix gl_spirv_validation when OpLine with strings is presentCaio Oliveira2023-05-171-1/+9
| | | | | | | | | | | | | | | | Fix issue by handling the OpString instructions when walking through the preamble for validation. The gl_spirv_validation() creates a vtn_builder() and walks the instructions looking for a subset of the information. However our current way to walk the instructions will also perform tracking of OpLine/OpNoLine, that may make references to OpString instructions that were being previously ignored by gl_spirv_validation(). This would cause the parsing to fail. Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9004 Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22973>
* spirv: Extract vtn_handle_debug_text() helperCaio Oliveira2023-05-172-31/+53
| | | | | | | This will be later used by gl_spirv handling. Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22973>
* docs/venus: update vtest instructionsYiwei Zhang2023-05-171-1/+3
| | | | | | | | | This is to reflect the latest steps after an issue with render server in vtest has been fixed: https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/1115 Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23083>
* iris: Set CS stall bit during HIZ_CCS_WT surface fast clearSagar Ghuge2023-05-171-0/+4
| | | | | | | | | It make sense to enable CS stall so that it guarantees that the fast clear will start after tile cache flush has completed. Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com> Reviewed-by: Nanley Chery <nanley.g.chery@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23063>
* anv: Set CS stall bit during HIZ_CCS_WT surface fast clearSagar Ghuge2023-05-171-0/+4
| | | | | | | | | | | | | It make sense to enable CS stall so that it guarantees that the fast clear will start after tile cache flush has completed. cc: mesa-stable closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9030 Fixes: e488773b ("anv: Fast clear depth/stencil surface in vkCmdClearAttachments" Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com> Reviewed-by: Nanley Chery <nanley.g.chery@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23063>
* Uprev Piglit to d8c08d123fadb986e9a8a7887b922ff63fcff52eCollabora's Gfx CI Team2023-05-174-4/+6
| | | | | | https://gitlab.freedesktop.org/mesa/piglit/-/compare/536975d94a40cf76a69fcfa786c2513eccd0c989...d8c08d123fadb986e9a8a7887b922ff63fcff52e Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23017>
* Add checks for NULL dxil_validatorLuca Bacci2023-05-173-5/+12
| | | | | | Fixes https://gitlab.freedesktop.org/mesa/mesa/-/issues/8718 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22141>
* anv: put private binding BOs into execlistsLionel Landwerlin2023-05-174-4/+34
| | | | | | | | | Not doing so all the reads/writes go to the scratch page on i915. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: f9fa09ec92 ("anv/image: Add ANV_IMAGE_MEMORY_BINDING_PRIVATE") Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22957>
* intel/dev: remove dg2 0x5698 pci idJonathan Gray2023-05-171-1/+0
| | | | | | | | | | | | 0x5698 is now reserved for future use From Matt Roper in linux 3a38be31ec82 ("drm/i915/dg2: Drop one PCI ID") Fixes: 65c9a810eed ("intel/pci_ids: Add dg2 0x5698 pci-id") Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: José Roberto de Souza <jose.souza@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22985>
* anv: drop duplicated nir_opt_dce passesRohan Garg2023-05-171-3/+0
| | | | | | Signed-off-by: Rohan Garg <rohan.garg@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23075>
* anv: use the common vulkan runtime to do the heavy liftingRohan Garg2023-05-171-15/+5
| | | | | | Signed-off-by: Rohan Garg <rohan.garg@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23075>
* zink: add feedback loop usage for swapchainsMike Blumenkrantz2023-05-171-0/+2
| | | | | | | | | | affects: GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_linear_filter_color_blit cc: mesa-stable Reviewed-by: Joshua Ashton <joshua@froggi.es> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22959>
* vulkan/wsi: add feedback loop usage to swapchain caps if supportedMike Blumenkrantz2023-05-175-0/+21
| | | | | | | | | this is needed by some apps cc: mesa-stable Reviewed-by: Joshua Ashton <joshua@froggi.es> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22959>
* pvr: Fix deferred_control_stream_flagsJames Glanville2023-05-171-1/+1
| | | | | | Signed-off-by: James Glanville <james.glanville@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: Fix seg fault on unused ds attachmentJames Glanville2023-05-171-3/+4
| | | | | | | | | | Fixes: dEQP-VK.renderpass.suballocation.formats.r16g16_sint.input .dont_care.dont_care.self_dep_clear Signed-off-by: James Glanville <james.glanville@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: Transfer image to buffer dest rectOskar Rundgren2023-05-171-0/+9
| | | | | | | | | | | | In copy to buffer region, set dest rect to region size. The rectangle must be block size adjusted in case of block compressed format. Fix test: dEQP-VK.api.copy_and_blit.core.image_to_buffer.regions Signed-off-by: Oskar Rundgren <oskar.rundgren@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: Transfer optimisation remove unused features from APIOskar Rundgren2023-05-178-132/+11
| | | | | | | | | | | | | | | The transfer command "struct pvr_transfer_cmd" has support for features not used by Vulkan: colour key, pattern, rop blit and alpha blending The whole "struct pvr_transfer_blit" can be removed. Also all code related to transfer alpha blending can be removed. This is an optimisation and doesn't fix any dEQP tests. Signed-off-by: Oskar Rundgren <oskar.rundgren@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: Transfer check valid source address maskOskar Rundgren2023-05-171-1/+1
| | | | | | | | | | The mask should be inverted. Fixes tests in dEQP-VK.api.copy_and_blit.* using the texel unwind workaround. Signed-off-by: Oskar Rundgren <oskar.rundgren@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: fix texel unwind workaround mappingsOskar Rundgren2023-05-171-4/+7
| | | | | | | | Fix the rectangle mappings used with texel unwind workaround (unaligned address). Signed-off-by: Oskar Rundgren <oskar.rundgren@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: Transfer remove byte unwind workaroundOskar Rundgren2023-05-171-69/+1
| | | | | | | | | | | | | | | | | The byte unwind workaround can be used when source texture virtual address doesn't meet HW requirements (is unaligned) and the pixel format can't be changed i.e. destination is compressed. If destination texture is not compressed the simpler texel extend workaround can be used. Currently byte unwind workaround has bugs so removing the workaround fixes tests in dEQP-VK.api.copy_and_blit.core.blit_image.simple_tests.* when they instead use texel extend workaround. Signed-off-by: Oskar Rundgren <oskar.rundgren@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: Transfer support flipped rectangle mappingOskar Rundgren2023-05-173-10/+45
| | | | | | | | | | | | | | | | | | | | | | The rectangles in "struct pvr_rect_mapping" are unsigned so a flipped rectangle mapping isn't possible. Add new struct members flip_x and flip_y to specify flipped mapping. Add support for flipped rectangles in transfer copy blit path. Support for flipped rectangles in the clip blit path is not done in this change. The new booleans are false by default because transfer command "struct pvr_transfer_cmd" is zeroed on allocation in pvr_transfer_cmd_alloc (pvr_blit.c). Fixes: dEQP test case: dEQP-VK.api.copy_and_blit.core.blit_image.simple_tests .mirror_xy.nearest Signed-off-by: Oskar Rundgren <oskar.rundgren@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: Transfer block compressed with 3d twiddled layoutOskar Rundgren2023-05-171-0/+6
| | | | | | | | Block compressed formats with 3d twiddled memory layout not supported. Signed-off-by: Oskar Rundgren <oskar.rundgren@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: Transfer ignore non zero stride for twiddled surfaceOskar Rundgren2023-05-171-3/+1
| | | | | | | | | Twiddled surfaces don't use stride but printing info about ignored stride is not useful on debug driver. Signed-off-by: Oskar Rundgren <oskar.rundgren@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* pvr: PBE fix mesa pipe swizzle conversionOskar Rundgren2023-05-171-36/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | The swizzle of pipe formats is described in "struct util_format_description". The struct has array "unsigned char swizzle[4];". The index of the array is the colour channel (in the order R, G, B and A). The value is what position the colour channel is sourced from. In PBE register settings (REG_SWIZ_CHAN[0-3]) the register index is output channel position (and not colour). The colours are in the PBE source channels - SWIZ_SOURCE_CHAN0 typically red. The function pvr_get_pbe_hw_swizzle doesn't translate the swizzle correctly. Remove function and replace with switch for each colour. This could be done in a for loop, but there is just as much code in the loop, it involves pointers and it's less readable for humans. That's why I opted for this implementation. Fixed test: dEQP-VK.api.copy_and_blit.core.image_to_image .all_formats.color.2d.r4g4b4a4_unorm_pack16.b4g4r4a4_unorm_pack16 and other with this pixel format. Signed-off-by: Oskar Rundgren <oskar.rundgren@imgtec.com> Reviewed-by: Frank Binns <frank.binns@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22958>
* radv: fix resetting VRS if the graphics pipeline doesn't enable itSamuel Pitoiset2023-05-171-7/+9
| | | | | | | | | | | Otherwise the VRS state isn't reset and the graphics pipeline might still use the previous VRS state. The VRS state will only be re-emitted if it's different when the pipeline is bound. Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9005 Cc: mesa-stable Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23052>
* llvmpipe: only include old Transform includes when neededPierre-Eric Pelloux-Prayer2023-05-171-4/+4
| | | | | | | | | This fixes building with recent LLVM where these 2 .h files were removed. Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8671 Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22980>
* radv: fix emitting VRS state with a null fragment shaderSamuel Pitoiset2023-05-171-1/+1
| | | | | | | | Found this while debugging a VRS issue with Valhalla. Fixes: 87245c6e8e6 ("radv: handle NULL fragment shaders when recording cmdbuf") Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23050>
* llvmpipe/cs: refactor cs generator args to use an enumDave Airlie2023-05-171-80/+104
| | | | | | | | This was horror I should have cleaned up before, clean it up before mesh shaders make it worse. Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22788>
* draw: move to use common sampler/image binding codeDave Airlie2023-05-174-335/+64
| | | | | Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22788>
* llvmpipe: move to common sampler/image binding codeDave Airlie2023-05-175-245/+14
| | | | | | | | This leaves the cache stuff in place, but we should consider trying to consolidate that. Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22788>
* gallivm: add common code for sample/image tracking.Dave Airlie2023-05-173-0/+297
| | | | | | | | Now that the other code is consoldiated it makes sense to just consolidate this binding code between the drivers and core Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22788>
* gallivm/draw/llvmpipe: consolidate the sampler/image dynamic state fnsDave Airlie2023-05-174-602/+331
| | | | | | | | These can all be the same now. Reviewed-by: Roland Scheidegger <sroland@vmware.com> Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22788>
* gallivm: refactor common resources out of contextsDave Airlie2023-05-1735-1007/+721
| | | | | | Reviewed-by: Roland Scheidegger <sroland@vmware.com> Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22788>
* llvmpipe: refactor fs/cs jit structure members.Dave Airlie2023-05-172-50/+41
| | | | | | | | This lines them up just like the draw ones. Reviewed-by: Roland Scheidegger <sroland@vmware.com> Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22788>
* draw: align common members in jit context structs.Dave Airlie2023-05-172-114/+124
| | | | | | | | | this makes all the structs have the same baseline members for resources and aniso_filter_table. Reviewed-by: Roland Scheidegger <sroland@vmware.com> Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22788>
* freedreno: implement GL_ARB_indirect_parametersAmber2023-05-175-3/+45
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21593>
* ir3, freedreno: implement GL_ARB_shader_draw_parametersAmber2023-05-1713-22/+84
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21593>
* nir: Remove legacy atomicsAlyssa Rosenzweig2023-05-161-60/+17
| | | | | | | | | The intrinsics are now totally dead and can be removed. Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Reviewed-by: Emma Anholt <emma@anholt.net> Reviewed-by: Jesse Natalie <jenatali@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23036>