Karmjit Mahil
849c2e14ab
pvr: Handle pipeline barrier vk_sync.
...
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Frank Binns <frank.binns@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19110 >
2022-10-19 16:07:26 +00:00
Karmjit Mahil
d19835e43c
pvr: Fix overflow before widen warning for rgn headers size calculation.
...
This fixes CID 1515968.
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Frank Binns <frank.binns@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19136 >
2022-10-19 15:24:53 +00:00
Karmjit Mahil
6a35563de0
pvr: Fix possible seg fault on csb copy.
...
When copying the secondary command buffer's deferred control stream
to the main stream we have to first allocate space in the main
stream. In case the allocation failed we were attempting to
memcpy() to a NULL destination causing a NULL dereference.
This fixes CID 1515977.
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Frank Binns <frank.binns@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19136 >
2022-10-19 15:24:53 +00:00
Rob Clark
f9eb0c13a0
freedreno/a6xx: Drop max_scissor tracking
...
We don't actually really use this on a6xx, since SQE can early-exit IB2
when there are no more remaining primitives in the bin.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19100 >
2022-10-19 12:23:40 +00:00
Rob Clark
2ad637f52a
freedreno/a6xx: Update caps
...
We should be doing all the 64b lowering.. I think that should be enough
to get us at least glsl400.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19100 >
2022-10-19 12:23:40 +00:00
Rob Clark
dc70a940d4
freedreno/a6xx: Fix primitives-generated query
...
RBBM_PRIMCTR_7 is pre-clipped, whereas RBBM_PRIMCTR_8 is after clipping.
I believe we want pre-clipping, and this is what tu does.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19100 >
2022-10-19 12:23:40 +00:00
Rob Clark
f26631c6de
freedreno/a6xx: Fix MAX_GEOMETRY_OUTPUT_VERTICES cap
...
Limited by the size of PC_PRIMITIVE_CNTL_5.GS_VERTICES_OUT
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19100 >
2022-10-19 12:23:40 +00:00
Rob Clark
b96e8050d6
freedreno/ir3: Lower all the 64b
...
Just need to enable some existing lowering.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19100 >
2022-10-19 12:23:40 +00:00
Rob Clark
1b38d233fc
freedreno/ir3: Fix clipvertex with GS+tess
...
If we have both GS and tess, GS is the stage we should run lower_clip_vs
on.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19100 >
2022-10-19 12:23:40 +00:00
Rob Clark
0f6f671824
freedreno/a6xx: Remove unused param
...
Minor cleanup, make it more clear that we aren't actually emitting in
IB2.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19100 >
2022-10-19 12:23:40 +00:00
Rob Clark
533b87dff0
mesa/st: ARB_vertex_attrib_64bit depend on glsl>=410
...
It is possible to expose ARB_gpu_shader_fp64 without supporting
ARB_vertex_attrib_64bit. The supported GLSL version should tell
us if 64b vertex attribs are also supported or not.
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/19100 >
2022-10-19 12:23:40 +00:00
Marek Olšák
8dba83bb8d
driconf: add a workaround for Cossacks 3
...
Wine issue: https://bugs.winehq.org/show_bug.cgi?id=44560
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19147 >
2022-10-19 11:52:46 +00:00
Marek Olšák
53e7f3afbd
driconf: add a workaround for a cursor issue with kwin_wayland
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7351
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19147 >
2022-10-19 11:52:46 +00:00
Yonggang Luo
86f203f60e
nouveau: Remove XVMC_VL environment variable usage
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Acked-by: David Heidelberg <david.heidelberg@collabora.com >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19133 >
2022-10-19 11:08:03 +00:00
Yonggang Luo
bdfadec6fd
docs: Remove graw related words
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19138 >
2022-10-19 10:56:00 +00:00
Karol Herbst
2cadc066da
radeonsi: lower hadd and fisnormal
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19151 >
2022-10-19 06:27:20 +00:00
Karol Herbst
d7156e5d9c
nir/lower_cl_images: set binding
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19151 >
2022-10-19 06:27:20 +00:00
Karol Herbst
d037fd539c
radeonsi: fail creating textures from user memory
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19151 >
2022-10-19 06:27:20 +00:00
Mike Blumenkrantz
b9e08f2fe1
zink: clamp shader bindings for compute descriptors
...
this uses massively less memory for some drivers
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19140 >
2022-10-19 06:03:40 +00:00
Mike Blumenkrantz
e220c39510
zink: reorder context init to handle COMPUTE_ONLY
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19140 >
2022-10-19 06:03:40 +00:00
Mike Blumenkrantz
a05a0f5b44
zink: delete some big struct members from zink_context
...
these were only used by descriptor caching, so now they just take up memory
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19140 >
2022-10-19 06:03:40 +00:00
Mike Blumenkrantz
b6f6224810
zink: clamp feedback loop layout to GENERAL if the ext isn't supported
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19140 >
2022-10-19 06:03:40 +00:00
Mike Blumenkrantz
bf3edad94c
zink: enable tc cpu storage on some buffers
...
matching freedreno usage
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19142 >
2022-10-19 05:43:40 +00:00
Marek Olšák
211c2aebd2
cso: make memcmp and hash computation use a literal key size for blend state
...
This results in faster lookups because memcmp and the hash computation
can be unrolled.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19129 >
2022-10-19 04:56:55 +00:00
Marek Olšák
f7b513c9b1
cso: inline more functions because some parameters like key_size are literals
...
One function is moved to the header file, the other two functions are inlined
manually.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19129 >
2022-10-19 04:56:55 +00:00
Marek Olšák
2f0cd4029c
cso: don't destroy CSOs that are saved
...
I think this can't happen in practice, but better safe than sorry.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19129 >
2022-10-19 04:56:55 +00:00
Marek Olšák
94240f561c
cso: fix broken optimization for sampler state lookups
...
Since the key size wasn't a constant expression, all the function inlining
didn't do much. This makes it a constant expression.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Fixes: c4e18cd4dd - mesa/st: add PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE_FREEDRENO
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19129 >
2022-10-19 04:56:55 +00:00
Marek Olšák
224735abaf
cso: constify some parameters to remove typecasts
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19129 >
2022-10-19 04:56:55 +00:00
Marek Olšák
97ec1de8f3
cso: start without u_vbuf by default if it's not always used
...
no functional change, but it's convenient for future work
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19129 >
2022-10-19 04:56:55 +00:00
Marek Olšák
8e024e2870
glthread: don't sync for glIsEnabled(GL_BLEND, GL_LIGHTING, GL_POLYGON_STIPPLE)
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:06 +00:00
Marek Olšák
513ac52e47
glthread remove the unused *last pointer from unmarshal functions
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
6e6245f189
glthread: merge and collapse glBindBuffer calls that unbind and then bind
...
This is a small optimization for viewperf. See the comment in the code.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
9b6e2783eb
gl_marshal.py: C style fixups
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
5db7dc599a
gallium/u_threaded: don't call simplify_draw_info redundantly
...
It's always called for the first and second draw in a row, and if they
can't be merged, the second draw becomes the first draw in the next call,
and simplify_draw_info is called again on that. Thus, it's called twice
on any draw that isn't merged. To prevent that, call it when we add
the draws.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
3cb96b18f6
glthread: rewrite CallList merging and do it in the app thread
...
This looks simpler and hopefully faster, but it may just move the overhead
to the app thread.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
6f8cbbfce2
glthread: demystify Draw function names
...
Since we had the freedom to write our own marshal and unmarshal Draw
functions, we turned it into a mess by doing whatever we want in those
functions. For example, DrawElementsInstancedBaseVertex actually
implemented DrawArraysInstancedBaseInstanceBaseInstance.
Add 4 internal GL functions that pass user buffers through marshal
/unmarshal functions, and clean up the other names to match their
behavior.
The new functions don't need any parameters in their definitions because
we don't call them directly.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
5679ef99b8
glapi: remove EXT and ARB suffixes from Draw functions
...
This swaps the function names with aliased names that don't have those
suffixes.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
58f738bf5e
glthread: add more DrawArrays/Elements variants with fewer fields
...
The idea is to save 8 bytes per call by removing 2 fields that are not
specified by the user such as instance_count=1, basevertex=0, and
baseinstance=0.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
83ce647c15
glthread: use a constant expression instead of cmd_size in custom functions
...
cmd_size is constant in these cases
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
b09a88fb72
gl_marshal.py: simplify print_sync_call and rename to print_call
...
no spaces around = is a python convention for implicit arguments only
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
05dddaeb80
gl_marshal.py: inline functions for readability
...
All functions have only one use. Jumping constantly between functions
in the file is confusing.
No spaces around = is a python convention for implicit arguments only.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
146836f4ba
gl_marshal.py: remove the -O1 hack and manual SET_* inlining
...
The compile times aren't so bad anymore now that the initialization is
split among all 8 files.
Also add one assertion.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
67c7260571
gl_marshal.py: rework how the marshal dispatch table is initialized
...
Instead of setting all function pointers in marshal_generated0.c,
set the function pointers in the file that contains the functions,
and remove all the forward declarations of marshal functions
in marshal_generated.h.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
5e66e26998
gl_marshal.py: move the unmarshal table into a separately generated file
...
It's unrelated to the rest of the script and it's in the way of bigger
changes.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Marek Olšák
5c65a3a98f
gl_marshal.py: remove/simplify parameters
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18199 >
2022-10-19 04:23:05 +00:00
Timothy Arceri
b4b2fd0bb4
glsl: move lower instructions logic inside that pass
...
There is now only a single called of this pass so tidy things up
and move all this logic inside the pass.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19112 >
2022-10-19 03:52:21 +00:00
Timothy Arceri
e5102a406f
glsl: always do {CARRY,BORROW}_TO_ARITH lowering
...
The only caller always sets these so here we just remove the
option to disable it.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19112 >
2022-10-19 03:52:21 +00:00
Timothy Arceri
9f14c5dae2
glsl: drop sub to add neg lowering in GLSL IR
...
NIR opt algebraic does this for us so no need to have it
implemented here also.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19112 >
2022-10-19 03:52:21 +00:00
Timothy Arceri
a31c547206
glsl: move rule inside lower_packing_builtins()
...
We only have a single user of this pass so lets tidy things up and
move all the rules in the pass itself.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19112 >
2022-10-19 03:52:20 +00:00
Mark Janes
141703f906
anv: work around improper buffer usage in hitman3
...
Avoid memory errors by returning an error immediately instead of
attempting to allocate the buffer view with an unsupported format.
Fixes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6998
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17972 >
2022-10-19 03:24:36 +00:00