Commit Graph

123892 Commits

Author SHA1 Message Date
Gert Wollny
9f942a8e7c r600/sfn: Fix splitting constants that come from different kcache banks.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:14 +00:00
Gert Wollny
723ae8177e r600/sfn: Fix clip vertex output as possible stream variable
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
7ae4b7938e r600/sfn: SSBO: Fix query of dest components
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
7c247f505c r600/sfn: use the per shader atomic base
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
cd2d7966ac r600/sfn: Add support for texture_samples
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
358b0a57bf r600/sfn: support indirect sampler buffer reads.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
2f3ce9b1d0 r600/sfn: assert when alu dest is missing
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
fd99a7737f r600/sfn: remove pointless check
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
ff92345a19 r600/sfn: Don't reject VARYING_SLOT_PCNT
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
15d6d35420 r600/sfn: Add FS output sample_mask
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
91a618eae9 r600/sfn: Handle loading sample_pos
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
70b84920be r600/sfn: Take FOGC, and backcolors into account im GS outputs
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
d777c04095 r600/sfn: Add support for viewport index output
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
607d7fb587 r600/sfn: Make 3vec loads skip possible moves
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
ac2c3fb010 r600/sfn: Fix handling of output register index
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
9db5536643 r600/sfn: Make allocate_reserved_registers forward to a virtual function
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
041df79496 r600/sfn: Fix RAT instruction assembly emission
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
8977946aa2 r600/sfn: Fix GDS assembly emission
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
b6eb19dd63 r600/sfn: Fix RING instruction assembly emission
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
e475eae0fe r600/sfn: Fix memring print output
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
13bb0a9701 r600/sfn: skip copying LOD if the target register is is the same
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
19673ce47d r600/sfn: re-use an allocated register in lookup
For texture coordinates we always allocate all four components so that
we can use these for LOD and, compare etc.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
dfb0ba8272 r600/sfn: Skip move instructions if they are only ssa and without modifiers
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
aed9618e20 r600/sfn: rework getting a vector and uniforms from the value pool
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
afd47ea83b r600/sfn: Handle CF index loading from non-X channel
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
54c3d4bd24 r600: Add support for loading index register from other than chan X
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
3baad03616 r600: Lower lerp after tgsi_to_nir
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
b689de3444 r600: Lower int64 ops from TGSI-to-NIR shaders too
r600 uses a TGSI shaders with 64 bit ints for a query compute shader.

v2: Use screen version of tgsi_to_nir and fix compile error

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
32305c0959 r600/sfn: Fix printing vertex fetch instruction flags
Fixes: f718ac6268
    r600/sfn: Add a basic nir shader backend

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Gert Wollny
65d8c692bd r600/sfn: Unify semantic name and index query and use TEXCOORD semantic
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5085>
2020-05-19 07:52:13 +00:00
Michel Dänzer
667126cc82 Revert "gallium/gallivm: fix compilation issues with llvm 11"
This reverts commit e2a7436dd1.

The corresponding LLVM changes were reverted.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2983

Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5087>
2020-05-19 07:19:35 +00:00
Michel Dänzer
2a6811f0f9 Revert "ac,radeonsi: fix compilations issues with LLVM 11"
This reverts commit 42b1696ef6.

The corresponding LLVM changes were reverted.

Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5087>
2020-05-19 07:19:35 +00:00
Caio Marcelo de Oliveira Filho
c4544f4716 nir: Consider atomic counter intrinsics when setting writes_memory
In i965 these get lowered after gather info, so let's consider them
too.  Fixes

    piglit.spec.arb_framebuffer_no_attachments.arb_framebuffer_no_attachments-atomic

in Gen9, HSW and IVB.

Fixes: 6a6c36e977 ("intel/fs: Use writes_memory from shader_info")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5093>
2020-05-18 19:06:53 -07:00
Dave Airlie
ee90339cfb llvmpipe: add gl_SampleMaskIn support.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
310823eccd gallivm/nir: add sample_mask_in support
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
0dac24790e llvmpipe/fs: hook up the interpolation APIs.
This hooks the nir code to the interp code.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
3f71a5e25f llvmpipe: add interp instruction support
This allows interpolating an attribute at offset/sample/centroid
locations.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
06c10fa3a5 llvmpipe/interp: refactor out centroid calculations
These will be reused in the interp instruction code.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
c1f5a23a4d llvmpipe/interp: refactor out use of pixel center offset
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
ae5f6ddc05 gallivm/nir: add an interpolation interface.
This supports interpolating at a certain location, offsets,
sample or centroid.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
53fcb30c12 llvmpipe: remove non-simple interpolation paths.
These are broken since adding multisample, and unused for
quite a while.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
6b7e03175d llvmpipe/interp: fix interpolating frag pos for sample shading
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
c9690b7471 llvmpipe: use per-sample position not sample id for interp
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
5098764483 llvmpipe: don't use sample mask with 0 samples
piglit:
spec/arb_sample_shading/builtin-gl-sample-mask 0
spec/arb_sample_shading/builtin-gl-sample-mask-simple 0
CTS:
KHR-GL45.sample_variables.mask.rgba8.samples_0.mask_zero

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5050>
2020-05-19 10:26:46 +10:00
Dave Airlie
b11aa12253 r600/sfn: add emit if start cayman support
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5084>
2020-05-18 21:56:29 +00:00
Dave Airlie
4746796b82 r600/sfn: add callstack non-evergreen support
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5084>
2020-05-18 21:56:29 +00:00
Dave Airlie
19273fb227 r600/sfn: cayman fix int trans op2
Fix integer multiplies

Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5084>
2020-05-18 21:56:29 +00:00
Dave Airlie
38560e0d1d r600/sfn: fix cayman float instruction emission.
This is enough to get glxgears working.

Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5084>
2020-05-18 21:56:29 +00:00
Dave Airlie
ff9c95421a r600/sfn: plumb the chip class into the instruction emission
In order to emit the correct instruction sequences for cayman
we need this info.

Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5084>
2020-05-18 21:56:29 +00:00
Jason Ekstrand
164aed6c81 anv:gpu_memcpy: Emit 3DSTATE_VF_INDEXING on Gen8+
If this gets run right after something which uses
VK_VERTEX_INPUT_RATE_INSTANCE on its first vertex binding, we could end
up in serious trouble.

Fixes: 3d9747780b "anv: Add a helper for doing buffer copies with..."

Reviewed-by: Rafael Antognolli <rafael.antognolli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5090>
2020-05-18 21:42:05 +00:00