Chia-I Wu
4f1c43d38e
ac/surface: print tile_swizzle as well
...
swizzle modes that are *_X or *_T depend on tile_swizzle.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23143 >
2023-05-22 20:14:22 +00:00
Chia-I Wu
4f5edcd0ee
amd/drm-shim: add raven2
...
It differs from raven in interesting ways (e.g., GB_ADDR_CONFIG).
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23143 >
2023-05-22 20:14:22 +00:00
Yiwei Zhang
4c8be22c66
radv: fix radv_emit_userdata_vertex for vertex offset -1
...
-1 is a legit vertex offset upon vkCmdDrawIndexed and other cmds. This
change fixes to track last_vertex_offset with an additional valid bit.
Cc: mesa-stable
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23157 >
2023-05-22 08:31:28 +00:00
Samuel Pitoiset
7cb4494039
radv: enable smoothLines
...
For Zink.
This marks one piglit test as expected failure because polygon
smoothing can't be implemented properly in Vulkan.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21587 >
2023-05-22 07:58:35 +00:00
Samuel Pitoiset
85cbdba355
radv: add support for smooth lines
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21587 >
2023-05-22 07:58:35 +00:00
Samuel Pitoiset
8c5eaf2166
radv: lower nir_intrinsic_load_poly_line_smooth_enabled_amd
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21587 >
2023-05-22 07:58:35 +00:00
Samuel Pitoiset
9b2e59abc5
radv: declare a new user SGPR for the dynamic line rasterization mode
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21587 >
2023-05-22 07:58:35 +00:00
Samuel Pitoiset
fcfdb1bb6c
radv: determine if smooth lines can be used in the pipeline key
...
Really complicated to reduce the scope because everything can be
dynamic and with GPL you can't even know if the pipeline draws lines
when compiling the fragment shader.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21587 >
2023-05-22 07:58:35 +00:00
Samuel Pitoiset
9612603aac
radv: track if the smoothLines features is enabled in the device
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21587 >
2023-05-22 07:58:35 +00:00
Samuel Pitoiset
15bb9c4b96
radv: remove useless check about USAGE_STORAGE for TC-compat HTILE
...
This should never happen.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23122 >
2023-05-22 07:37:15 +00:00
Samuel Pitoiset
dda7400c0b
radv: disable IMAGE_USAGE_STORAGE with depth-only and stencil-only formats
...
This shouldn't have been enabled at all. Depth-stencil formats were
accidentally disabled but not depth-only or stencil-only formats.
This doesn't seem allowed by DX12 and both AMD/NVIDIA don't enable it.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23122 >
2023-05-22 07:37:15 +00:00
Samuel Pitoiset
3adc9b6722
radv: bump the global VRS image size to maximum supported FB dimensions
...
Super sampling on a 4K screen could hit this. 16k seems pretty big
but this image is only created on RDNA2 and on-demand if VRS attachments
are used without depth-stencil attachments, which should be rare
enough to care.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23105 >
2023-05-22 06:53:03 +00:00
David Heidelberg
4a49892ba3
ci/radv: add another raven flake dEQP-VK.draw.dynamic_rendering.primary_cmd_buff.linear_interpolation
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23152 >
2023-05-21 00:51:03 +02:00
Timur Kristóf
b78cf192f0
radv: Clear query dirty flags when flushing them.
...
This is just to make their code consistent with other similar
functions.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20659 >
2023-05-20 19:33:20 +00:00
Timur Kristóf
59c2711800
radv: Move empty dynamic states check to caller.
...
Improves the CPU overhead of radv_emit_all_graphics_states.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20659 >
2023-05-20 19:33:20 +00:00
Timur Kristóf
0d14f7a304
radv: Move indirect check from index buffer emission to caller.
...
This improves the CPU overhead of radv_emit_all_graphics_states.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20659 >
2023-05-20 19:33:20 +00:00
Timur Kristóf
8436fe5af4
radv: Slight refactor to late_scissor_emission.
...
There is no need to set context_roll_without_scissor_emitted
when pipeline, rbplus state, or binning state changes,
because radv_need_late_scissor_emission already checks
their dirty flags.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20659 >
2023-05-20 19:33:20 +00:00
Timur Kristóf
2249ab1daa
radv: Set last_index_type in radv_before_draw.
...
This function is always inlined so checking info->indexed can be
constant folded by the compiler. So it is better to set this
in before_draw.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20659 >
2023-05-20 19:33:20 +00:00
Timur Kristóf
e5c3479fae
radv: Move ignore forced VRS code to more optimal place.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20659 >
2023-05-20 19:33:20 +00:00
Timur Kristóf
4255bd63a4
radv: Compute tess info when emitting patch control points.
...
Some tess info needs to be calculated in the command buffer when
dynamic patch control points are enabled.
Move this calculation from radv_emit_all_graphics states to where
it actually matters.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20659 >
2023-05-20 19:33:20 +00:00
Timur Kristóf
94465f3073
radv: Emit primitive reset index with primitive restart enable.
...
The VGT_MULTI_PRIM_IB_RESET_INDX register has no effect when
primitive restart is disabled, so we can move this out of the
hot path.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20659 >
2023-05-20 19:33:20 +00:00
Erik Faye-Lund
185001a86f
meson: remove needless c++17-overrides
...
C++17 is the project-wide default since f9057cea51 ("fix(FTBFS):
meson: raise C++ standard to C++17"), so let's drop these local
overrides.
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23048 >
2023-05-19 12:45:31 +00:00
Samuel Pitoiset
b83ce03a7d
radv: reserve cmdbuf space in radv_flush_gfx2ace_semaphore()
...
Fixes an assertion with test_amplification_shader in vkd3d-proton.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23057 >
2023-05-19 07:52:25 +00:00
Samuel Pitoiset
a1b88c0664
ci: rework vkd3d-proton runner and fix detecting failures
...
The script returned 0 (aka succcess) for assertions or segmentation
faults. Found this after introducing a regression that caused a
segfault in vkd3d with vk-cts-image but not with Mesa CI.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23057 >
2023-05-19 07:52:25 +00:00
Samuel Pitoiset
bec100f9b5
ci,radv: use drm-shim instead of the null winsys for radv-fossils
...
Only RADV uses fossilize-runner.sh, so hardcoding LD_PRELOAD is fine.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23072 >
2023-05-19 06:59:31 +00:00
Samuel Pitoiset
9f9feda85f
amd/drm-shim: update README about which file to modify
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23072 >
2023-05-19 06:59:30 +00:00
Samuel Pitoiset
400434e5ea
amd/drm-shim: add bonaire
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23072 >
2023-05-19 06:59:30 +00:00
Samuel Pitoiset
9234558a60
amd/drm-shim: add pitcairn
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23072 >
2023-05-19 06:59:30 +00:00
Samuel Pitoiset
714ae97669
amd/drm-shim: add navi21
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23072 >
2023-05-19 06:59:30 +00:00
Marek Olšák
1a24f43d97
amd/registers: update pitch definitions in descriptors
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23037 >
2023-05-19 02:58:49 +00:00
Marek Olšák
dbc1febb33
ac/surface: add ac_surf_config::is_array
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23037 >
2023-05-19 02:58:48 +00:00
Marek Olšák
78088ebaea
ac/surface: fix overridden linear pitch for CPU access
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23037 >
2023-05-19 02:58:48 +00:00
Marek Olšák
3f5723a23f
ac/surface: validate overridden pitch for all chips
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23037 >
2023-05-19 02:58:48 +00:00
Marek Olšák
f449ff426f
ac/surface: define LINEAR_PITCH_ALIGNMENT
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23037 >
2023-05-19 02:58:48 +00:00
Marek Olšák
4705148c5e
ac/surface: clean up and move the PIPE_CONFIG helper to ac_surface.c
...
This will be used by following commits.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23037 >
2023-05-19 02:58:48 +00:00
Marek Olšák
4d9942d891
radv: fix SDMA image address calculation for large images by using uint64_t
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23037 >
2023-05-19 02:58:48 +00:00
Marek Olšák
c627bdc9b6
radv: fix sparse image address calculation for large images by using uint64_t
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23037 >
2023-05-19 02:58:48 +00:00
Marek Olšák
cbc6bf8218
ac/surface: fix address calculation for large images by using uint64_t
...
also rename gfx9_surf_level -> gfx9_surf_meta_level
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23037 >
2023-05-19 02:58:48 +00:00
Georg Lehmann
a7cef01db1
aco/optimizer: allow DPP to use VOP3 on GFX11
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23059 >
2023-05-18 22:57:24 +00:00
Georg Lehmann
476149f90d
aco: use can_use_input_modifiers helper
...
Foz-DB GFX1100:
Totals from 80 (0.06% of 132657) affected shaders:
CodeSize: 504500 -> 503660 (-0.17%)
Instrs: 95033 -> 94824 (-0.22%)
Latency: 629695 -> 629235 (-0.07%)
InvThroughput: 97105 -> 97008 (-0.10%)
VClause: 1779 -> 1777 (-0.11%)
Copies: 3233 -> 3236 (+0.09%); split: -0.03%, +0.12%
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23059 >
2023-05-18 22:57:24 +00:00
Georg Lehmann
644c5e95a0
aco: use get_operand_size for dpp opt
...
This matters now that v_fma_mixlo_f16/v_fma_mixhi_f16 can use dpp.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23059 >
2023-05-18 22:57:24 +00:00
Georg Lehmann
0ffc9bccfa
aco: add helper function for can_use_input_modifiers
...
Some instructions have restrictions that can't be expressed with the bitfield.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23059 >
2023-05-18 22:57:24 +00:00
Georg Lehmann
b4ff7e2567
aco/ra: use fmac with DPP/opsel on GFX11
...
Foz-DB GFX1100:
Totals from 2 (0.00% of 132657) affected shaders:
CodeSize: 8764 -> 8732 (-0.37%)
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23059 >
2023-05-18 22:57:24 +00:00
Georg Lehmann
5b2b782940
aco/ra: use smaller operand stride for VOP3P with DPP
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23059 >
2023-05-18 22:57:24 +00:00
Georg Lehmann
a3d6335742
aco: add withoutVOP3 helper
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23059 >
2023-05-18 22:57:24 +00:00
Georg Lehmann
12b28d64ab
aco/gfx11: use fmamk/fmaak with opsel
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23059 >
2023-05-18 22:57:23 +00:00
Georg Lehmann
6a53af3fc8
aco: introduce helper to swap valu operands with modifiers
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23059 >
2023-05-18 22:57:23 +00:00
David Heidelberg
ae9c67d773
ci/amd: add radeonsi-raven-va-full job to cover all VA-API tests
...
Acked-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22888 >
2023-05-18 18:32:06 +00:00
David Heidelberg
0136c059db
ci/amd: update VA-API expectations
...
Acked-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22888 >
2023-05-18 18:32:06 +00:00
David Heidelberg
c518178458
ci/amd: re-enable VA-API testing
...
Acked-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22888 >
2023-05-18 18:32:06 +00:00