- 27 Jun, 2020 1 commit
-
-
Alejandro Piñeiro authored
So it could be used by both the OpenGL and the Vulkan driver. In addition to the move, some small changes were needed to be made on the API. For example, the simulator was receiving v3d_screen on initialization, and that code setted v3d_screen->sim_file. Now it returns the new sim_file created. Reviewed-by:
Eric Anholt <eric@anholt.net> Part-of: <!5666>
-
- 26 Jun, 2020 39 commits
-
-
Kristian H. Kristensen authored
tu_ImportFenceFdKHR is used by tu_AcquireImageANDROID, which may or may not work, but let's at least keep things compiling until somebody has time to tie up the loose ends on the Android side. Part-of: <!5670>
-
Kenneth Graunke authored
Chris Wilson noted that u_default_texture_subdata's transfer path sometimes results in wasteful double copies. This patch is based on an earlier path he wrote, but updated now that we have staging blits for busy or compressed textures. Consider the case of idle, non-CCS-compressed, tiled images: The transfer-based CPU path has to return a "linear" mapping, so upon map, it mallocs a temporary buffer. u_default_texture_subdata then copies the client memory to this malloc'd buffer, and transfer unmap performs a tiled_memcpy to copy it back into the texture. By writing a direct texture_subdata() implementation, we're able to directly do a tiled_memcpy from the client memory into the destination texture, resulting in only one copy. For linear buffers, there is no advantage to doing things directly, so we simply fall back to u_default_texture_subdata()'s transfer path to avoid replicating those cases. We still may want to use GPU staging buffers for busy destinations (to avoid stalls) or CCS-compressed images (to compress the data), at which point we also fall back to the existing path. We thought to try and use a tiled temporary, but this didn't appear to help. Improves performance in x11perf -shmput500 by 1.96x on my Icelake. Closes: #2500Reviewed-by:
Tapani Pälli <tapani.palli@intel.com> Part-of: <!3818>
-
Eric Anholt authored
The device lost support closely matches the anv code for the same. Part-of: <!2769>
-
Eric Anholt authored
drmCommandWriteRead gives us a -errno, and we only checked for -1 (-EPERM, incidentally). All the callers wanted 0 for errors, which they were getting by the fact that req.value was 0-initialized in our stack allocation (though this only works as long as the kernel doesn't return an error after setting req.value to something), and -EPERM not really being an answer we would expect from an ioctl at this stage in the driver. Part-of: <!2769>
-
Eric Anholt authored
Part-of: <!2769>
-
Bas Nieuwenhuizen authored
There is only one queue for now, so for non-shared semaphores, the implementation is basically a no-op. For shared semaphores, this always uses syncobjs. This depends on syncobj support in the msm kernel driver. Part-of: <!2769>
-
Eric Anholt authored
We need this to test the new VK feature we're about to land. Part-of: <!2769>
-
Daniel Schürmann authored
While we don't allow partial subdword copies, we still need to be able to split 64bit registers Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <!5663>
-
Lepton Wu authored
We need to update dynamic entries related code after updating asm stubs. Fixes: 45206d76 ("mapi: Adapted libglvnd x86 tsd changes") Signed-off-by:
Lepton Wu <lepton@chromium.org> Part-of: <!5598>
-
Eric Anholt authored
I think I've seen about 3 of this error total so far, but waiting 60 minutes for the scripts to give up wastes marge time. Part-of: <!5651>
-
Rob Clark authored
In cases where every variant is a shader-cache-hit, we never need the post-finalize round of nir opt/lowering passes. So defer this until the first shader-cache-miss to avoid doing pointless work. Signed-off-by:
Rob Clark <robdclark@chromium.org> Part-of: <!5372>
-
Rob Clark authored
Adds a shader disk-cache for ir3 shader variants. Note that builds with `-Dshader-cache=false` have no-op stubs with `disk_cache_create()` that returns NULL. Binning pass variants are serialized together with their draw-pass counterparts, due to shared const-state. Signed-off-by:
Rob Clark <robdclark@chromium.org> Part-of: <!5372>
-
Rob Clark authored
For shader-cache, we are going to want to serialize them together. Which is awkward if the two related variants are not compiled together. This also decouples allocation and compile, which will simplify adding shader-cache (which still needs to allocate, but can skip compile). Signed-off-by:
Rob Clark <robdclark@chromium.org> Part-of: <!5372>
-
Rob Clark authored
Currently we always do sysmem if there is tess. And for GS, the binning pass VS ends up identical to the draw pass VS, so no point in compiling it twice. (For GS what we should do someday is generate a binning pass GS, and possibly if we can do cross-stage linking opts, an optimized binning pass VS, but the required outputs would somehow have to end up in the shader variant key.) Signed-off-by:
Rob Clark <robdclark@chromium.org> Part-of: <!5372>
-
Rob Clark authored
Just to group together the parts that will get serialized when we have shader disk-cache. Signed-off-by:
Rob Clark <robdclark@chromium.org> Part-of: <!5372>
-
Rob Clark authored
Use ir3_compiler_destroy() rather than open-coding ralloc_free(). This will give us a place to add more compiler related cleanup code in the following patches. Signed-off-by:
Rob Clark <robdclark@chromium.org> Part-of: <!5372>
-
Rob Clark authored
Signed-off-by:
Rob Clark <robdclark@chromium.org> Part-of: <!5372>
-
Rob Clark authored
The next step is to hook this into pscreen->finalize_nir() so it can come before the state tracker's shader-caching. Unfortunately we still need to do lower_io after mesa/st, so that is split out into a post-finalize pass. Signed-off-by:
Rob Clark <robdclark@chromium.org> Part-of: <!5372>
-
Mike Blumenkrantz authored
we want to detect NaNs here, and OpFUnordNotEqual is the variant which does this Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!5562>
-
Mike Blumenkrantz authored
we don't implement these Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!5562>
-
Mike Blumenkrantz authored
Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!5562>
-
Mike Blumenkrantz authored
fixes spec@glsl-1.30@execution@built-in-functions@fs-op-assign-bitxor tests Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!5562>
-
Mike Blumenkrantz authored
we don't implement these, and pre-optimizing them breaks things in ntv->vtn Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!5562>
-
Mike Blumenkrantz authored
fixes several piglit tests Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!5562>
-
Mike Blumenkrantz authored
fixes shaders@glsl-vs-absolutedifference-uint piglit test Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!5562>
-
Mike Blumenkrantz authored
fixes a number of piglit amd_shader_trinary_minmax tests Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!5562>
-
Samuel Pitoiset authored
Now that ACO is default, this is pointless. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <!5658>
-
Samuel Pitoiset authored
Now that ACO is default, this is now pointless. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <!5658>
-
Erik Faye-Lund authored
I created a new and cleaner favicon for mesa3d.org, and it seems like a good idea to use that one for the docs as well. While we're at it, replace the original PNG with the original SVG asset the ICO-file was generated from. Reviewed-by:
Eric Anholt <eric@anholt.net> Part-of: <!5643>
-
Jonathan Marek authored
Now that tu_cs_emit_regs is used for the scissor, it hits an assert when the scissor is too large. Fixes this dEQP test: dEQP-VK.draw.scissor.static_scissor_max_int32 Fixes: 9c0ae570 ("turnip: fix empty scissor case") Signed-off-by:
Jonathan Marek <jonathan@marek.ca> Part-of: <!5655>
-
Jonathan Marek authored
My attempt to be clever here backfired, it overwrites the pNext and stops the loop (causing deqp to fail to query extension features after that). Fixes: 62de79ac ("turnip: implement VK_KHR_shader_draw_parameters") Signed-off-by:
Jonathan Marek <jonathan@marek.ca> Part-of: <!5654>
-
Icecream95 authored
This flag allows forcing GL 3.3 without having to use MESA_GL_VERSION_OVERRIDE etc. Reviewed-by:
Tomeu Vizoso <tomeu.vizoso@collabora.com> Part-of: <!5584>
-
Connor Abbott authored
Analogous to the turnip change. Part-of: <!5644>
-
Connor Abbott authored
Saves some minor overhead, cleans things up a bit, and removes one more unknown. We now program the internal registers in the same way between direct/indirect draws. Part-of: <!5644>
-
Connor Abbott authored
Based on comparing the implementations of CP_DRAW_INDX_OFFSET and CP_DRAW_INDIRECT, this is what this field is for. Part-of: <!5644>
-
Connor Abbott authored
This was already done correctly for the indirect variants, and turnip was setting the correct value, but it seems freedreno missed the change in the non-indirect variant. Also, fix a misspelling of "indices" and add a type to INDX_SIZE. Part-of: <!5644>
-
Connor Abbott authored
Part-of: <!5607>
-
Connor Abbott authored
Use an array, which makes it more like turnip and makes implementing the const limits easier. Part-of: <!5607>
-
Connor Abbott authored
Part-of: <!5607>
-