Eric Anholt
4a42a50585
freedreno/ir3: Add support for disasm of cat2 float32 immediates.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4736 >
2020-04-27 19:35:00 +00:00
Eric Anholt
292231596b
freedreno/ir3: Refactor out print_reg_src().
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4736 >
2020-04-27 19:35:00 +00:00
Eric Anholt
3bcf819b43
freedreno/ir3: Convert remaining disasm src prints to reginfo.
...
More lines of code, but they're much more intelligible.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4736 >
2020-04-27 19:35:00 +00:00
Eric Anholt
1462b00391
freedreno/ir3: Add a unit test for our disassembler.
...
Makes sure that we can maintain consistent output from our disassembly as
we refactor. I've only included stuff that matches qcom's disasm so far.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4736 >
2020-04-27 19:35:00 +00:00
Eric Anholt
90984ba853
freedreno/ir3: Print a space after nop counts, like qcom's disasm.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4736 >
2020-04-27 19:35:00 +00:00
Eric Anholt
916629f9d7
freedreno/ir3: Fix the disasm of half-float STG dests.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4736 >
2020-04-27 19:35:00 +00:00
Eric Anholt
6c01152c92
ci: Enable GLES 3.1 testing on db820c (a530).
...
The driver exposes GLES3.1, so let's make sure we're not regressing its
featureset.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4685 >
2020-04-27 19:06:57 +00:00
Eric Anholt
b34ee185f4
freedreno: Fix derivatives without texturing on a3xx-a5xx.
...
The shader variant tells us if we should set the PIXLODENABLE flag.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4685 >
2020-04-27 19:06:57 +00:00
Eric Anholt
fa49a5032f
ci: Enable GLES3 testing on db410c/db820c (freedreno a306 and a530).
...
We haven't had it enabled due tointermittent failures. Those failures
are, as far as I can tell, due to GPU faults from buffer overflows where a
failing test in a thread stomps an otherwise passing thread's buffers. By
running deqp single-threaded, we can get more consistent failures, at the
cost of needing to do a tiny subset of the tests to keep runtime down.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4685 >
2020-04-27 19:06:57 +00:00
Eric Anholt
c259b3ea12
ci: Drop redundant freedreno stage specification.
...
The source rules give us the stage.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4685 >
2020-04-27 19:06:57 +00:00
Jonathan Marek
065068c66a
freedreno/ir3: run nir_lower_pack
...
This lowers pack_32_2x16/unpack_32_2x16 into the scalar versions of those
instructions.
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4738 >
2020-04-27 18:40:03 +00:00
Jonathan Marek
42093bb694
nir: add pack_32_2x16_split/unpack_32_2x16_split lowering
...
The new option replaces the two other _split lowering options, since
there's no need for separate options.
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Rob Clark <robdclark@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4738 >
2020-04-27 18:40:03 +00:00
Bas Nieuwenhuizen
cbeda7f78e
radv: Add WSI buffers to BO list only if they can be used.
...
Also reverse the BO list removal loop. This way typical WSI usage
should find the entry in O(active swapchains) iterations, which
should not be a performance issues. Tested with Doom(2106) which
found the entry in 1 iteration every time.
Acked-by: Jason Ekstrand <jason@jlekstrand.net >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4306 >
2020-04-27 18:01:24 +00:00
Bas Nieuwenhuizen
9a61f2a8a9
vulkan/wsi: Add callback to set ownership of buffer.
...
For radv BO list pruning.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4306 >
2020-04-27 18:01:24 +00:00
Samuel Pitoiset
42b1696ef6
ac,radeonsi: fix compilations issues with LLVM 11
...
Latest LLVM replaced LLVMVectorTypeKind.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2826
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4755 >
2020-04-27 17:13:36 +00:00
Jan Zielinski
52aa730d07
gallium/gallivm: remove unused header include for newer LLVM
...
In the top of the trunk LLVM (11) llvm/IR/CallSite.h header
has been removed. The file compiles without this include also
for LLVM 8, but I'm not sure about 9, 10, and older versions
so I disable it only for the latest LLVM
Reviewed-by: Roland Scheidegger <sroland@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4748 >
2020-04-27 16:53:44 +00:00
Jan Zielinski
e2a7436dd1
gallium/gallivm: fix compilation issues with llvm 11
...
Top of the trunk LLVM removes old vector type
and introduces two new ones - one for fixed-width
and one for scalable vectors. This commit fixes
compilation issues by switching from LLVMVectorTypeKind
to LLVMFixedVectorTypeKind for new LLVM.
Reviewed-by: Jose Fonseca <jfonseca@vmware.com >
Reviewed-by: Roland Scheidegger <sroland@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4748 >
2020-04-27 16:53:44 +00:00
Alyssa Rosenzweig
6943eda5c9
ir3: Use shared mediump output lowering
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4716 >
2020-04-27 16:32:24 +00:00
Alyssa Rosenzweig
42c9bbaeed
nir: Move nir_lower_mediump_outputs from ir3
...
(Original code from ir3)
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4716 >
2020-04-27 16:32:24 +00:00
Ian Romanick
ba8f7f3fa2
nir/algebraic: Detect some kinds of malformed variable names
...
I spent over an hour trying to debug a problem if a condition on a
variable not being applied. The problem turned out to be
"a(is_not_negative" instead of "a(is_not_negative)". This commit would
have detected that problem and failed to build.
v2: Just add $ to the end of the existing regex, and it will fail to
match a malformed string. Suggested by Jason.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com > [v1]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4720 >
2020-04-27 09:08:34 -07:00
Alyssa Rosenzweig
fc4eb0714c
pan/bi: Implement 16-bit COMBINE lowering
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
280b65126e
pan/bi: Fix RA wrt 16-bit swizzles
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
64c33a459f
pan/bit: Add SELECT tests
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
23ffaa16c7
pan/bit: Interpret BI_SELECT
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
a5bfe59196
pan/bi: Force BI_SELECT arguments scalar
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
c12081dca1
pan/bi: Pack ADD SEL16
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
d31e4879f0
pan/bi: Pack FMA SEL8
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
7b31f04bac
pan/bi: Pack FMA SEL16
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
ee561f0e6b
pan/bi: Rename BI_SWIZZLE to BI_SELECT
...
The select version is more general.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
b2c6cf2b6d
pan/bi: Eliminate writemasks in the IR
...
Since the hardware doesn't support them, they're a burden to deal with,
so let's ensure we never get to a place where we would need to at all.
Disables COMBINE lowering for now.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
1622478fbd
pan/bi: Fix ADD.v4i8 opcode
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
de12311431
pan/bi: Add missing BI_VECTOR
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:26 +00:00
Alyssa Rosenzweig
667190d38a
pan/bi: Assign blend descriptor for BLEND op
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:25 +00:00
Alyssa Rosenzweig
1a8f1a324a
pan/bi: Passthrough blend types
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:25 +00:00
Alyssa Rosenzweig
5f953b8f50
pan/bi: Passthrough type for ATEST
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:25 +00:00
Alyssa Rosenzweig
462af10bb7
pan/bi: Pack fp16 ATEST
...
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4766 >
2020-04-27 14:52:25 +00:00
Michel Dänzer
c50bbfa0ab
mesa: Skip 3-byte array formats in _mesa_array_format_flip_channels
...
Byte swapping makes no sense for 3-byte formats: Swapping the order of 2
or 4 bytes at a time would inevitably result in bytes getting mixed up
between neighbouring pixels.
Fixes crash with a debugging build on a big endian machine due hitting
the unreachable() at the end of the function.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2665
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4735 >
2020-04-27 14:14:00 +00:00
Marek Olšák
ad5da3e63e
mesa: replace GLenum target with gl_shader_stage in NewProgram
...
So that the GLSL compiler doesn't have to use the GLenum conversion
functions.
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4756 >
2020-04-27 12:49:53 +00:00
Bas Nieuwenhuizen
531728d6cb
drm-uapi,radv,radeonsi: Add amdgpu_drm.h header.
...
Use it instead of the libdrm provided amdgpu_drm.h header. I used
the kernel revision from the README to get the header so the
header versions should be consistent.
Tested by removing /usr/include/libdrm/amdgpu_drm.h from my dev-machine.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4749 >
2020-04-27 12:27:02 +00:00
Marek Olšák
03ba57c6c5
mesa: extend _mesa_bind_vertex_buffer to take ownership of the buffer reference
...
This reduces overhead of _mesa_reference_buffer_object_ from 6% to 4%
with glthread when profiling the game "torcs" with non-VBO data uploaded
by glthread.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
e9afe045cf
mesa: add offset_is_int32 param into _mesa_bind_vertex_buffer for glthread
...
glthread will pass signed integer offsets, so don't reset negative offsets
to 0 there.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
b8223244c3
mesa: add Const.BufferCreateMapUnsynchronizedThreadSafe & MESA_MAP_THREAD_SAFE
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
19eb89b0f3
gallium: add PIPE_CAP_MAP_UNSYNCHRONIZED_THREAD_SAFE for glthread
...
and add radeonsi support.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
6215465842
glthread: sort variables in marshal structures to pack them optimally
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
6f8a387b37
glthread: use GLenum16 in batch buffers to save space
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
b6b1ab8d54
glthread: reduce dereferences of the next batch
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
fc4b78f4cc
glthread: use 32-bit align instead of 64-bit ALIGN
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
41671ec544
mesa: remove exec="dynamic" from Draw functions that are not really dynamic
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
00b5791541
mesa: reset primitive restart state in glClientAttribDefaultEXT
...
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00
Marek Olšák
ee0263e03f
mesa: replace _NEW_EVAL with vbo_exec_update_eval_maps
...
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4758 >
2020-04-27 11:56:06 +00:00