Mike Blumenkrantz
e4884c35d6
llvmpipe: remove misleading query comment
...
u_blitter already handles this
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16278 >
2022-05-03 13:00:50 +00:00
Mike Blumenkrantz
a36c3f6f6a
llvmpipe: disable statistic queries during draw if queries are disabled
...
cc: mesa-stable
fixes (zink):
spec@ext_transform_feedback@generatemipmap prims_generated
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16278 >
2022-05-03 13:00:50 +00:00
Pierre-Eric Pelloux-Prayer
6ee9e6ce87
radeonsi: generate unique shader name in si_get_nir_shader
...
This function modifies the NIR shader, so when using NIR_DEBUG=print and
nir_viewer all the variants are displayed using the original name.
With this change, we get the original shader (eg: GLSL3), and then each
variant gets its own name (GLSL3-xxxxxxxx) - and is displayed in its
own tab in nir_viewer.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16247 >
2022-05-03 10:39:51 +00:00
Pierre-Eric Pelloux-Prayer
f1f2d407e7
radeonsi: don't always strip NIR debug infos
...
When using NIR_DEBUG=print, always having shader names help debugging.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16247 >
2022-05-03 10:39:51 +00:00
Joshua Ashton
ce7966fcb4
aco: Use movk for AddressHi bits in vertex prolog
...
Eliminates a useless extra dword by transforming
s_mov_b32 s47, 0xffff8000 ; beaf03ff ffff8000
to
s_movk_i32 s47, 0x8000 ; b02f8000
which does the same thing.
Reviewed-By: Tatsuyuki Ishi <ishitatsuyuki@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15415 >
2022-05-03 10:15:36 +00:00
Daniel Schürmann
58bd9a379e
aco/ra: fix live-range splits of phi definitions
...
It could happen that at the time of a live-range split,
a phi was not yet placed in the new instruction vector,
and thus, instead of renamed, a new phi was created.
Fixes: dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_i8vec2
Cc: mesa-stable
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16248 >
2022-05-03 09:54:30 +00:00
Konstantin Seurer
d639608b8b
ac/nir: Do not set cursor in try_extract_additions
...
Fixes: 61ac5ac ("radv,ac/nir: lower global access to _amd global access intrinsics")
Signed-off-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16270 >
2022-05-03 09:23:49 +00:00
Samuel Pitoiset
3829981eb7
radv: use 3D views for 3D internal operations on GFX6-8
...
Instead of binding 2D images views and relying on BASE_ARRAY.
This cleanups the internal driver operations for 3D.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16272 >
2022-05-03 08:10:10 +02:00
Timothy Arceri
180398f785
nir: fix sorting before assigning varying driver locations
...
We need to make sure we also properly sort varyings sharing a single
slot otherwise we can end up assigning earlier components to the next
slot if we have already processed later components.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6392
Fixes: 1e93b0caa1 ("mesa/st: add support for NIR as possible driver IR")
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16208 >
2022-05-03 00:04:30 +00:00
Emma Anholt
067023dce2
util: Add some unit tests of the half-float conversions.
...
Make sure that we're handling nans/infs correctly, in particular only
generating quiet nans when given a quiet nan. This catches the previous
qNaN fix.
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16233 >
2022-05-02 23:36:50 +00:00
Chia-I Wu
27e33d5c96
util: Keep quiet NaNs quiet when converting to half float.
...
We don't want to be throwing exceptions and changing float values later by
emitting a signaling binary16 nan.
If we don't do this, then when we convert back to f32 in NIR constant
expression evaluation, the signaling NaN can end up giving NaN for
fmax(NaN, 0.0), instead of 0.0.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5933
Cc: mesa-stable
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16233 >
2022-05-02 23:36:50 +00:00
Lionel Landwerlin
acf6bf88c0
iris: use new kernel uAPI to compute video memory
...
v2: Use os_get_available_system_memory() when kernel memory region
uAPI is not available (Lionel)
Cc: 22.1 <mesa-stable>
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16210 >
2022-05-02 22:57:06 +00:00
Jason Ekstrand
763744aa8b
panvk: Add address/range helpers for panvk_buffer
...
The range helper is taken from ANV; the gpu_ptr one is original. This
also fixes a few more bugs where we weren't adding offsets in properly.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16216 >
2022-05-02 17:37:40 -05:00
Alyssa Rosenzweig
631f47e83a
panvk: Only write depth when depth test enabled
...
Fixes dEQP-VK.pipeline.depth.format.*_test_disabled.depth_write_enabled
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16283 >
2022-05-02 20:28:48 +00:00
Alyssa Rosenzweig
46778f2b2a
panvk: Lower image deref atomics
...
Fixes dEQP-VK.image.atomic_operations.*
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16283 >
2022-05-02 20:28:48 +00:00
Alyssa Rosenzweig
54412afadc
pan/bi: Handle texture offset + index
...
Fixes dEQP-VK.glsl.opaque_type_indexing.sampler.uniform.vertex.sampler1d
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16283 >
2022-05-02 20:28:48 +00:00
Alyssa Rosenzweig
86d32eed38
panvk: Allocate stack for each thread
...
Rather than a single stack for all threads to share -- that can't work! :-) We
use the same helper that the GLES driver does. Fixes anything using scratch or
spilling, including:
dEQP-VK.glsl.indexing.varying_array.vec3_static_write_dynamic_read
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16283 >
2022-05-02 20:28:48 +00:00
Alyssa Rosenzweig
7a7403f6aa
panvk: Lower global vars to local
...
Fixes dEQP-VK.glsl.indexing.varying_array.float_static_write_static_loop_read
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16283 >
2022-05-02 20:28:48 +00:00
Yiwei Zhang
3f44bad1ce
venus: log performance envs upon instance creation with debug init
...
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Change-Id: I8db93d6de28ac6a727c10fbaca94cffac092f8ea
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16256 >
2022-05-02 20:20:43 +00:00
Yiwei Zhang
84a53de76c
venus: add VN_RELAX_BASE_SLEEP_US env var for tuning cpu utils
...
Cap the minimum to the current base sleep us 10.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16256 >
2022-05-02 20:20:43 +00:00
Rob Clark
f3fb1d6632
drm-shim: Cleanup on device file close
...
Avoid leaking memory when the device file is closed, dropping bo
references and freeing the shim_fd.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16250 >
2022-05-02 19:50:33 +00:00
Rob Clark
409b76511c
freedreno/drm-shim: Better iova handling
...
We actually want to use util_vma to handle this. But fortunately core
drm-shim alredy does this for mem offset, we can just delete a bunch of
code and re-use that.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16250 >
2022-05-02 19:50:33 +00:00
Rob Clark
6c465ad6c7
drm-shim: Add error handling for bo_init()
...
Don't assert, return an error. If we are fuzzing something using
drm-shim, we want to be more like the kernel and return an error
for OoM situation, rather than falling over.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16250 >
2022-05-02 19:50:33 +00:00
Rob Clark
c4b5ebe1fc
drm-shim: Better mmap offsets
...
Using the bo pointer address as the offset doesn't go over well when
someone is fuzzing you. But we already have the mem_addr, we can simply
use that instead.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16250 >
2022-05-02 19:50:33 +00:00
Rob Clark
97f4e48717
freedreno/drm-shim: Robustify error handling
...
We can't be so sloppy if we are using drm-shim for fuzzing.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16250 >
2022-05-02 19:50:33 +00:00
Rob Clark
d06fc7bb4f
freedreno/drm-shim: Update to latest uapi version
...
Needed for fuzzing virgl drm native context.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16250 >
2022-05-02 19:50:33 +00:00
Rob Clark
a922997ffd
drm-shim: Add GET_UNIQUE support
...
Needed by drmOpenWithType(), which is used by virgl drm native context.
(We want to use drm-shim for fuzzing.)
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16250 >
2022-05-02 19:50:33 +00:00
Iván Briano
bf04be17f7
vulkan/wsi/wayland: Fix double free on error condition
...
If wsi_configure_native_image() fails, it will call
wsi_destroy_image_info() itself, so let's try to not call it again from
wsi_wl_swapchain_destroy().
Fixes the CTS tests:
dEQP-VK.wsi.wayland.swapchain.simulate_oom.*
Fixes: b626a5be43 ("vulkan/wsi/wayland: Split image creation")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16257 >
2022-05-02 19:26:27 +00:00
Lionel Landwerlin
1e7ea18026
vulkan/runtime: 0-out pipeline cache object
...
I'm running into crashes because cache->cache_object is uninitialized.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 591da98779 ("vulkan: Add a common VkPipelineCache implementation")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16275 >
2022-05-02 19:02:42 +00:00
Caio Oliveira
7cd9adeb41
intel/compiler: In XeHP prefer <1;1,0> regions before compacting
...
Ken performed some tests with shader-db to evaluate the effects
```
Across all 145,848 shaders generated, the results were:
Total bytes compacted before: 3,326,224
Total bytes compacted after: 60,963,280
```
Reviewed-by: Matt Turner <mattst88@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15399 >
2022-05-02 18:03:01 +00:00
Mike Blumenkrantz
562fd98998
llvmpipe: add a ci flake
...
not able to repro locally
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16280 >
2022-05-02 17:46:08 +00:00
Jesse Natalie
2505afc430
d3d12: Destroy empty residency bo set during early-return
...
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
1e940f2ccf
d3d12: Fix a couple over-releases from incorrect take-ownership flag
...
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
32c1b5fd05
d3d12: Fix leaks in map with do-not-wait
...
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
5b46ef9857
d3d12: Use a pipe_reference in d3d12_bo
...
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
8de1e310a7
u_primconvert: Handle take_index_buffer_ownership
...
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
12d88d500d
u_primconvert: Refactor to remove recursion from util_primconvert_draw_vbo
...
This prevents having unused copies of pipe_draw_info and
pipe_draw_start_count_bias on the stack, and makes it easier to do
things once for a multi-draw, which will matter in the next patch.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
0474bbcfb9
u_debug_stack: Lock around stack dumps to prevent interleaving
...
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
303c2754a3
u_debug_symbol: Allow re-init of DbgHelp to work around already-initialized issues
...
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
f51840d87c
u_debug_symbol: Use correct sizeof for DbgHelp
...
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
d8024b2504
u_debug_refcnt: Don't loop for initial refcounts if the initial value is huge
...
Some components use very large refcounts to bypass atomics in single-threaded
cases, and this produces near-infinite loops when these resources are created.
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
0bcb5f919e
bin: Add a script for filtering/sorting refcount logs
...
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16182 >
2022-05-02 16:58:20 +00:00
Jesse Natalie
53a94fbdd5
mesa: Ensure ARB programs end in a newline
...
If the last line of an ARB program has a comment, the program will
fail to parse, because the lexer only considers a comment valid if
it ends in a newline, not EOF. The parser then fails on the '#'.
Reviewed-by: Joshua Ashton <joshua@froggi.es >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16230 >
2022-05-02 16:02:54 +00:00
Jesse Natalie
9f37579e1b
d3d12: Correctly key off of polygon stipple enable cap
...
Apparently we were only keying off the presence of a real stipple pattern
being set, and completely ignoring when the app does glDisable().
Add in the actual enable bit as an additional discriminator to determine
if we should be doing polygon stippling.
Reviewed-by: Sil Vilerino <sivileri@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16254 >
2022-05-02 15:56:05 +00:00
Alyssa Rosenzweig
ce6d5094c8
pan/va: Add non-IDVS VAR_TEX instructions
...
Used in blit shaders.
Icecream95 supplied the test cases.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15588 >
2022-05-02 11:11:25 -04:00
Alyssa Rosenzweig
030e00dea2
pan/va: Add VAR_TEX_BUF_GRADIENT instruction
...
Probably useful for ... something.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15588 >
2022-05-02 11:11:25 -04:00
Icecream95
0b17ea7536
pan/va: Improve texture instructions
...
[Alyssa: Related improvements.]
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15588 >
2022-05-02 11:11:08 -04:00
Icecream95
2bfcfa005d
pan/va: Add absneg modifier to V2F32_TO_V2F16
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15588 >
2022-05-02 11:11:08 -04:00
Icecream95
35c3073fc2
pan/va: Add SEG_ADD/SEG_SUB operation
...
[Alyssa: Fixes to the instruction.]
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15588 >
2022-05-02 11:11:08 -04:00
Icecream95
822dfb76de
pan/va: Add more transcendental operations
...
TODO: Make the secondary opcode field wider so that FATAN_ASSIST can
be split into two instructions
[Alyssa: Fixes to the hardware behaviour.]
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15588 >
2022-05-02 11:11:08 -04:00