aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* freedreno/a6xx: Set src and dst rects outside blit loopKristian H. Kristensen2020-07-141-12/+12
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Don't set unknown bit when tiling differsKristian H. Kristensen2020-07-141-7/+0
| | | | | | | | There is a bit here that's sometimes set, but it's generally not related to whether tiling differs between src and dst. Let's stop setting it until we know more. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Split out src and dst setup helpers for blitKristian H. Kristensen2020-07-141-86/+92
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Move fd6_ifmt into fd6_blitter.cKristian H. Kristensen2020-07-142-68/+68
| | | | | | It's only used in this file. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Don't blit with R2D_RAWKristian H. Kristensen2020-07-144-31/+9
| | | | | | | | | | | Map all formats to a valid ifmt. FMT6_10_10_10_2_UNORM_DEST still doesn't work on the blitter so keep that one on the u_blitter path. Fixes dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.* with FD_MESA_DEBUG=nogmem. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* turnip: drop GS clear pathJonathan Marek2020-07-143-98/+14
| | | | | | | | | | | We didn't know how to write layer id without GS, since that's the only way to do it through VK/GL, and the blob didn't implement this clear case (and failed cases where it was absolutely necessary). However now we know how to set it after some educated guesses and looking at tess/geom traces, so the GS path can be dropped. Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5790>
* turnip: clean up primitive output stateJonathan Marek2020-07-143-94/+85
| | | | | | | | | We only need to emit one set of primitive output registers. This may differ from the blob, because it seems to try to allow using the same pipeline with tess/geom enabled/disabled. Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5790>
* freedreno/regs: update primitive output related registersJonathan Marek2020-07-147-189/+144
| | | | | Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5790>
* freedreno/ir3: Fix uninit var warning.Eric Anholt2020-07-141-1/+1
| | | | | | | It's a decent bit of analysis to see that the initialization will always happen, and my compiler isn't doing so in at least one configuration. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5834>
* freedreno/ir3_cmdline: Fix an uninit var warning.Eric Anholt2020-07-141-8/+6
| | | | | | | You could only access entry through the initialized path, but we can clean up the compiler warning by not keeping the other var. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5834>
* turnip: implement VK_EXT_private_dataHyunjun Ko2020-07-142-0/+60
| | | | | | | Which is using base class's implementation. Signed-off-by: Hyunjun Ko <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5539>
* turnip: Use the common base object type and struct.Hyunjun Ko2020-07-1413-128/+175
| | | | | | | | | v2. Define new helper function to avoid duplicated a pair of function calls. v3. Move new helper functions to vk_object.h and call them. v4. Merge 2 commits to use commomn base object type and struct into one. Signed-off-by: Hyunjun Ko <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5539>
* tu: Fix wrong copies of sampler descriptor.Hyunjun Ko2020-07-141-2/+2
| | | | | | | | | | Found this with the following patch but it exists since adding ycbcr sampler to the struct. Fixes: d070a7ba0cfb11f1e01774b9dd3775ab7cd0c4ea Signed-off-by: Hyunjun Ko <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5539>
* vulkan: Adds helpers for vk_object (de)alloation and (de)initialization.Hyunjun Ko2020-07-142-0/+59
| | | | | Signed-off-by: Hyunjun Ko <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5539>
* gitlab-ci: reduce a630 runner loadRob Clark2020-07-131-7/+11
| | | | | | | | | They seem to be sometimes taking a while to boot, which is triggering CI timeouts. (Possibly tftp server in bad shape?) Cut out non-essential a630 CI jobs, and reduce the gles3/gles31 jobs to compensate. Signed-off-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5893>
* meson/intel: add missing dep on git_sha1.hEric Engestrom2020-07-131-1/+1
| | | | | | | | Fixes: 805b32cab90547a576af ("intel: add identifier for debug purposes") Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Acked-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5882>
* zink: use type of src[0] for ntv store and load opsMike Blumenkrantz2020-07-131-4/+2
| | | | | | | | | | | in some cases (e.g., gl_ClipDistance) the nir_variable type doesn't match the needed destination type, so we can simplify this code to just use the destination type fixes [email protected]@execution@interpolation@interpolation-none-gl_backcolor-smooth-vertex Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5852>
* zink: add lengthy comment and remove assert from discard_if ntv passMike Blumenkrantz2020-07-131-2/+43
| | | | | | | | | | | | as in the comment, while we may want to try verifying that discard will be the last instruction in a block, it's a bit problematic given that other nir passes we're doing may insert instructions after a discard as part of e.g., nir_opt_dead_cf in the process of removing another block fixes shaders@glsl-fs-discard-04 Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5852>
* zink: handle ntv case of nested loop instructions more permissivelyMike Blumenkrantz2020-07-131-1/+3
| | | | | | | | | | | | if the last instruction in a loop's body terminates a block, e.g., from a nested loop with a jump as its final instruction, then no block will have been started when returning to the original loop, and there's no need to emit a branch fixes shaders@glsl-vs-continue-in-switch-in-do-while Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5852>
* zink: use right vulkan type for GL_PRIMITIVES_GENERATED queriesMike Blumenkrantz2020-07-131-1/+1
| | | | | | | | | | | VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT includes primitives which won't get drawn due to e.g., not enough vertices emitted by geometry shader fixes [email protected]@gs-emits-too-few-verts Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5533>
* zink: only reset query pool on query end if current batch isn't in renderpassMike Blumenkrantz2020-07-131-44/+65
| | | | | | | | | reset can't be performed during a renderpass, so we need to defer that until a time when we're definitely not in a renderpass, such as when we're starting a new query or resuming a query Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5533>
* zink: properly handle query pool overflowsMike Blumenkrantz2020-07-131-3/+12
| | | | | | | | | | | | | | | inline a query result value to each query object so we can stash the partial result just before we do a pool reset, which will always happen during the suspend/resume query mechanism that swaps active queries from a flushed batch to the next batch once (or if) the "real" call to fetch query results is called, we can dump the inlined value into the fetch value and return the full results fixes mesa/mesa#3000 Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5533>
* zink: only stall during query destroy for xfb queriesMike Blumenkrantz2020-07-131-7/+24
| | | | | | | | | | | | | xfb queries allocate vk buffer objects in the underlying driver which can be deallocated while an xfb query is in-flight if we attempt to defer it due to the way that gl xfb is translated to vk, so we need to continue forcing this behavior in that case for other query types, we can safely defer here until the current batch has finished rather than block Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5533>
* zink: use #define for number of queries per-poolMike Blumenkrantz2020-07-131-4/+6
| | | | | | | just to ensure we're consistent internally Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5533>
* zink: rework query handlingMike Blumenkrantz2020-07-138-81/+135
| | | | | | | | | | | | | | | | | this hooks up query objects to the batches that they're actively running on (and the related fence) in order to manage the lifetimes of queries more efficiently by calling vkCmdResetQueryPool only on init and when the query pool has been completely used up. additionally, this resolves some vk spec issues related to destroying pools with active queries note that any time a query pool is completely used up, results are lost, which is a very slight improvement on the previous abort() that was triggered in that scenario ref mesa/mesa#3000 Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5533>
* panfrost: Fix outmods on int to float conversionsItalo Nicola2020-07-131-1/+1
| | | | | | | | No shader-db changes (Alyssa). Signed-off-by: Italo Nicola <[email protected]> Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5883>
* docs/submittingpatches: add more than one `Cc: mesa-stable` example to the ↵Eric Engestrom2020-07-131-0/+2
| | | | | | | | | | examples list Starting with that very example :) Signed-off-by: Eric Engestrom <[email protected]> Acked-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5880>
* docs/features: Update ASTC entries for PanfrostAlyssa Rosenzweig2020-07-131-3/+3
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5856>
* panfrost: Map PIPE_{DXT, RGTC, BPTC} to MALI_BCnAlyssa Rosenzweig2020-07-132-2/+21
| | | | | | | | | | | | | Mali (and Vulkan) uses D3D naming conventions for these formats where Gallium/Mesa uses OpenGL names, but the formats are equivalent. sRGB is communicated out-of-band on Mali; otherwise, it appears to be a 1:1 mapping. On supported devices, this exposes GL_EXT_texture_compression_rgtc and GL_ARB_texture_compression_bptc, so update features.txt Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5856>
* panfrost: Filter compressed texture formatsAlyssa Rosenzweig2020-07-131-0/+8
| | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5856>
* panfrost: Pipe in compressed texture feature maskAlyssa Rosenzweig2020-07-132-0/+46
| | | | | | | | | So we can query at run-time as part of Gallium's checks. v2: More explicit naming. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5856>
* panfrost: Add format codes for new compressed texturesAlyssa Rosenzweig2020-07-134-36/+69
| | | | | | | | | | | Compressed formats line up with CONFIG_TEX_COMPRESSED_FORMAT_ENABLE documented on https://releases.linaro.org/archive/14.07/android/images/armv8-android-juno-lsk/ None of the new formats have been seen in the wild. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5856>
* panfrost: Compact unused BO flag bitsAlyssa Rosenzweig2020-07-131-6/+2
| | | | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Suggested-by: Boris Brezillon <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5859>
* panfrost: Remove panfrost_bo_access typeAlyssa Rosenzweig2020-07-133-44/+24
| | | | | | | | | It's just whether it writes or not, which is already implied by the presence/absence of a writer. So no need to track explicitly. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5859>
* panfrost: Remove PAN_BO_DONT_REUSEAlyssa Rosenzweig2020-07-132-7/+6
| | | | | | | | Equivalent to SHARED. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5859>
* panfrost: Remove PAN_BO_COHERENT_LOCALAlyssa Rosenzweig2020-07-131-3/+1
| | | | | | | | Ancient relic from kbase. Panfrost kernel doesn't need this. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5859>
* panfrost: Merge PAN_BO_IMPORTED/PAN_BO_EXPORTEDAlyssa Rosenzweig2020-07-133-9/+6
| | | | | | | | | Always checked together and really signal the same property from different perspectives. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5859>
* panfrost: Index BOs from the BO map sparse arrayAlyssa Rosenzweig2020-07-133-54/+22
| | | | | | | | | | Now we have a central store of them, so we may remove active_bo. v2: Squash two patches together to prevent a race condition mid-series. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5859>
* panfrost: Add a sparse array to map GEM handles to BOsAlyssa Rosenzweig2020-07-132-0/+14
| | | | | | Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5859>
* panfrost: Fix write to free'd memoryAlyssa Rosenzweig2020-07-131-1/+1
| | | | | | | | | | No clue how this worked before. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Fixes: 82f18b713ac ("panfrost: Keep track of active BOs") Cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5859>
* panfrost: Fix fence leakAlyssa Rosenzweig2020-07-131-0/+3
| | | | | | | | | | When overwriting the writer, we need to release the old reference. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Boris Brezillon <[email protected]> Fixes: 2dad9fde505 ("panfrost: Start tracking inter-batch dependencies") Cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5859>
* aco: add 32-bit integer addition to can_swap_operandsRhys Perry2020-07-131-0/+4
| | | | | | | | | | fossil-db (Navi): Totals from 167 (0.12% of 135946) affected shaders: CodeSize: 484892 -> 482628 (-0.47%) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5695>
* radv: use lower_shuffle_to_swizzle_amdRhys Perry2020-07-131-0/+1
| | | | | | | | | | | | Affects a few shaders in Detroit: Become Human and Doom Eternal. fossil-db (Navi): Totals from 9 (0.01% of 135946) affected shaders: CodeSize: 31188 -> 25096 (-19.53%) Instrs: 6136 -> 4999 (-18.53%) Signed-off-by: Rhys Perry <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5695>
* nir/lower_subgroups: add lower_shuffle_to_swizzle_amdRhys Perry2020-07-132-0/+38
| | | | | | | | masked_swizzle_amd can be much faster than shuffle. Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5695>
* nir/lower_subgroups: pass options struct to lower_shuffleRhys Perry2020-07-131-5/+9
| | | | | | Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5695>
* aco: implement <32-bit masked_swizzle_amdRhys Perry2020-07-131-4/+14
| | | | | | | | | This is needed since we will be lowering some 8/16-bit shuffles to masked_swizzle_amd. Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5695>
* aco: optimize some masked swizzles to DPPRhys Perry2020-07-132-3/+40
| | | | | | Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5695>
* aco: read 0 from inactive lanes when using dppRhys Perry2020-07-131-1/+1
| | | | | | Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5695>
* panfrost: Enable framebuffer fetchIcecream952020-07-132-2/+4
| | | | | Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5755>
* panfrost: Extend fetched framebuffer resultsAlyssa Rosenzweig2020-07-131-0/+17
| | | | | | | | So NIR doesn't complain about invalid swizzles when reading a format with less than 4 channels. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5755>