Mike Blumenkrantz
f75da8f2f0
lavapipe: bump max push constant size
...
this matches vkd3d-proton requirements
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23368 >
2023-06-02 12:32:23 +00:00
Mike Blumenkrantz
cc9e958053
lavapipe: fix DS3 min sample setting
...
if a DS3 pipeline enabling dynamic samples is not bound when samples
are set dynamically, then such a pipeline is later bound, min samples
would have been incorrectly set to 1
instead, flag the update for later and do it just before draw
cc: mesa-stable
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23368 >
2023-06-02 12:32:23 +00:00
Qiang Yu
f6c5133074
radeonsi: enable aco for mono standalone vs
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:51:23 +08:00
Qiang Yu
2d1859b01e
radeonsi: always use scoped barrier
...
aco has removed non-scoped barrier support.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:51:16 +08:00
Qiang Yu
90b56e99f4
radeonsi: use nir_umul_high for fast udiv
...
nir has dedicated alu op for it. Also for removing int64
multiply which aco does not support.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:51:13 +08:00
Qiang Yu
95ff215be2
radeonsi: calculate needed lds size when upload raw binary for vs
...
ELF do the same when upload binary. We can't do this when
compile, because it's know when draw time in radeonsi.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:51:09 +08:00
Qiang Yu
142485ff64
radeonsi: fill aco shader info for mono standalone vs
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:51:06 +08:00
Qiang Yu
5351209632
nir,ac/llvm,radeonsi: replace nir_buffer_atomic_add_amd with ssbo atomic
...
Now that radeonsi support pass desc to ssbo atomic ops,
we can use ssbo atomic instead. aco does not implement
nir_buffer_atomic_add either.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:51:02 +08:00
Qiang Yu
d39fd98a47
ac/llvm,radeonsi: lower nir_load_ring_esgs_amd in abi
...
It's not implemented by aco. So move the code from llvm
to nir.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:50:58 +08:00
Qiang Yu
b21098779d
ac/llvm,radeonsi: lower nir_load_ordered_id_amd in abi
...
aco does not implement it.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:50:55 +08:00
Qiang Yu
19d9bca39e
ac/llvm,radeonsi: lower nir_load_packed_passthrough_primitive_amd in abi
...
aco does not implement it.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:50:52 +08:00
Qiang Yu
bbcb02fac4
ac/llvm,radeonsi: lower nir_load_initial_edgeflags_amd in abi
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:50:49 +08:00
Qiang Yu
dc07743106
ac/llvm,radeonsi: lower load_workgroup_num_input_(vertices|primitives) in abi
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:50:46 +08:00
Qiang Yu
c8680f1f90
ac/llvm,radeonsi: lower nir_load_merged_wave_info_amd in abi
...
aco does not implement it.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:50:42 +08:00
Qiang Yu
327e35f667
ac/llvm,radeonsi: lower nir_load_gs_vertex_offset_amd in abi
...
aco does not implement this.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:50:38 +08:00
Qiang Yu
a27058e8ea
radeonsi: add scratch offset vs args explicitly for aco
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:50:34 +08:00
Qiang Yu
7445101fdd
radeonsi: resolve lds ngg aco symbols
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23096 >
2023-06-02 17:50:22 +08:00
Emma Anholt
200b55496a
ci/crocus: Add a missing xfail.
...
Probably more fallout from debian 12 uprev.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23379 >
2023-06-02 02:29:21 +00:00
Emma Anholt
7609b9f036
crocus: Fix regression from !20153
...
The MR fixed iris in 14dec0c147 , but didn't
do the same fix for crocus.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23379 >
2023-06-02 02:29:21 +00:00
Emma Anholt
b26a9efc5a
nir,mesa: Add helpers for creating uniform state variables.
...
It's one of the weirder parts of our shader interface's interactions with
the GL API, so let's try to make it a little cleaner.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23111 >
2023-06-01 23:57:32 +00:00
Jesse Natalie
5a914dcd6a
d3d12: Support PIPE_CAP_VS_LAYER_VIEWPORT
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23377 >
2023-06-01 23:39:41 +00:00
Emma Anholt
cb965b207e
zink: Use PIPE_CAP_FS_POINT_IS_SYSVAL.
...
This better matches up to how spirv treats the value.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22950 >
2023-06-01 22:27:08 +00:00
Emma Anholt
0e943bc3f2
glsl: Allow invariant flags on sysvals, such as gl_PointCoord.
...
When you set PIPE_CAP_FS_POINT_IS_SYSVAL, we'd fall out of
is_allowed_invariant(), despite it being allowed on special builtins.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22950 >
2023-06-01 22:27:08 +00:00
Dave Airlie
c58518226b
gallium/nir/tgsi: add various support for task/mesh bits
...
these translators are used by llvmpipe so need to be updated
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:57 +00:00
Dave Airlie
8fd1aad8f8
gallium/cso: add task/mesh shaders to the cso cache
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:57 +00:00
Dave Airlie
b02fba337f
d3d12: don't report mesh/task limits
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:57 +00:00
Dave Airlie
ece1cb8c6b
svga: don't report mesh/task shader limits
...
Reviewed-by: Neha Bhende <bhenden@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:57 +00:00
Dave Airlie
31db515e03
radeonsi: don't report shader params for task/mesh
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:56 +00:00
Dave Airlie
fd1ff352dd
crocus: don't report mesh/task limits
...
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:56 +00:00
Dave Airlie
7b547ccb9a
iris: don't return shader params for task/mesh.
...
These should be reported as 0 for cso
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:56 +00:00
Dave Airlie
2b3514966d
gallium: add task/mesh shader entrypoints in context
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:56 +00:00
Dave Airlie
2e8991733a
freedreno: don't report task/mesh.
...
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:56 +00:00
Dave Airlie
564094b3ce
gallium: add a new PIPE_SHADER_MESH_TYPES
...
This adds a new limit, changing PIPE_SHADER_TYPES seems frought
with danger and very tricky. Currently only lava/llvmpipe plan to
offer task/mesh in GL land, so let's limit the fallout for now.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:56 +00:00
Dave Airlie
96b38883df
gallium: expand pipe_grid_info to handle task/mesh.
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:56 +00:00
Dave Airlie
0602108c38
gallium: add task/mesh shader query types to stats interface.
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23291 >
2023-06-01 21:50:56 +00:00
Karol Herbst
97c48edac0
rusticl/device: limit MAX_PARAMETER_SIZE to 32k
...
There is no good reason of having it too big and radeonsi returns an
absurd high value through PIPE_SHADER_CAP_MAX_CONST_BUFFER0_SIZE.
This speeds up the CTS testing this device limit.
Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23378 >
2023-06-01 21:35:00 +00:00
Rob Clark
c5bac3164a
freedreno/a6xx: Enable gl46
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:59 +00:00
Rob Clark
c32c5a7749
freedreno/a6xx: GL_ARB_pipeline_statistics_query
...
Handle the other pipeline stats counters in order to implement
GL_ARB_pipeline_statistics_query. Note that this does away with
collecting *all* the counters if DEBUG_COUNTERS is enabled, other-
wise it was getting over-complicated.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:59 +00:00
Rob Clark
8192498530
freedreno: Handle compute queries
...
Compute stage can have queries too. We need to handle that.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:59 +00:00
Rob Clark
d52e9097e1
freedreno/a6xx: Handle nested pipeline stats queries
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:59 +00:00
Rob Clark
a475b7f66d
freedreno/a6xx: Split primitives and pipeline-stats queries
...
They are really two completely different things.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:59 +00:00
Rob Clark
5fdd3a8d55
freedreno/a6xx: GL_ARB_transform_feedback_overflow_query
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:59 +00:00
Rob Clark
f8036c3b54
freedreno/a6xx: Remove primitives_relocw()
...
These days we don't track read vs write relocs, so it is the same thing
as primitives_reloc()
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:59 +00:00
Rob Clark
98c4b86694
freedreno/a6xx: Fix xfb stream configuration
...
Also, only emit PC_SO_STREAM_CNTL for tess shaders, to align with how
turnip does it.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:58 +00:00
Rob Clark
973e1d4555
freedreno/a6xx: Add missing cap
...
Fixes wrong value reported for GL_MAX_VERTEX_STREAMS.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:58 +00:00
Rob Clark
ed7a1a5e5a
freedreno/a6xx: Stop using fd_wfi()
...
This was originally intended for earlier gens where certain draw-time
state needed a WFI (because it wasn't banked, etc). This isn't the case
on a6xx. So just directly emit WFIs where they are needed.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:58 +00:00
Rob Clark
d17610898d
freedreno/a6xx: Clean up open coded flushes
...
Migrate more code to fd6_emit_flushes().
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23301 >
2023-06-01 20:37:58 +00:00
Marek Olšák
7d066330e0
ac/surface: relax custom pitch requirements to any multiple of 256B on gfx10.3+
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23015 >
2023-06-01 18:46:20 +00:00
Marek Olšák
4ffa45689f
radeonsi: implement setting a custom pitch to any multiple of 256B on gfx10.3+
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23015 >
2023-06-01 18:46:20 +00:00
Eric Engestrom
b06be7c002
ci/zink+anv: fix flakes definition
...
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23364 >
2023-06-01 13:01:31 +00:00