mesa.git
18 months agoac/llvm: load 1 byte at a time if unaligned on gfx10
Pierre-Eric Pelloux-Prayer [Tue, 16 Jun 2020 12:46:08 +0000 (14:46 +0200)]
ac/llvm: load 1 byte at a time if unaligned on gfx10

If buffer or stride is unaligned we use the same trick as on gfx6:
load 1 byte at a time and recompose the output if needed.
This change fixes lots of deqp/glcts tests:
  - dEQP-GLES2.functional.draw.random.1, 10, ...
  - dEQP-GLES2.functional.vertex_arrays.multiple_attributes.stride.3_float2_0_float2_0_float2_17, ...
  - dEQP-GLES2.functional.vertex_arrays.single_attribute.first.byte_first24_offset1_stride2_quads256, ...
  - dEQP-GLES2.functional.vertex_arrays.single_attribute.strides.buffer_0_17_byte2_vec4_dynamic_draw_quads_1, ...
  - dEQP-GLES31.functional.draw_indirect.random.14, ...

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5502>

18 months agor600/sfn: Handle memory_barrier
Gert Wollny [Sat, 9 May 2020 09:15:04 +0000 (11:15 +0200)]
r600/sfn: Handle memory_barrier

I'm not sure whether this should actually be a barrier accross all
shader processing units, the TGSI code path seems to handle this
only by using GROUP_BARRIER, so let's do the same here.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5206>

18 months agor600/sfn: Take SSBO buffer ID offset into account
Gert Wollny [Sun, 10 May 2020 11:38:17 +0000 (13:38 +0200)]
r600/sfn: Take SSBO buffer ID offset into account

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5206>

18 months agor600/sfn: Add support for reading cube image array dim.
Gert Wollny [Sat, 9 May 2020 13:09:36 +0000 (15:09 +0200)]
r600/sfn: Add support for reading cube image array dim.

The cube array size can't be queried directly, the number of array
elements must be passed via a constant buffer.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5206>

18 months agor600/sfn: Add support for image_size
Gert Wollny [Sat, 9 May 2020 09:30:19 +0000 (11:30 +0200)]
r600/sfn: Add support for image_size

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5206>

18 months agor600/sfn: Add imageio support
Gert Wollny [Wed, 6 May 2020 22:08:15 +0000 (00:08 +0200)]
r600/sfn: Add imageio support

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5206>

18 months agor600/sfn: lower image derefs
Gert Wollny [Wed, 6 May 2020 22:11:33 +0000 (00:11 +0200)]
r600/sfn: lower image derefs

v2: Signal lowering image derefs by using the CAP

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5206>

18 months agoradv: require LLVM 11+ for GFX 10.3 if not using ACO
Samuel Pitoiset [Tue, 9 Jun 2020 06:10:56 +0000 (08:10 +0200)]
radv: require LLVM 11+ for GFX 10.3 if not using ACO

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5389>

18 months agoradv: add support for Sienna Cichlid
Samuel Pitoiset [Mon, 8 Jun 2020 16:16:13 +0000 (18:16 +0200)]
radv: add support for Sienna Cichlid

Bits copied from RadeonSI. Totally untested.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5389>

18 months agoaco: replace == GFX10 with >= GFX10 where it's needed
Samuel Pitoiset [Mon, 8 Jun 2020 16:45:35 +0000 (18:45 +0200)]
aco: replace == GFX10 with >= GFX10 where it's needed

Assume the GFX10.3 ISA is similar to GFX10 which is likely (except
possible minor changes and new instructions for raytracing).

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5389>

18 months agoradv: replace == GFX10 with >= GFX10 where it's needed
Samuel Pitoiset [Mon, 8 Jun 2020 16:38:57 +0000 (18:38 +0200)]
radv: replace == GFX10 with >= GFX10 where it's needed

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5389>

18 months agointel/tools: Add assembler tests for the cr0 register
Matt Turner [Wed, 17 Jun 2020 00:10:38 +0000 (17:10 -0700)]
intel/tools: Add assembler tests for the cr0 register

Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5514>

18 months agointel/tools: Disallow control subregisters > 3
Matt Turner [Wed, 17 Jun 2020 00:07:15 +0000 (17:07 -0700)]
intel/tools: Disallow control subregisters > 3

> 4 was probably a typo, since the documentation says that there are 4
subregisters (0-3).

Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5514>

18 months agointel/tools: Require explicit regions/types for special regs
Matt Turner [Tue, 16 Jun 2020 23:54:07 +0000 (16:54 -0700)]
intel/tools: Require explicit regions/types for special regs

The docs say that these registers should  only be read with a certain
type, and I'm inclined to believe that the hardware behaves that way,
but it makes the assembler a little more confusing and also confuses the
user of the assembler that some operands don't take types or regions.

Just always requiring regions and types seems like the sensible thing.

Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5514>

18 months agointel/tools: Drop srctype from ipreg
Matt Turner [Tue, 16 Jun 2020 23:53:05 +0000 (16:53 -0700)]
intel/tools: Drop srctype from ipreg

It's unused, and it would cause shift/reduce conflicts after the next
patch.

Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5514>

18 months agointel/tools: Remove unnecessary reg number checking
Matt Turner [Tue, 16 Jun 2020 23:53:57 +0000 (16:53 -0700)]
intel/tools: Remove unnecessary reg number checking

a0 is the only address register, and cr0 is the only control register,
so there's no need to return the register number, espcially since the
lexer explicitly consumes "a0" and "cr0".

Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5514>

18 months agoturnip: move enum translation functions to a common header
Jonathan Marek [Wed, 17 Jun 2020 20:05:07 +0000 (16:05 -0400)]
turnip: move enum translation functions to a common header

Instead of having these functions sprinkled around the driver (and ending
with a duplicated tu6_compare_func for example), move everything to a
common header (using the previously unused tu_util.h).

Also applied some simplifications: using a cast when the HW enum matches
the VK enum, and using a lookup table when it makes sense (which is IMO
nicer than the switch case way).

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5538>

18 months agoaco: use the same regclass as the definition for undef phi operands
Rhys Perry [Thu, 18 Jun 2020 12:52:28 +0000 (13:52 +0100)]
aco: use the same regclass as the definition for undef phi operands

Subdword phis can't have SGPR operands on GFX6-8.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5544>

18 months agoaco: fix edge check with sub-dword temporaries
Rhys Perry [Thu, 18 Jun 2020 12:30:50 +0000 (13:30 +0100)]
aco: fix edge check with sub-dword temporaries

Fixes RA failure for a parallel-rdp shader on pitcairn.

fossil-db (Navi):
Totals from 2 (0.00% of 128733) affected shaders:
CodeSize: 203656 -> 205724 (+1.02%)
Instrs: 32267 -> 32529 (+0.81%)

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5544>

18 months agomesa/main: fix inverted condition
Erik Faye-Lund [Wed, 17 Jun 2020 21:50:06 +0000 (23:50 +0200)]
mesa/main: fix inverted condition

I accidentally got one of the conditions wrong here. Sorry for the
mixup.

See ttps://gitlab.freedesktop.org/mesa/mesa/-/issues/3134 for details.

Fixes: b112e62ba48 ("mesa/main: do not allow MESA_ycbcr_texture enums on gles")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5532>

18 months agonv50/ir/nir: remove image uniform hack
Karol Herbst [Mon, 15 Jun 2020 23:08:39 +0000 (01:08 +0200)]
nv50/ir/nir: remove image uniform hack

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5480>

18 months agonv50/ir/nir: handle image atomic inc and dec
Karol Herbst [Mon, 15 Jun 2020 16:30:39 +0000 (18:30 +0200)]
nv50/ir/nir: handle image atomic inc and dec

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Ben Skeggs <bskeggs@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5480>

18 months agonv50/ir/nir: move away from image_deref intrinsics
Karol Herbst [Mon, 15 Jun 2020 12:36:18 +0000 (14:36 +0200)]
nv50/ir/nir: move away from image_deref intrinsics

v2: fix lod source of image operation correctly

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5480>

18 months agonir/lower_images: handle dec and inc
Karol Herbst [Mon, 15 Jun 2020 16:30:12 +0000 (18:30 +0200)]
nir/lower_images: handle dec and inc

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5480>

18 months agonir/lower_images: fix for array of arrays
Karol Herbst [Mon, 15 Jun 2020 16:29:58 +0000 (18:29 +0200)]
nir/lower_images: fix for array of arrays

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5480>

18 months agost/mesa: lower images when needed
Karol Herbst [Mon, 15 Jun 2020 13:14:58 +0000 (15:14 +0200)]
st/mesa: lower images when needed

The "st/pbo download FS" builtin shader uses image derefs, so even with
PIPE_CAP_NIR_IMAGES_AS_DEREF set to 0 drivers ended up with those.

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5480>

18 months agoaco: shrink mad_info
Rhys Perry [Mon, 1 Jun 2020 15:19:56 +0000 (16:19 +0100)]
aco: shrink mad_info

From 24 bytes to 16 bytes.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5281>

18 months agoaco: make ssa_info::label 64-bit
Rhys Perry [Mon, 1 Jun 2020 10:27:53 +0000 (11:27 +0100)]
aco: make ssa_info::label 64-bit

We'll probably need these extra bits in the future.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5281>

18 months agoaco: shrink ssa_info
Rhys Perry [Mon, 1 Jun 2020 15:13:09 +0000 (16:13 +0100)]
aco: shrink ssa_info

Reorder members so that it's 16 bytes instead of 24.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5281>

18 months agoradeon/vcn: bump vcn3.0 encode major version to 1
Boyuan Zhang [Thu, 11 Jun 2020 23:22:51 +0000 (19:22 -0400)]
radeon/vcn: bump vcn3.0 encode major version to 1

And add quality params for this version

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5501>

18 months agoradeon/vcn/enc: Re-write PPS encoding for HEVC
Boyuan Zhang [Thu, 11 Jun 2020 23:17:03 +0000 (19:17 -0400)]
radeon/vcn/enc: Re-write PPS encoding for HEVC

Due to hardware change on VCN3

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5501>

18 months agoradeon/vcn: add vcn 3.0 encode support
Thong Thai [Thu, 11 Jun 2020 23:02:27 +0000 (19:02 -0400)]
radeon/vcn: add vcn 3.0 encode support

Signed-off-by: Thong Thai <thong.thai@amd.com>
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5501>

18 months agoradeon/vcn/dec: add db_aligned_height to message buffer
Leo Liu [Thu, 11 Jun 2020 23:27:57 +0000 (19:27 -0400)]
radeon/vcn/dec: add db_aligned_height to message buffer

This is required for Sienna

Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5501>

18 months agoradeon/vcn: add Sienna to use internal register offset
Leo Liu [Thu, 11 Jun 2020 22:40:07 +0000 (18:40 -0400)]
radeon/vcn: add Sienna to use internal register offset

And re-group them explicitly

Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5501>

18 months agoradeon/vcn: reset the decode flags from message buffer
Leo Liu [Thu, 11 Jun 2020 22:28:25 +0000 (18:28 -0400)]
radeon/vcn: reset the decode flags from message buffer

This flag was never used by VCN previously, and now
it's used for feature that is not applied to us.

Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: James Zhu <James.Zhu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5501>

18 months agoaco: fix WQM handling in nested loops
Daniel Schürmann [Wed, 17 Jun 2020 11:41:09 +0000 (12:41 +0100)]
aco: fix WQM handling in nested loops

If on a nested loop
- the outer loop needs WQM but
- the inner loop doesn't need WQM and
- the break condition of the inner loop is computed in the outer loop
then it could happen that we transitioned to Exact before entering the inner loop
which could create an empty exec mask and lead to an infinite loop.

Fixes a GPU hang with RDR2

Cc: 20.1 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5518>

18 months agost/mesa: account for "loose", per-mipmap level textures in CopyImageSubData
Danylo Piliaiev [Fri, 12 Jun 2020 13:04:44 +0000 (16:04 +0300)]
st/mesa: account for "loose", per-mipmap level textures in CopyImageSubData

We may have "loose", per-image gallium resources. The src_image->Level
may not match the gallium resource texture level. In such case it is
prescribed (in st_AllocTextureImageBuffer) to specify mipmap level
as zero.

Fixes: f04f13622f3e71bee057d60a6be9c53b92b56cc9
Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5477>

18 months agovirgl: apply bgra dest swizzle and add Portal 2
Gurchetan Singh [Mon, 15 Jun 2020 17:52:57 +0000 (10:52 -0700)]
virgl: apply bgra dest swizzle and add Portal 2

Apply the destination swizzle on GLES games based on HL2 engine.
Also add Portal 2 since some people are experiencing issues with
that.

Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5481>

18 months agoturnip: set the API version
Jonathan Marek [Wed, 17 Jun 2020 13:57:56 +0000 (09:57 -0400)]
turnip: set the API version

Some CTS tests don't run because of this.

Fixes: 91c757b7963f458 ("turnip: use the common code for generating extensions and dispatch tables")
Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5522>

18 months agoradv: only requires LLVM 9 for GFX10 if not using ACO
Samuel Pitoiset [Sat, 13 Jun 2020 12:23:17 +0000 (14:23 +0200)]
radv: only requires LLVM 9 for GFX10 if not using ACO

In case someone links RADV with LLVM 8 and wants to use ACO.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5454>

18 months agoRevert "CI: Disable Panfrost Mali-T820 jobs"
Neil Armstrong [Fri, 24 Apr 2020 09:07:32 +0000 (11:07 +0200)]
Revert "CI: Disable Panfrost Mali-T820 jobs"

This reverts commit 46a32f0b6bf91279d001a4905babe4e50007696e.

The lab has recovered health, thus re-enable T820 Panfrost jobs.

Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4727>

18 months agoRevert "CI: Disable Lima jobs due to lab unhealthiness"
Neil Armstrong [Fri, 24 Apr 2020 09:07:31 +0000 (11:07 +0200)]
Revert "CI: Disable Lima jobs due to lab unhealthiness"

This reverts commit adeef43d15092a6910dceb3605f5ee3151dd2c47.

The lab has recovered health, thus re-enable Lima jobs.

Acked-by: Michel Dänzer <mdaenzer@redhat.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4727>

19 months agoradv: compute CB_SHADER_MASK from the fragment shader outputs
Samuel Pitoiset [Thu, 11 Jun 2020 14:27:17 +0000 (16:27 +0200)]
radv: compute CB_SHADER_MASK from the fragment shader outputs

The fragment shader doesn't necessarily output the number of components
expected by the target format.

Fixes new dEQP-VK.draw.output_location.*.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5427>

19 months agoradv: make sure to set CB_SHADER_MASK correctly for internal CB operations
Samuel Pitoiset [Thu, 11 Jun 2020 13:39:46 +0000 (15:39 +0200)]
radv: make sure to set CB_SHADER_MASK correctly for internal CB operations

It should be always set to 0xf.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5427>

19 months agodocs/features: remove driver-list for forward-compatible context
Erik Faye-Lund [Thu, 18 Jun 2020 08:43:36 +0000 (10:43 +0200)]
docs/features: remove driver-list for forward-compatible context

This is something that's supported by the Gallium state-tracker, there's
nothing to be done per driver here.

19 months agodocs/features: update ARB_texture_buffer_object line
Erik Faye-Lund [Thu, 18 Jun 2020 08:41:43 +0000 (10:41 +0200)]
docs/features: update ARB_texture_buffer_object line

This extension isn't just exposed in OpenGL 3.1 contexts any longer, and
Zink supports it. Let's mark it as such.

19 months agodocs/features: mark GL3 as complete for zink
Erik Faye-Lund [Thu, 18 Jun 2020 08:40:27 +0000 (10:40 +0200)]
docs/features: mark GL3 as complete for zink

19 months agoradv: lower discards to demote to workaround a RDR2 game bug
Samuel Pitoiset [Wed, 17 Jun 2020 14:35:05 +0000 (16:35 +0200)]
radv: lower discards to demote to workaround a RDR2 game bug

This fixes some sort of LOD issue.

Cc: 20.1 <mesa-stable@lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5525>

19 months agoglsl_to_nir: fix vote_any/vote_all
Rob Clark [Wed, 17 Jun 2020 00:46:43 +0000 (17:46 -0700)]
glsl_to_nir: fix vote_any/vote_all

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5505>

19 months agoglsl_to_nir: fix shader_clock
Rob Clark [Wed, 17 Jun 2020 00:45:59 +0000 (17:45 -0700)]
glsl_to_nir: fix shader_clock

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5505>

19 months agoglsl_to_nir: fix is_helper_invocation
Rob Clark [Tue, 16 Jun 2020 23:36:32 +0000 (16:36 -0700)]
glsl_to_nir: fix is_helper_invocation

Reported-by: Karol Herbst <kherbst@redhat.com>
Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5505>

19 months agospirv: drop some dead code
Rob Clark [Tue, 16 Jun 2020 18:23:26 +0000 (11:23 -0700)]
spirv: drop some dead code

This case is never hit, we don't have a nir intrinsic for this spirv
opcode.  And when we do, I'm not sure if it would be vectorized or not.
So best just to drop this case.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5505>

19 months agospirv: atomic_counter_read_deref is not vectorized
Rob Clark [Tue, 16 Jun 2020 18:21:29 +0000 (11:21 -0700)]
spirv: atomic_counter_read_deref is not vectorized

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3141
Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5505>

19 months agoturnip: fix renderpass gmem configs when there are too many attachments
Jonathan Marek [Tue, 16 Jun 2020 14:45:58 +0000 (10:45 -0400)]
turnip: fix renderpass gmem configs when there are too many attachments

Since a value of at least "align" is used for nblocks, we might end up
with nblocks greater than the number of GMEM blocks remaining. Check for
this case and bail out, sysmem rendering will be used for such cases.

Fixes some of these tests:
dEQP-VK.pipeline.render_to_image.core.*.huge.*

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5499>

19 months agoturnip: fix a sample shading case
Jonathan Marek [Tue, 16 Jun 2020 13:11:02 +0000 (09:11 -0400)]
turnip: fix a sample shading case

Check pipeline's sampleShadingEnable to enable sample shading.

Also fix behavior of gl_Fragcoord with sample shading.

Fixes at least:
dEQP-VK.pipeline.multisample.min_sample_shading.min_0_5.samples_4.primitive_triangle

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5499>

19 months agoturnip: fix a crash when rasterizerDiscardEnable is set
Jonathan Marek [Wed, 17 Jun 2020 18:23:37 +0000 (14:23 -0400)]
turnip: fix a crash when rasterizerDiscardEnable is set

pMultisampleState needs to be ignored when rasterizerDiscardEnable, so the
current code can crash when trying to load msaa_info->pNext.

At the same time this simplifies tu_pipeline_shader_key_init a bit, by not
calling it for the compute shader case (which doesn't need to set anything
in the key struct).

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5499>

19 months agodocs: remind release maintainers to sign the tarballs and publish their key
Eric Engestrom [Fri, 22 Nov 2019 14:21:05 +0000 (14:21 +0000)]
docs: remind release maintainers to sign the tarballs and publish their key

Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/2857>

19 months agodocs: publish our release maintainers' keys
Eric Engestrom [Fri, 22 Nov 2019 14:10:50 +0000 (14:10 +0000)]
docs: publish our release maintainers' keys

They should be published to various key servers as well, but this
provides the authoritative source for their list.

Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2140
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/2857>

19 months agofreedreno/ir3: update obsolete comment
Rob Clark [Sun, 14 Jun 2020 16:53:11 +0000 (09:53 -0700)]
freedreno/ir3: update obsolete comment

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agofreedreno/computerator: MERGEDREGS update
Rob Clark [Sat, 13 Jun 2020 17:43:00 +0000 (10:43 -0700)]
freedreno/computerator: MERGEDREGS update

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agoturnip: set .MERGEDREGS based on variant
Rob Clark [Sat, 13 Jun 2020 16:35:40 +0000 (09:35 -0700)]
turnip: set .MERGEDREGS based on variant

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agofreedreno/a6xx: set .MERGEREGS based on variant
Rob Clark [Sat, 13 Jun 2020 16:31:11 +0000 (09:31 -0700)]
freedreno/a6xx: set .MERGEREGS based on variant

Also set HALFREGFOOTPRINT, since in the non-mergeregs case this will be
non-zero.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agofreedreno/ir3: make mergedregs a property of the variant
Rob Clark [Sat, 13 Jun 2020 03:48:36 +0000 (20:48 -0700)]
freedreno/ir3: make mergedregs a property of the variant

Rather than assuming a6xx+ means mergedregs.  We can actually (mostly?)
do splitregs on a6xx as well.  And GS/DS/HS currently require it, which
might be papering over a bug, or might be something to do with how
chaining shaders works.  At any rate, we should at least be consistent,
and not have the compiler thinking we are doing mergedregs when we are
actually doing splitregs.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agofreedreno/ir3: re-work assembler API
Rob Clark [Sat, 13 Jun 2020 17:49:47 +0000 (10:49 -0700)]
freedreno/ir3: re-work assembler API

Just pass thru the variant, since it has everything we need.  And
will be needed in the next patch.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agofreedreno/ir3: pass variant to postsched
Rob Clark [Sat, 13 Jun 2020 16:23:57 +0000 (09:23 -0700)]
freedreno/ir3: pass variant to postsched

Prep for the next patch.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agofreedreno/ir3: decouple regset from gpu gen
Rob Clark [Sat, 13 Jun 2020 03:56:48 +0000 (20:56 -0700)]
freedreno/ir3: decouple regset from gpu gen

Allow different regset's to coexist, so we can make mergedregs vs split
reg file a variant property.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agofreedreno/ir3: move mergedreg state out of reg
Rob Clark [Sat, 13 Jun 2020 03:42:36 +0000 (20:42 -0700)]
freedreno/ir3: move mergedreg state out of reg

It is only needed one place, let's move it there.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agofreedreno/ir3: convert regmask_t to struct
Rob Clark [Sat, 13 Jun 2020 03:33:31 +0000 (20:33 -0700)]
freedreno/ir3: convert regmask_t to struct

Prep to make merged/split register file mode a property of the regmask,
rather than the ir3_register.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5458>

19 months agofreedreno/fdl6: rework layout code a bit (reduce linear align to 64 bytes)
Jonathan Marek [Tue, 9 Jun 2020 22:48:34 +0000 (18:48 -0400)]
freedreno/fdl6: rework layout code a bit (reduce linear align to 64 bytes)

Reduce linear alignment, and rework the layout code a bit.

This rework has a side effect of also increasing the alignment on linear
levels of tiled (non-ubwc) cpp=1 and cpp=2 layouts. Since we should be
UBWC for those cases anyway, its not a big loss.

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5013>

19 months agofreedreno/a6xx: FETCHSIZE is PITCHALIGN
Jonathan Marek [Tue, 12 May 2020 16:34:37 +0000 (12:34 -0400)]
freedreno/a6xx: FETCHSIZE is PITCHALIGN

"FETCHSIZE" is actually a "minimum pitch" or "pitchalign" value that's
relevant for mipmaps. The 0 value means 64-bytes. Understanding this allows
some simplifications and will make it possible to use less alignment on
linear formats.

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5013>

19 months agovirgl: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:55:41 +0000 (10:55 +0200)]
virgl: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agosvga: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:55:35 +0000 (10:55 +0200)]
svga: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agofreedreno: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:22:47 +0000 (10:22 +0200)]
freedreno: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoetnaviv: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:22:29 +0000 (10:22 +0200)]
etnaviv: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoegl: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:22:22 +0000 (10:22 +0200)]
egl: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoi965: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:55:03 +0000 (10:55 +0200)]
i965: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoiris: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:54:51 +0000 (10:54 +0200)]
iris: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoanv: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:54:43 +0000 (10:54 +0200)]
anv: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoradv: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:22:04 +0000 (10:22 +0200)]
radv: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agovulkan/wsi: replace all dup() with os_dupfd_cloexec()
Eric Engestrom [Fri, 5 Jun 2020 08:55:22 +0000 (10:55 +0200)]
vulkan/wsi: replace all dup() with os_dupfd_cloexec()

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoreplace all F_DUPFD_CLOEXEC with os_dupfd_cloexec()
Eric Engestrom [Thu, 4 Jun 2020 23:09:35 +0000 (01:09 +0200)]
replace all F_DUPFD_CLOEXEC with os_dupfd_cloexec()

All squashed into a single commit because it shouldn't have any
behaviour change, except that it might work now on platforms where it
was broken because F_DUPFD_CLOEXEC is not supported but FD_CLOEXEC is.

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoutil: introduce os_dupfd_cloexec() helper
Eric Engestrom [Thu, 4 Jun 2020 23:08:33 +0000 (01:08 +0200)]
util: introduce os_dupfd_cloexec() helper

Adapted from wayland's wl_os_dupfd_cloexec().

Suggested-by: Kristian H. Kristensen <hoegsberg@google.com>
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoutil/os_file: replace broken windows-detection code with detect_os.h
Eric Engestrom [Fri, 5 Jun 2020 10:39:28 +0000 (12:39 +0200)]
util/os_file: replace broken windows-detection code with detect_os.h

The meson-windows-vs2019 job was going down the `!defined(WIN32)` path,
leading to a broken build once that path contained non-windows code.

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5369>

19 months agoci: disable the windows tests until the runner can be stabilized again
Eric Anholt [Wed, 17 Jun 2020 22:29:31 +0000 (15:29 -0700)]
ci: disable the windows tests until the runner can be stabilized again

I've been getting a stream of errors from Marge today like:

FAILED: src/gallium/drivers/llvmpipe/lp_test_conv.exe
link @src/gallium/drivers/llvmpipe/lp_test_conv.exe.rsp
LINK : fatal error LNK1102: out of memory
[1080/1141] Compiling C object src/gallium/frontends/wgl/945cc3d@@wgl@sta/stw_getprocaddress.c.obj

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5534>

19 months agodocs: remove plain-text copy of versions.rst
Eric Engestrom [Fri, 22 May 2020 23:26:57 +0000 (01:26 +0200)]
docs: remove plain-text copy of versions.rst

There's no need to keep both, so let's clean things up a bit.

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5178>

19 months agokhronos-update.py: add script to simplify update of Khronos headers & xml files
Eric Engestrom [Fri, 22 May 2020 22:28:23 +0000 (00:28 +0200)]
khronos-update.py: add script to simplify update of Khronos headers & xml files

The idea is to have the canonical source of each of those files
available without having to remember anything, and to be able to update
all the Vulkan files by simply running `bin/khronos-update.py vulkan`.

The script also handles the fact all the EGL/GL/GLES* headers depend on
the KHR header, and the former should not be updated without updating
the latter.

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5177>

19 months agozink: enable xfb extension in screen creation
Mike Blumenkrantz [Mon, 1 Jun 2020 19:01:47 +0000 (15:01 -0400)]
zink: enable xfb extension in screen creation

switch around the feature enabling as well since extensions need the related
feature to also be enabled in order to function

fixes mesa/mesa#2868

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5163>

19 months agozink: switch to passing VkPhysicalDeviceFeatures2 in VkDeviceCreateInfo
Mike Blumenkrantz [Wed, 3 Jun 2020 12:45:57 +0000 (08:45 -0400)]
zink: switch to passing VkPhysicalDeviceFeatures2 in VkDeviceCreateInfo

extensions need to have their feature structs passed in pNext to be enabled,
so switch to using the feature struct here in preparation for that

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5163>

19 months agozink: set PIPE_CAP_VIEWPORT_TRANSFORM_LOWERED and remove POS special casing
Mike Blumenkrantz [Wed, 17 Jun 2020 17:47:22 +0000 (13:47 -0400)]
zink: set PIPE_CAP_VIEWPORT_TRANSFORM_LOWERED and remove POS special casing

this cap creates a different varying output which remains constant to be
emitted by xfb, allowing us to drop the special-casing code in ntv

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5163>

19 months agozink: implement transform feedback support to finish off opengl 3.0
Mike Blumenkrantz [Mon, 1 Jun 2020 18:59:15 +0000 (14:59 -0400)]
zink: implement transform feedback support to finish off opengl 3.0

this adds:
* context hooks for gallium stream output methods
* handling for xfb-related queries
* barrier management for pausing and resuming xfb

loosely based on patches originally written by Dave Airlie <airlied@redhat.com>

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5163>

19 months agozink: implement streamout and xfb handling in ntv
Mike Blumenkrantz [Mon, 1 Jun 2020 18:49:44 +0000 (14:49 -0400)]
zink: implement streamout and xfb handling in ntv

this translates streamout info into xfb decorations and adds some workaround
handling for spurious gl_PointSize values

partly based on patches originally written by Dave Airlie <airlied@redhat.com>

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5163>

19 months agozink: add spirv_builder methods for OpVectorExtractDynamic and OpVectorInsertDynamic
Mike Blumenkrantz [Thu, 4 Jun 2020 21:01:58 +0000 (17:01 -0400)]
zink: add spirv_builder methods for OpVectorExtractDynamic and OpVectorInsertDynamic

based on spirv specs

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5163>

19 months agozink: add spirv builder util functions for emitting xfb decorations
Mike Blumenkrantz [Mon, 1 Jun 2020 18:55:38 +0000 (14:55 -0400)]
zink: add spirv builder util functions for emitting xfb decorations

based on patches originally written by Dave Airlie <airlied@redhat.com>

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5163>

19 months agozink: use '2' variants for device props/feats, check features for ext enabling
Mike Blumenkrantz [Wed, 20 May 2020 14:08:42 +0000 (10:08 -0400)]
zink: use '2' variants for device props/feats, check features for ext enabling

technically both the extension and feature should be checked when enabling
extensions, and some features cannot be properly enabled without using
the more descriptive versions of these APIs

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5163>

19 months agoturnip: use u_format for packing gmem clear values
Jonathan Marek [Mon, 15 Jun 2020 20:31:33 +0000 (16:31 -0400)]
turnip: use u_format for packing gmem clear values

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5485>

19 months agodocs: fixup relnotes after rst-conversion
Erik Faye-Lund [Mon, 15 Jun 2020 09:52:42 +0000 (11:52 +0200)]
docs: fixup relnotes after rst-conversion

Acked-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5468>

19 months agoradv/aco: enable FP16 features/extensions on GFX9+
Samuel Pitoiset [Fri, 5 Jun 2020 07:27:01 +0000 (09:27 +0200)]
radv/aco: enable FP16 features/extensions on GFX9+

This enables shaderFloat16, VK_AMD_gpu_shader_half_float and
VK_AMD_gpu_shader_int16.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5347>

19 months agoaco: fix validation of opsel when set for the definition
Rhys Perry [Wed, 17 Jun 2020 13:50:10 +0000 (14:50 +0100)]
aco: fix validation of opsel when set for the definition

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5521>

19 months agoturnip: use draw states for input attachments
Jonathan Marek [Tue, 16 Jun 2020 16:34:57 +0000 (12:34 -0400)]
turnip: use draw states for input attachments

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5446>

19 months agoturnip: input attachment descriptor set rework
Jonathan Marek [Mon, 15 Jun 2020 03:10:01 +0000 (23:10 -0400)]
turnip: input attachment descriptor set rework

Implement GMEM input attachments by using non-bindless texture state which
is emitted at the start of every subpass.

This achieves two things:
* More vulkan-like CmdBindDescriptorSets
* Fixing secondary command buffer input attachments with GMEM

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5446>