Karol Herbst
389a199993
rusticl/platform: extract env variable parsing from Platform::init
...
In our platform initialization code we might want to access the parsed env
variables already. So do this in separate steps.
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22649 >
2023-04-25 04:27:57 +00:00
Karol Herbst
2283e9d155
rusticl/platform: make the initialization more explicit
...
It's not a lazy loaded type so doing the Once::call_once in every
Platform::get gives us a pointless atomic, which might be slow on some
platforms.
Every application has to call clGetPlatformIDs so we only need to do it
there.
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22649 >
2023-04-25 04:27:57 +00:00
Karol Herbst
400847a990
rusticl/device: improve advertisement of fp64 support
...
Enabling fp64 support makes rarely sense, but in case we do claim it, we
should also tell if it's a pure software implementation.
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22649 >
2023-04-25 04:27:57 +00:00
M Henning
b82004d960
gallium: Add pipe_shader_state_from_nir
...
and use it in nouveau
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22537 >
2023-04-25 03:46:34 +00:00
M Henning
5889c13fcd
nv50,nvc0: Use ttn for tgsi shaders by default
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22537 >
2023-04-25 03:46:34 +00:00
M Henning
44db89b937
nv50,nvc0: Stop advertising TGSI by default
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22537 >
2023-04-25 03:46:34 +00:00
M Henning
d11145e837
nv50,nvc0: Use nir in nv50_blitter_make_fp
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22537 >
2023-04-25 03:46:34 +00:00
M Henning
a019d15668
nvc0: Use nir in nvc0_blitter_make_vp
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22537 >
2023-04-25 03:46:34 +00:00
M Henning
8928d8d3ad
nvc0: Use nir in nvc0_program_init_tcp_empty
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22537 >
2023-04-25 03:46:34 +00:00
Brian Paul
35fa7937db
lavapipe: asst. clean-ups in lvp_execute.c
...
Move loop var decls into loops.
Use designated initializers.
Replace some questionable memcpy/memset() calls with assignments.
Line-wrap, whitespace fixes.
Signed-off-by: Brian Paul <brianp@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22467 >
2023-04-25 02:09:26 +00:00
Brian Paul
9b1addbf75
lavapipe: clean-ups in lvp_physical_device_get_format_properties()
...
Use new pscreen local var to shorten the code.
Line-wrap and align code for easier reading.
Consolidate |= assignments.
Signed-off-by: Brian Paul <brianp@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22467 >
2023-04-25 02:09:26 +00:00
Brian Paul
625a9d4c03
lavapipe: clean-ups in lvp_GetQueryPoolResults()
...
Simplify the code which puts query results into the destination
buffer:
* Use a uint64 or uint32 pointer instead of uint8 to write the results
to the buffer for less casting and simplifient pointer incrementing.
* Use MIN2() macro to be more concise.
And fix some indentation.
Signed-off-by: Brian Paul <brianp@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22467 >
2023-04-25 02:09:26 +00:00
David Heidelberg
128e578c04
ci/mold: bump to 1.11.0
...
Fixes LTO issue.
Release notes: https://github.com/rui314/mold/releases/tag/v1.11.0
Acked-by: Eric Engestrom <eric@igalia.com >
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22642 >
2023-04-25 00:28:21 +00:00
Mike Blumenkrantz
6d5462658a
llvmpipe: do late init for llvm builder
...
this avoids doing any llvm work during lavapipe enumeration which
might otherwise explode if lavapipe is not the actual driver that
gets used
cc: mesa-stable
Reviewed-by: Roland Scheidegger <sroland@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22600 >
2023-04-25 00:04:08 +00:00
Mike Blumenkrantz
4a056807bc
gallivm: break out native vector width calc for reuse
...
breaks dependency on lp_build_init()
cc: mesa-stable
Reviewed-by: Roland Scheidegger <sroland@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22600 >
2023-04-25 00:04:08 +00:00
Juan A. Suarez Romero
78e448f4f9
v3d/ci: enable glsl 1.30 and 1.40 piglit tests
...
Now that we are exposing OpenGL 3.1, let's enable the proper supported
GLSL versions.
Acked-by: Eric Engestrom <eric@igalia.com >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22660 >
2023-04-24 23:34:46 +00:00
Rob Clark
712daef3a8
freedreno: Add more tracepoint fields
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646 >
2023-04-24 22:42:04 +00:00
Rob Clark
dc4add8cdd
freedreno/a6xx: Pass ring to __ONE_REG()
...
This happened to work before because the arg to OUT_REG() was also
called 'ring' (or there was a suitable local var in scope!!)
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646 >
2023-04-24 22:42:04 +00:00
Rob Clark
daaa2917aa
freedreno: Add dirty state logging
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646 >
2023-04-24 22:42:04 +00:00
Rob Clark
6ea7d8e223
freedreno/perfetto: Add shader_id for compute stages
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646 >
2023-04-24 22:42:04 +00:00
Rob Clark
f136f89487
mesa/nir: Add some perfetto traces
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646 >
2023-04-24 22:42:04 +00:00
Rob Clark
15499250f2
freedreno/ir3: More perfetto tracing
...
Some useful trace points that I had laying around.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646 >
2023-04-24 22:42:04 +00:00
Rob Clark
d36643bef5
util/log: Add missing "const"
...
Fixes warning:
warning: ISO C++11 does not allow conversion from string literal to 'char *' [-Wwritable-strings]
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646 >
2023-04-24 22:42:04 +00:00
Rob Clark
09f19672a0
freedreno/registers: C++ struct casting
...
Using C style `(struct foo){ ..args..}` at least confuses eclipse, so
for C++ code use `{ ..args.. }` instead.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646 >
2023-04-24 22:42:04 +00:00
Rob Clark
827363f886
freedreno: Extra casting to make C++ happy
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22646 >
2023-04-24 22:42:03 +00:00
Emma Anholt
7f99cbf25e
util/log: Fix log messages over 1024 characters.
...
The first attempt at the sprintf would have consumed part of va, so if
we're going to recurse on overflow to try again in a new allocation then
we have to do our work on a copy.
This was a common failure mode for MESA_GLSL=source, where it would just print:
Mesa: info: GLSL source for fragment shader 1:
Mesa: info: (null)
Fixes: 7a18a1712a ("util/log: improve logger_file newline handling")
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22618 >
2023-04-24 21:56:05 +00:00
Iván Briano
4cfb4f7d12
anv: support fast color clears on vkCmdClearAttachments
...
As long as some conditions are met.
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20175 >
2023-04-24 21:33:49 +00:00
Iván Briano
5faf75dd74
anv: expose some helper functions
...
v2: (Rohan Garg)
- Make set_fast_clear_state take an image and format instead of an iview
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20175 >
2023-04-24 21:33:49 +00:00
Iván Briano
9046319cc9
anv: factor out code for ccs_op and mcs_op
...
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20175 >
2023-04-24 21:33:49 +00:00
Iván Briano
2a67a1f0c2
anv: make anv_can_fast_clear_color_view more generally available
...
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20175 >
2023-04-24 21:33:49 +00:00
Iván Briano
a2e02c4ba4
anv: Remove dead parameters from copy_fast_clear_dwords
...
There's only one caller of this function and always passes false.
v2: (Nanley Chery)
- Also remove the aspect parameter
v3: (Nanley Chery)
- Rename the function so it's more clear in which direction it works
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20175 >
2023-04-24 21:33:49 +00:00
Sagar Ghuge
e488773b29
anv: Fast clear depth/stencil surface in vkCmdClearAttachments
...
Instead of doing a slow depth clear, we can do depth fast clear in
vkClearAttachments.
Sascha Willems occlusionquery demo shows more than 2% perf boost with
this series.
On Felix's Tigerlake with the GPU at fixed frequency, this patch
improves performance of RoTR by +0.5%.
v2: (Nanley Chery)
- Clear stencil surface along with depth.
- Check for multilayer resources.
- Lookout for state.attachments.
- Fallback on slow clear for BDW and CHV if conditional rendering
enabled.
- Keep flush in same function.
v3: (Nanley Chery)
- Return immediately after fast clearing.
- Remove unnecessary comment.
v4: (Nanley Chery)
- Add assertion for BLORP_BATCH_NO_EMIT_DEPTH_STENCIL.
- Remove unnecessary local variable.
- Add 3DSTATE_WM_HZ_OP comment.
v5: (Nanley Chery)
- Fix comments.
- Don't take fast depth clear path if BLORP_BATCH_PREDICATE_ENABLE set.
- Refactor code in can_hiz_clear_att.
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/20175 >
2023-04-24 21:33:49 +00:00
Sagar Ghuge
ee03b30e45
anv: Move and make anv_can_hiz_clear_ds_view non-static
...
v2:
- Pass const image view param. (Nanley)
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/20175 >
2023-04-24 21:33:49 +00:00
Sagar Ghuge
e04a414206
anv: Factor out code from anv_image_hiz_clear
...
Refactoring code from anv_image_hiz_clear which helps in future patches
to support fast depth clear 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/20175 >
2023-04-24 21:33:48 +00:00
Emma Anholt
ae2784b832
blob: Don't valgrind assert for defined memory if we aren't writing.
...
The VK pipeline cache passes a NULL bytes with a nonzero size to a
NULL-data blob to set up the size of the blob. In this case, we don't
actually execute the memcpy, so the non-existent "bytes" doesn't need to
have defined contents. Avoids a valgrind warning:
==972858== Unaddressable byte(s) found during client check request
==972858== at 0x147F4166: blob_write_bytes (blob.c:165)
==972858== by 0x147F4166: blob_write_bytes (blob.c:158)
==972858== by 0x14695FFF: vk_pipeline_cache_object_serialize (vk_pipeline_cache.c:240)
[...]
==972858== Address 0x0 is not stack'd, malloc'd or (recently) free'd
Fixes: 591da98779 ("vulkan: Add a common VkPipelineCache implementation")
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22617 >
2023-04-24 20:48:33 +00:00
Emma Anholt
c060b649c5
ci/zink: Enable the validation layer on the TGL GL46 run.
...
We recently had an issue where an anv merge failed due to a bug in zink,
which validation would have caught. Get some coverage by default on the
main branch.
This increases runtime from 9:30 to 12:10. I don't feel good about this,
but I've got https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/4398 in
flight to try to knock the time back down.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22459 >
2023-04-24 19:21:50 +00:00
Emma Anholt
75a08b04d7
ci: Move zink's validation layer setup to deqp-runner.sh.
...
I want the path to be always set in case someone wants some
ZINK_DEBUG=validation, rather than having to do it per test job.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22459 >
2023-04-24 19:21:50 +00:00
Emma Anholt
5ae6a9bd70
ci/zink: Re-enable traces now that !20319 has landed.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22459 >
2023-04-24 19:21:50 +00:00
Emma Anholt
c0f5f852ab
ci: Add the Vulkan validation layer to amd64 rootfs builds.
...
We're going to want this for zink testing on actual HW drivers. I haven't
sorted out the arm64 build yet, so no tu coverage.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22459 >
2023-04-24 19:21:50 +00:00
Emma Anholt
e38ca40082
ci: Make a variable for the repeated rootfs directory name.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22459 >
2023-04-24 19:21:50 +00:00
Sathishkumar S
5307f6d03f
frontends/va: return matching drm format for yuyv pipe format
...
return the matching drm format for YUYV pipe format in pipe_format_to_drm_format(), else
vlVaExportSurfaceHandle() fails to export a surface handle for YUYV surface.
Signed-off-by: Sathishkumar S <sathishkumar.sundararaju@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22497 >
2023-04-24 19:06:30 +00:00
Mike Blumenkrantz
edaf49160e
zink: fix array copying in pv lowering
...
Fixes: 5a4083349f ("zink: add provoking vertex mode lowering")
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22669 >
2023-04-24 18:00:20 +00:00
Mike Blumenkrantz
99121c9b77
nir/gs: fix array type copying for passthrough gs
...
same mechanics as in zink passes
Fixes: d0342e28b3 ("nir: Add helper to create passthrough GS shader")
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22669 >
2023-04-24 18:00:20 +00:00
Jesse Natalie
796109cb08
dzn: Align-up heap sizes when allocating memory
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8895
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22666 >
2023-04-24 17:40:47 +00:00
Samuel Pitoiset
bdc4e3a5a6
radv: do not overallocate the CS array during submissions
...
Preambles/postambles are no longer added to the CS array.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22653 >
2023-04-24 17:09:28 +00:00
André Almeida
41a3656149
radv: Search for guilty contexts at radv_check_status
...
When a GPU hung happens, all contexts are notified. They will receive
INNOCENT_CONTEXT if they are not the context that triggered the reset,
or GUILTY_CONTEXT otherwise.
At radv_check_status(), we return on the first context that was notified
as [GUILTY, INNOCENT]_CONTEXT, without further checks. This can make an
app think that it's innocent if the guilty context is not the first one
on the list of hw_ctx to be checked.
Check every context for a guilty one before returning CONTEXT_INNOCENT.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Signed-off-by: André Almeida <andrealmeid@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22648 >
2023-04-24 16:45:40 +00:00
Luca Weiss
dc6f704566
freedreno: Enable A506
...
Enable the Adreno 506 that is found in SoCs such as Snapdragon 450,
Snapdragon 625 or Snapdragon 632 (msm8953 family).
Signed-off-by: Luca Weiss <luca@z3ntu.xyz >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22647 >
2023-04-24 16:01:24 +00:00
Mike Blumenkrantz
905264f27d
zink: add a driver workaround to disable background compiles
...
it's stupid to do optimized background compiles if the driver is going
to create the exact same pipeline, so add a workaround to disable
this behavior
should improve ci runtimes on lavapipe by some amount
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22613 >
2023-04-24 15:37:30 +00:00
Juan A. Suarez Romero
b346c019d5
v3d: add support for ARB_texture_cube_map_array
...
This implements support for texture cubemap arrays.
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22482 >
2023-04-24 15:07:32 +00:00
Mike Blumenkrantz
1bc9efc10c
zink: add z32s8 as mandatory GL3.0 profile attachment format
...
fixes #8616
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22608 >
2023-04-24 14:33:58 +00:00