Emma Anholt
ecabc824c2
glsl: Drop the (v.x + v.y + v.z + v.w) -> dot(v, 1.0) optimization.
...
It's not connected up to anything at the moment, and even if I do enable
it for crocus HSW it only shaves 3 instructions off of one particular VS
in an old synthetic benchmark, not affecting anything else in shader-db.
I don't think anyone will care to ever fix or port this to NIR, let's just
retire it.
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21353 >
2023-02-22 21:45:35 +00:00
Rob Clark
3c668513b9
freedreno/a6xx: Fix view_seqno in tex cache key
...
If the view's seqno increments, it needs to happen *before* the tex cache
key is constructed. Normally this happens when the sampler views are
bound. But if the texture backing a current sampler view is rebound we
need to handle this before the cache lookup.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21408 >
2023-02-22 21:26:28 +00:00
Rob Clark
818b49932a
freedreno/a6xx: Static-ify sampler_view_update()
...
It doesn't need to be visible elsewhere since commit a93d3f1498
("freedreno/a6xx: Move tex state building")
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21408 >
2023-02-22 21:26:28 +00:00
Rob Clark
e9fa92d6fa
freedreno/a6xx: Small cleanup
...
Move the rb allocation to the place where it is populated (ie. where we
know how large it must be).
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21408 >
2023-02-22 21:26:28 +00:00
Rob Clark
936f2ebb46
freedreno/a6xx: Remove needs_invalidate flag
...
Whether the rsc seqno has changed tells us whether we need to update.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21408 >
2023-02-22 21:26:27 +00:00
Rob Clark
b6778995d7
freedreno/a6xx: Add a way to assert valid format
...
Layout transitions caused by access as a various format must happen at
state bind time, before batch_draw_tracking(). Add a helper to assert
this fact.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21408 >
2023-02-22 21:26:27 +00:00
Rob Clark
ea9d1cfb20
freedreno/a6xx: Fix sampler view rsc_seqno for X32_S8X24
...
Elsewhere we are comparing it against the seqno for the "primary" z32
buffer, so be consistent. Otherwise we'll think we need to re-validate
every time the sampler view is bound.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21408 >
2023-02-22 21:26:27 +00:00
Rob Clark
b40e3c9e6c
freedreno/a6xx: Drop unneed fd6_texture_state() arg
...
It is redundant with shader type (stage).
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21408 >
2023-02-22 21:26:27 +00:00
Rob Clark
29445505f6
freedreno/a6xx: Fix set_sampler_views(start != 0)
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21408 >
2023-02-22 21:26:27 +00:00
Rob Clark
a3c73987ab
freedreno/a6xx: Move rsc seqno out of tex cache key
...
Since we invalidate tex cache entries if an associated pipe_resource is
rebound, we don't rely on the rsc_seqno being part of the tex cache key.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21408 >
2023-02-22 21:26:27 +00:00
Rhys Perry
94abccf3ce
aco: fix pathological case in LdsDirectVALUHazard
...
Similar to bfd4ac4581 .
No fossil-db changes.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Fixes: 296b4d95a3 ("aco/gfx11: workaround LdsDirectVALUHazard")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21423 >
2023-02-22 20:46:12 +00:00
Georg Lehmann
ee47cc8256
amd,nir: remove byte_permute_amd intrinsic
...
It's unused and if we ever want to use it again we should make it an alu
opcode instead.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21445 >
2023-02-22 20:13:52 +00:00
Pierre-Eric Pelloux-Prayer
a502f4fc13
radeonsi/video: use specific PIPE_BIND_ value for video buffers
...
Since 13cb41f666 PIPE_BIND_SHARED was used to allocate driver internal
video buffers. These buffers are never shared, but the intent was to
get non-suballocated buffers and SHARED was used as an indirect flag.
This commit switches to PIPE_BIND_CUSTOM which isn't used anywhere else,
and is now translated as "no suballocation".
The main benefit here is that this allows these buffers to set
use_reusable_pool to true reducing the CPU overhead a lot.
For instance, running the following command on my system:
ffmpeg -hwaccel vaapi -hwaccel_output_format vaapi \
-i tears_of_steel_1080p.mov -an -c:v h264_vaapi output.mp4
takes 35 sec with this commit vs 45 sec without.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21416 >
2023-02-22 18:30:28 +00:00
Chia-I Wu
635d62ba99
mesa: use mesa_log from output_if_debug
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21454 >
2023-02-22 17:55:40 +00:00
Chia-I Wu
f18f43338e
mesa: add missing newlines for _mesa_debug/_mesa_log callers
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21454 >
2023-02-22 17:55:40 +00:00
Chia-I Wu
40e45eaef0
util/log: add logger_windbg
...
Because output_if_debug has it.
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21454 >
2023-02-22 17:55:40 +00:00
Chia-I Wu
8f0a7e848f
util/log: add support for MESA_LOG_FILE
...
It allows logger_file to log to any file.
v2: check "geteuid() == getuid()"
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21454 >
2023-02-22 17:55:40 +00:00
Chia-I Wu
7d8d64426b
util/log: add logger_syslog
...
This is useful when the app is a daemon.
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21454 >
2023-02-22 17:55:40 +00:00
Chia-I Wu
bbd19527c1
util/log: improve logger_android
...
Avoid __android_log_vprint which can truncate messages. Also add
MESA_LOG=wait to lower the chance of logger_android dropping messages.
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21454 >
2023-02-22 17:55:40 +00:00
Chia-I Wu
7a18a1712a
util/log: improve logger_file newline handling
...
Add logger_vasnprintf that will be used by other loggers. For
logger_file, it improves newline handling for
mesa_logd("%s", "hello\n");
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21454 >
2023-02-22 17:55:40 +00:00
Chia-I Wu
63864d4dfc
util/log: allow multiple loggers
...
It still logs to logcat on Android and stderr otherwise by default.
MESA_LOG is introduced to override the loggers.
v2: add va_copy
Reviewed-by: Emma Anholt <emma@anholt.net > (v1)
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21454 >
2023-02-22 17:55:40 +00:00
Chia-I Wu
337d58f6fc
util/log: refactor mesa_log
...
Add logger_file and logger_android.
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21454 >
2023-02-22 17:55:40 +00:00
Alejandro Piñeiro
dd3b67b974
v3dv: handle ASPECT_MEMORY_PLANE aspect flags when getting plane number
...
As we support VK_EXT_image_drm_format_modifier, we could receive
VK_IMAGE_ASPECT_MEMORY_PLANE_0/1/2_BIT_EXT flags.
Fixes several tests like this:
dEQP-VK.drm_format_modifiers.create_explicit_modifier.*
when using CTS 1.3.5.0
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21463 >
2023-02-22 16:27:43 +00:00
Sebastian Wick
f4ce19063c
loader: do not check the mesa DRI_Mesa version if it was not found
...
Signed-off-by: Sebastian Wick <sebastian.wick@redhat.com >
Fixes: 1026d29344 ("dri: Introduce internal Mesa DRI driver loader extension.")
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21429 >
2023-02-22 15:07:24 +00:00
Karol Herbst
6e666c6303
nir: Skip samplers and textures in lower_explicit_io
...
We have specialized lowering passes dealing with most of that already:
1. gl_nir_lower_samplers_as_deref
2. nir_lower_samplers
3. nir_lower_cl_images
If we need more than that, those passes can deal with following deref
chains as well.
We _might_ need to improve nir_lower_cl_images a bit for more complex
kernels, but CL also doesn't allow indirect images, so we are always able
to optimize the entire deref chain away.
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20161 >
2023-02-22 14:20:21 +00:00
Karol Herbst
186a22712f
rusticl: allocate printf buffer as staging
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20161 >
2023-02-22 14:20:21 +00:00
Karol Herbst
3abbeed74f
rusticl: no compute only
...
This might be a good optimization, but we should figure first what drivers
should be able to disable and what not first.
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20161 >
2023-02-22 14:20:21 +00:00
Karol Herbst
ced9d5d635
rusticl/device: limit CL_DEVICE_MAX_CONSTANT_ARGS
...
At the moment we implement constant memory as normal global memory, but
we still should limit to the actual constant buffer cap once we properly
use UBOs for that.
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20161 >
2023-02-22 14:20:21 +00:00
Karol Herbst
bbea8761c2
rusticl/device: fix some device limits
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20161 >
2023-02-22 14:20:21 +00:00
Karol Herbst
188c0d7c8f
llvmpipe/ci: increase deqp-runner timeout
...
Some of the OpenCL tests are flaky, because they just take that long.
Builtins can generated really complex code and if we are unlucky they can
timeout.
Proper support for functions would also solve the issue, probably, but for
now increase the deqp-runner timeout so it's less of an annoyence.
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20161 >
2023-02-22 14:20:21 +00:00
Samuel Pitoiset
7f2775bc8a
radv/ci: cleanup CI lists for dEQP-VK.memory.* tests that timeout
...
These tests usually take more than 30s to complete, so exclude them
completely instead. This should also make runs slightly faster.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21464 >
2023-02-22 13:25:13 +00:00
Eric Engestrom
2809bb8499
broadcom/ci: re-enable egl on wayland
...
Swap them, as suggested by @enunes, to avoid a ton of timeouts in
wayland if the x11 tests ran first.
Needs to be investigated, but at least like this we can get the CI
coverage back.
Signed-off-by: Eric Engestrom <eric@igalia.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21453 >
2023-02-22 12:59:04 +00:00
Eric Engestrom
67b2f48645
broadcom/ci: add two known failures
...
The first one in a Pass on both the rpi and the simulator, while the second
one is skipped as NotSupported on both. No idea why it's failing on the
CI, but at least it's consistently failing...
Signed-off-by: Eric Engestrom <eric@igalia.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21453 >
2023-02-22 12:59:04 +00:00
Eric Engestrom
50361c71f4
broadcom/ci: skip buffer_age.no_preserve and swap_buffers_with_damage on wayland
...
They hang the runner, but they all pass fine on my rpi.
Will need investigating, but for now skip them.
Signed-off-by: Eric Engestrom <eric@igalia.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21453 >
2023-02-22 12:59:04 +00:00
Eric Engestrom
d01fded429
broadcom/ci: drop create_pixmap_surface from the fails; it passes now
...
Signed-off-by: Eric Engestrom <eric@igalia.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21453 >
2023-02-22 12:59:04 +00:00
Eric Engestrom
ccc61357d5
broadcom/ci: add x11- prefix to x11 EGL tests
...
Makes things more obvious now that we're enabling wayland as well.
Signed-off-by: Eric Engestrom <eric@igalia.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21453 >
2023-02-22 12:59:04 +00:00
Erik Faye-Lund
176add76ad
zink: get rid of needless dependency
...
We haven't needed this header since 7f56fd9655 ("zink: it's kopperin'
time"), so let's get rid of it and the dependency that comes with it.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21441 >
2023-02-22 12:23:39 +00:00
Erik Faye-Lund
e02cdb397e
zink: prefer vulkan_core.h over vulkan.h
...
There's just two places where we need any of the WSI specific vulkan
includes, the rest of Zink should do just fine with vulkan_core.h. So
let's include the win32-specific header explicitly in those two places,
and reduce the need for WSI specifics inside zink itself. Kopper
handles the rest of the WSI integration.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21441 >
2023-02-22 12:23:39 +00:00
Konstantin Seurer
6242fe3923
anv: Use vk_acceleration_structure
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21047 >
2023-02-22 11:58:57 +00:00
Konstantin Seurer
4d2a7ea146
radv: Use vk_acceleration_structure
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21047 >
2023-02-22 11:58:57 +00:00
Konstantin Seurer
eb33a1adb0
vulkan: Add vk_acceleration_structure
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21047 >
2023-02-22 11:58:57 +00:00
Samuel Pitoiset
1583b150d6
radv: set VS_OUT_MISC_SIDE_BUS_ENA for clip distances on GFX10.3+
...
On GFX10.3, all auxiliary position exports are optimized, so set it
for clip/cull distances. Both RadeonSI and llpc set it too.
Suggested by Marek.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21439 >
2023-02-22 07:17:33 +00:00
Mike Blumenkrantz
50a65e2e2b
driconf: add zink glthread disable for a game
...
ref #8333
fixes #8328
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21424 >
2023-02-22 03:22:50 +00:00
Mike Blumenkrantz
e375fb0c5c
zink: make ZINK_DESCRIPTOR_MODE=db the default
...
this has been getting beat up a lot lately by radv ci (and me),
so it should be ready to turn on by default for even more testing
in advance of the 23.1 release
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21398 >
2023-02-22 02:58:19 +00:00
Mike Blumenkrantz
685bd95de9
zink: move db input attachment size check to screen init
...
it'd be weird to crash later on after allowing db mode to init
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21398 >
2023-02-22 02:58:19 +00:00
Danylo Piliaiev
e6f5480180
ir3: Add cat7 sleep instruction
...
Has short and long variants, long seem to be ~20 times longer.
The exact difference between it and a bunch of nops is unknown.
The emission of this instruction were not observed in the wild.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14419 >
2023-02-21 19:59:14 +00:00
Danylo Piliaiev
121e4ca87d
ir3: Add cat5/cat7 cache related instructions
...
- tcinv - Likely Texture Cache Invalidate (unverified)
- icinv - Mostly sure that it is Instruction Cache Invalidate
- dccln - Data Cache Clean
- dcinv - Data Cache Invalidate
- dcflu - Data Cache Flush
The emission of these instructions were not observed in the wild.
TODO: find out the difference between .shr and .all modes of
dccln, dcinv, dcflu.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14419 >
2023-02-21 19:59:14 +00:00
Sviatoslav Peleshko
42dba8ebc5
driconf/anv: Apply limit_trig_input_range WA to Rise of the Tomb Raider
...
During its Ambient Occlusion calculations the game ends up calculating
sin/cos of some pretty big values, for which HW produces completely bogus
results (e.g. cos(3929491.25) ~= -0.011, while correct would be ~0.923).
Limit the arguments to the reasonable (-2*Pi; 2*Pi) range with the
limit_trig_input_range WA.
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8292
Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21396 >
2023-02-21 19:23:28 +00:00
Mike Blumenkrantz
b43d32b77d
kopper: fix loop iterating for msaa texture creation
...
the pipe_resource template values need to always be initialized or
else texture creation fails and rendering is broken
fixes #8331
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21450 >
2023-02-21 18:57:52 +00:00
Charmaine Lee
1b9b060f0e
svga: use upload buffer if texture has pending changes
...
When establishing a texture transfer map, if there is any pending changes on the
texture, instead of trying direct map with DONTBLOCK first, just
use the upload buffer path.
Fixes piglit tests gen-teximages, arb_copy_images-formats
Cc: mesa-stable
Reviewed-by: Neha Bhende <bhenden@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21393 >
2023-02-21 09:48:23 -08:00