platform/upstream/mesa.git
2 years agoradv/sqtt: always dump pipelines and shaders ISA
Samuel Pitoiset [Wed, 3 Nov 2021 15:51:49 +0000 (16:51 +0100)]
radv/sqtt: always dump pipelines and shaders ISA

Even if instruction timing is disabled, both features are unrelated.

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/13648>

2 years agoFix TSD stubs for non-initial-exec case (fixes #5667).
Alex Xu (Hello71) [Tue, 23 Nov 2021 20:24:38 +0000 (15:24 -0500)]
Fix TSD stubs for non-initial-exec case (fixes #5667).

ppc64le TSD disabled for now since I am insufficiently familiar with ppc
asm. x86 pthread stubs deleted because adding USE_ELF_TLS to the #if is
isn't worth the effort since it only saves a single function call on
initial entry (TSD stubs are not used for read-only text now). also
potentially fix non-pthread TSD builds (_glapi_Dispatch was undefined),
but untested (could still be broken).

Tested-by: Jesse Natalie <jenatali@microsoft.com>
Tested-by: Jan Beich <jbeich@freebsd.org>
Signed-off-by: Alex Xu (Hello71) <alex_y_xu@yahoo.ca>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13935>

2 years agoglapi: Remove remnants of EXT_paletted_texture and the imaging subset
Adam Jackson [Mon, 29 Nov 2021 19:05:49 +0000 (14:05 -0500)]
glapi: Remove remnants of EXT_paletted_texture and the imaging subset

The GLX code had to special case these for uninteresting reasons, but we
don't support them anymore in Mesa so all this would do is keep them
sorta-working over GLX protocol. Given that Mesa hasn't supported them
on the renderer side since ~2011 let's stop pretending they're real. If
we get around to modernizing the indirect GLX code (hah) we can revisit
these then.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14085>

2 years agoradeon/vcn: implement encoder dpb management
Thong Thai [Mon, 22 Nov 2021 00:51:16 +0000 (19:51 -0500)]
radeon/vcn: implement encoder dpb management

Previously, the number of previously encoded frames the encoder handled
was 1 - the encoder now supports many more encoded pictures, so the
encoder now has to keep track of multiple reconstructed pictures.

v2: Add a check to make sure an array index is not negative (Boyuan)

Signed-off-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13915>

2 years agoradeon: hardcode uvd/vce encoder not_referenced value to false
Thong Thai [Mon, 6 Dec 2021 16:47:31 +0000 (11:47 -0500)]
radeon: hardcode uvd/vce encoder not_referenced value to false

Sets the not_referenced parameter to be the same as the previously
hardcoded frontends/va value (false) to ensure UVD/VCE encoding
functionality remains unaffected by the change in frontends/va code.

This commit will eventually be reverted once more testing is completed.

Fixes: a90802ef644 ("frontends/va/enc: allow for frames to be marked as (not) referenced")
Signed-off-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13915>

2 years agofrontends/va/enc: allow for frames to be marked as (not) referenced
Thong Thai [Mon, 22 Nov 2021 01:04:20 +0000 (20:04 -0500)]
frontends/va/enc: allow for frames to be marked as (not) referenced

Signed-off-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13915>

2 years agoradeon/vcn: increase encoder dpb size
Thong Thai [Mon, 8 Nov 2021 19:09:10 +0000 (14:09 -0500)]
radeon/vcn: increase encoder dpb size

Base the number of reconstructed pictures the encoder allocates based on
the number of reference pictures to be used for encoding. Also move the
calculation and allocation of reconstructed pictures to VCN 1, from VCN
2.

v2: Add back the accidentally deleted
'two_pass_search_center_map_offset' (Boyuan)

Signed-off-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13915>

2 years agofrontends/va/enc: hardcode h265 encoder ref pic list size
Thong Thai [Mon, 22 Nov 2021 16:47:43 +0000 (11:47 -0500)]
frontends/va/enc: hardcode h265 encoder ref pic list size

Set the size of the ref pic list0 for the h265 encoder to 1.

Signed-off-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13915>

2 years agofrontends/va: disable packed header support for h264 encoder
Thong Thai [Fri, 12 Nov 2021 23:19:23 +0000 (18:19 -0500)]
frontends/va: disable packed header support for h264 encoder

Packed headers for the H.264 encoder has not been implemented yet, so
don't report packed header support for the H.264 encoder

Signed-off-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13915>

2 years agoradv: handle VK_DESCRIPTOR_TYPE_SAMPLER in VK_VALVE_mutable_descriptor_type extension
Cherser-s [Tue, 16 Nov 2021 20:06:59 +0000 (23:06 +0300)]
radv: handle VK_DESCRIPTOR_TYPE_SAMPLER in VK_VALVE_mutable_descriptor_type extension

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13842>

2 years agointel/fs/xehp: Teach SWSB pass about the exec pipeline of FS_OPCODE_PACK_HALF_2x16_SPLIT.
Francisco Jerez [Tue, 30 Nov 2021 07:45:50 +0000 (23:45 -0800)]
intel/fs/xehp: Teach SWSB pass about the exec pipeline of FS_OPCODE_PACK_HALF_2x16_SPLIT.

This virtual instruction is translated into multiple half float
physical instructions, even though its destination is typically of
integer type, which prevents the software scoreboard pass from
inferring the correct execution pipeline for the virtual instruction
on XeHP+ platforms.  Teach the SWSB lowering pass about this
inconsistency between the IR and physical instruction types.

Fixes among other tests:

dEQP-GLES31.functional.shaders.builtin_functions.pack_unpack.packhalf2x16_compute

Fixes: d4537770bbf ("intel/fs: Add helper functions inferring sync and exec pipeline of an instruction.")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5685
Reported-by: Tapani Pälli <tapani.palli@intel.com>
Tested-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14002>

2 years agor300/ci: Update loop expectations
Emma Anholt [Tue, 7 Dec 2021 00:56:40 +0000 (16:56 -0800)]
r300/ci: Update loop expectations

from running "-t loops" which I hadn't totally covered before.

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

2 years agor300: Route shader stats output to ARB_debug_output.
Emma Anholt [Tue, 7 Dec 2021 18:18:03 +0000 (10:18 -0800)]
r300: Route shader stats output to ARB_debug_output.

This lets us use shader-db to compare stats on shaders, rather than having
to manually review the RADEON_DEBUG=pstat output.

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

2 years agor300: Precompile the FS at shader creation time.
Emma Anholt [Tue, 7 Dec 2021 17:51:35 +0000 (09:51 -0800)]
r300: Precompile the FS at shader creation time.

This should reduce jank at first draw, and is also good prep for doing
shader-db.

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

2 years agor300: Remove the non_normalized_coords from the shader key.
Emma Anholt [Tue, 7 Dec 2021 17:52:18 +0000 (09:52 -0800)]
r300: Remove the non_normalized_coords from the shader key.

TexSrcTarget has to be RECT when this is set, anyway.

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

2 years agor300: Also consider ALU condition modifiers for loop DCE.
Emma Anholt [Tue, 7 Dec 2021 00:43:45 +0000 (16:43 -0800)]
r300: Also consider ALU condition modifiers for loop DCE.

Since we typically use an ALU op to set the condition modifier for the
IF-BRK-ENDIF, we were particularly likely to remove the increment of the
loop counter!

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

2 years agor300: Ensure that immediates have matching negate flags too.
Emma Anholt [Mon, 6 Dec 2021 23:07:38 +0000 (15:07 -0800)]
r300: Ensure that immediates have matching negate flags too.

We only have one bit of negate, so we have to make sure that immediate
usage has matching negates on all used channels (or rewrite to do so).

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

2 years agor300: Cache the var list in the peephole_mul_omod() loop.
Emma Anholt [Tue, 7 Dec 2021 19:09:06 +0000 (11:09 -0800)]
r300: Cache the var list in the peephole_mul_omod() loop.

If we're not making progress (which the function was already giving us!),
then there's no need to recompute the list.  Reduces
pixmark-piano/7.shader_test compile time from 50 seconds to 10.

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

2 years agor300: Move the instruction filter for r500_transform_IF() to the top.
Emma Anholt [Tue, 7 Dec 2021 18:56:42 +0000 (10:56 -0800)]
r300: Move the instruction filter for r500_transform_IF() to the top.

rc_get_variables() is slow, don't call it if we're going to just exit
immediately anyway.

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

2 years agomeson: Fix dri.pc dridriverdir
Mike Lothian [Tue, 7 Dec 2021 15:40:38 +0000 (15:40 +0000)]
meson: Fix dri.pc dridriverdir

Change dridriversdir to dridriverdir

Fixes: https://gitlab.freedesktop.org/mesa/mesa/-/commit/3ae3569d822c2546c4c748090f8a6c8016f763ea
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5726

Signed-off-by: Mike Lothian <mike@fireburn.co.uk>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Marcus Seyfarth <m.seyfarth@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14111>

2 years agofreedreno/ci/a306: increase concurrency
Ilia Mirkin [Sat, 4 Dec 2021 01:22:50 +0000 (20:22 -0500)]
freedreno/ci/a306: increase concurrency

No harm from using more threads, but not enough benefit to reduce
parallelism unfortunately.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14067>

2 years agofreedreno/ci/a306: add more skips
Ilia Mirkin [Fri, 3 Dec 2021 04:50:01 +0000 (23:50 -0500)]
freedreno/ci/a306: add more skips

These come up with increased concurrency.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14067>

2 years agointel/crocus: push main/macros.h out to the users
Dave Airlie [Tue, 7 Dec 2021 06:43:43 +0000 (16:43 +1000)]
intel/crocus: push main/macros.h out to the users

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14104>

2 years agointel/compiler: drop shader_info.h from compiler header
Dave Airlie [Tue, 7 Dec 2021 06:41:19 +0000 (16:41 +1000)]
intel/compiler: drop shader_info.h from compiler header

include it explicitly in the correct places

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14104>

2 years agobrw/compiler: drop mtypes.h from compiler
Dave Airlie [Tue, 7 Dec 2021 06:34:48 +0000 (16:34 +1000)]
brw/compiler: drop mtypes.h from compiler

This adds a bunch of other headers in, and adds mtypes.h to iris
for perf query object.

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14104>

2 years agoanv: include futex.h explicitly in allocator.
Dave Airlie [Tue, 7 Dec 2021 06:25:34 +0000 (16:25 +1000)]
anv: include futex.h explicitly in allocator.

This file needs futexes so make an explicit include, so it doesn't
come via the compiler

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14104>

2 years agomesa: move _mesa_varying_slot_in_fs to shader_enums
Dave Airlie [Tue, 7 Dec 2021 06:24:29 +0000 (16:24 +1000)]
mesa: move _mesa_varying_slot_in_fs to shader_enums

This doesn't need anything from mtypes.h, just changes types
to non GL equivalents

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14104>

2 years agointel/isl: Drop extra devinfo checks for CCS support
Nanley Chery [Mon, 6 Dec 2021 15:27:55 +0000 (10:27 -0500)]
intel/isl: Drop extra devinfo checks for CCS support

These checks are done in isl_format_supports_ccs_*. Since
isl_surf_supports_ccs calls these functions, it doesn't need to check
them itself.

Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14082>

2 years agoiris: Drop the YCRCB cases in finish_aux_import
Nanley Chery [Mon, 6 Dec 2021 15:20:25 +0000 (10:20 -0500)]
iris: Drop the YCRCB cases in finish_aux_import

We recently added native support for these formats in gallium and ISL.

See commits:
* (gallium/dri) f57c074270ef53c03d4e1db1e13fac3f13300756
* (intel/isl) 3fa16b3025a38ee6614725d89e8cda500988d086

Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14082>

2 years agointel/isl: Restore CCS_E support for YUYV and UYVY
Nanley Chery [Mon, 6 Dec 2021 14:00:32 +0000 (09:00 -0500)]
intel/isl: Restore CCS_E support for YUYV and UYVY

These formats are used when creating surfaces with the
I915_FORMAT_MOD_Y_TILED_GEN12_MC_CCS modifier.

Makes iris pass the out-of-tree piglit test,
ext_image_dma_buf_import-intel-modifiers.

Fixes: 1433fe7860a ("intel/isl: Unify fmt checks in isl_surf_supports_ccs")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14082>

2 years agodocs: remove stale notice about deleted dir
Erik Faye-Lund [Mon, 6 Dec 2021 11:48:44 +0000 (12:48 +0100)]
docs: remove stale notice about deleted dir

We're not going to move this directory like this comment suggests, as
the suggested target no longer exists. Let's just drop the mention.

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14079>

2 years agodocs: remove mentions of deleted code
Erik Faye-Lund [Mon, 6 Dec 2021 11:46:46 +0000 (12:46 +0100)]
docs: remove mentions of deleted code

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14079>

2 years agoci: remove testing of deleted code
Erik Faye-Lund [Mon, 6 Dec 2021 11:46:02 +0000 (12:46 +0100)]
ci: remove testing of deleted code

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14079>

2 years agoCODEOWNERS: remove ownership of deleted code
Erik Faye-Lund [Mon, 6 Dec 2021 11:44:43 +0000 (12:44 +0100)]
CODEOWNERS: remove ownership of deleted code

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14079>

2 years agomeson: check -mtls if has_exe_wrapper
Michel Zou [Mon, 6 Dec 2021 19:16:19 +0000 (20:16 +0100)]
meson: check -mtls if has_exe_wrapper

Fixes: 60d95c5d (Auto-enable TLSDESC support)
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14086>

2 years agopanvk: Add check for null fence
Manas Chaudhary [Tue, 7 Dec 2021 13:46:08 +0000 (19:16 +0530)]
panvk: Add check for null fence

Signed-off-by: Manas Chaudhary <manas.chaudhary@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14108>

2 years agoir3,turnip: Add support for GL_KHR_shader_subgroup_quad
Danylo Piliaiev [Tue, 16 Nov 2021 14:27:26 +0000 (16:27 +0200)]
ir3,turnip: Add support for GL_KHR_shader_subgroup_quad

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13817>

2 years agoir3,turnip: Enable subgroup ops support in all stages on gen4
Danylo Piliaiev [Tue, 16 Nov 2021 12:53:32 +0000 (14:53 +0200)]
ir3,turnip: Enable subgroup ops support in all stages on gen4

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13817>

2 years agoir3: Use getfiberid for SubgroupInvocationID on gen4
Danylo Piliaiev [Mon, 15 Nov 2021 15:14:37 +0000 (17:14 +0200)]
ir3: Use getfiberid for SubgroupInvocationID on gen4

Since it requires (ss) categorize it as is_sfu() and not is_mem().

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13817>

2 years agoir3: Add gen4 new subgroup instructions
Danylo Piliaiev [Mon, 15 Nov 2021 14:57:38 +0000 (16:57 +0200)]
ir3: Add gen4 new subgroup instructions

* getlast.w8 #4 - Perform jump for the first (CLUSTER_SIZE-1)
   fibers in a subgroup
* brcst.active.w8 - necessary to implement arithmetic subgroup
   operations with prefix sum.
* quad_shuffle.brcst - subgroupQuadBroadcast
* quad_shuffle.horiz - subgroupQuadSwapHorizontal
* quad_shuffle.vert - subgroupQuadSwapVertical
* quad_shuffle.diag - subgroupQuadSwapDiagonal
* getfiberid - gl_SubgroupID

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13817>

2 years agoradv: avoid prefixing few VkXXX structures by struct
Samuel Pitoiset [Fri, 26 Nov 2021 16:19:51 +0000 (17:19 +0100)]
radv: avoid prefixing few VkXXX structures by struct

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/14115>

2 years agoutil/u_vector: prevent C++ warning on cast from void* to something else
Lionel Landwerlin [Sun, 28 Nov 2021 19:33:36 +0000 (21:33 +0200)]
util/u_vector: prevent C++ warning on cast from void* to something else

v2: fix windows build

v3: duplicate foreach macro for C/C++

v4: Extract casting macro

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com> (v3)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13997>

2 years agomesa/crocus/iris/blorp: drop minify macro in favour of u_minify
Dave Airlie [Tue, 7 Dec 2021 06:05:56 +0000 (16:05 +1000)]
mesa/crocus/iris/blorp: drop minify macro in favour of u_minify

This macro is duplicated, clean it up.

Reviewed-by: Dylan Baker <dylan.c.baker@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14103>

2 years agomesa: Make _mesa_generate_mipmap_level static
Adam Jackson [Tue, 7 Dec 2021 02:49:18 +0000 (21:49 -0500)]
mesa: Make _mesa_generate_mipmap_level static

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

2 years agomesa: Remove unused execmem code
Adam Jackson [Tue, 7 Dec 2021 02:45:54 +0000 (21:45 -0500)]
mesa: Remove unused execmem code

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

2 years agomesa/program: Dead code cleanup
Adam Jackson [Tue, 7 Dec 2021 02:18:45 +0000 (21:18 -0500)]
mesa/program: Dead code cleanup

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

2 years agomesa/vbo: Always use buffer objects for storage
Adam Jackson [Wed, 2 Jun 2021 04:07:36 +0000 (00:07 -0400)]
mesa/vbo: Always use buffer objects for storage

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

2 years agomesa: Remove unused _vbo_current_binding
Adam Jackson [Thu, 20 May 2021 21:14:15 +0000 (17:14 -0400)]
mesa: Remove unused _vbo_current_binding

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

2 years agomesa: Remove unused _es_{,Get}TexGenfv
Adam Jackson [Thu, 20 May 2021 21:06:38 +0000 (17:06 -0400)]
mesa: Remove unused _es_{,Get}TexGenfv

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

2 years agomesa: Remove unused _es_RenderbufferStorageEXT
Adam Jackson [Thu, 20 May 2021 21:05:13 +0000 (17:05 -0400)]
mesa: Remove unused _es_RenderbufferStorageEXT

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

2 years agomesa: Remove unused _es_color4ub
Adam Jackson [Thu, 20 May 2021 21:04:31 +0000 (17:04 -0400)]
mesa: Remove unused _es_color4ub

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

2 years agomesa: Remove unused _mesa_compressed_image_address
Adam Jackson [Thu, 20 May 2021 21:03:44 +0000 (17:03 -0400)]
mesa: Remove unused _mesa_compressed_image_address

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

2 years agomesa: Remove unused _mesa_apply_ci_transfer_ops
Adam Jackson [Thu, 20 May 2021 21:01:39 +0000 (17:01 -0400)]
mesa: Remove unused _mesa_apply_ci_transfer_ops

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

2 years agomesa: Remove unused _check_*TexGen*OES
Adam Jackson [Thu, 20 May 2021 20:51:34 +0000 (16:51 -0400)]
mesa: Remove unused _check_*TexGen*OES

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

2 years agomesa: Remove unused _mesa_DrawTexx{,v}
Adam Jackson [Thu, 20 May 2021 20:50:21 +0000 (16:50 -0400)]
mesa: Remove unused _mesa_DrawTexx{,v}

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

2 years agomesa: Remove unused _mesa_get_render_format
Adam Jackson [Thu, 20 May 2021 20:42:03 +0000 (16:42 -0400)]
mesa: Remove unused _mesa_get_render_format

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

2 years agomesa: Remove unused _mesa_all_buffers_are_unmapped
Adam Jackson [Thu, 20 May 2021 20:40:38 +0000 (16:40 -0400)]
mesa: Remove unused _mesa_all_buffers_are_unmapped

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

2 years agoradv: fix dynamic rendering with VRS
Samuel Pitoiset [Tue, 7 Dec 2021 12:30:45 +0000 (13:30 +0100)]
radv: fix dynamic rendering with VRS

The structure type was wrong. This fixes a bunch failures in
dEQP-VK.fragment_shading_rate.dynamic_rendering.*.

Fixes: 7f3aba37d21 ("radv: Support Begin/EndRendering.")
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/14106>

2 years agoradv: constify radv_vs_input_state() in more places
Samuel Pitoiset [Thu, 18 Nov 2021 11:30:46 +0000 (12:30 +0100)]
radv: constify radv_vs_input_state() in more places

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/13857>

2 years agoradv: constify radv_vertex_binding in CmdSetVertexInputEXT()
Samuel Pitoiset [Thu, 18 Nov 2021 10:19:43 +0000 (11:19 +0100)]
radv: constify radv_vertex_binding in CmdSetVertexInputEXT()

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/13857>

2 years agoradv: move a comment at the right place in CmdBindVertexBuffers2EXT()
Samuel Pitoiset [Thu, 18 Nov 2021 10:18:56 +0000 (11:18 +0100)]
radv: move a comment at the right place in CmdBindVertexBuffers2EXT()

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/13857>

2 years agofreedreno,tu: Limit the amount of instructions preloaded into icache
Danylo Piliaiev [Fri, 3 Dec 2021 11:23:18 +0000 (13:23 +0200)]
freedreno,tu: Limit the amount of instructions preloaded into icache

Inferring from blob's cmdstream the size of shader instruction
cache for:
- a630 is 64
- a650 is 128
- a660 is 128

On a650 and a660 gpu could hang if we exceed the limit. Though
it is not reproducible with computerator or a single amber
test. Also while blob limits the size to 128 - Turnip still
hangs with it but does not hang with the limit of 127.

On a630 there seem to be no hang when limit is exceeded.

Fixes the hang of compute shader in Alien Isolation on a650/a660.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14044>

2 years agomesa/st: move external objects to direct calls
Dave Airlie [Mon, 6 Dec 2021 07:15:25 +0000 (17:15 +1000)]
mesa/st: move external objects to direct calls

This moves the memory and semaphore objects to direct calls

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

2 years agomesa/st: move transformfeedback to direct calls
Dave Airlie [Mon, 6 Dec 2021 07:10:05 +0000 (17:10 +1000)]
mesa/st: move transformfeedback to direct calls

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

2 years agomesa/st: move barriers to direct call
Dave Airlie [Mon, 6 Dec 2021 07:04:14 +0000 (17:04 +1000)]
mesa/st: move barriers to direct call

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

2 years agomesa/st: direct call sync object functions
Dave Airlie [Mon, 6 Dec 2021 06:58:22 +0000 (16:58 +1000)]
mesa/st: direct call sync object functions

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

2 years agomesa/dd/st: direct wire queries/timestamp/condrender.
Dave Airlie [Mon, 6 Dec 2021 06:31:59 +0000 (16:31 +1000)]
mesa/dd/st: direct wire queries/timestamp/condrender.

These were all interrelated, avoid the indirect calls here,
and call directly between main and state tracker

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

2 years agomesa/dd/st: move get strings pointer out of dd.h
Dave Airlie [Mon, 6 Dec 2021 04:25:55 +0000 (14:25 +1000)]
mesa/dd/st: move get strings pointer out of dd.h

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

2 years agomeson: make mesa/tests/glx depend on gallium
Dave Airlie [Tue, 7 Dec 2021 04:29:29 +0000 (14:29 +1000)]
meson: make mesa/tests/glx depend on gallium

If I start direct linking the state tracker to mesa, the tests fail
to build because they don't have gallium linked.

Reviewed-by: Dylan Baker <dylan.c.baker@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14073>

2 years agointel/compiler: drop glsl options from brw_compiler
Dave Airlie [Tue, 7 Dec 2021 05:53:49 +0000 (15:53 +1000)]
intel/compiler: drop glsl options from brw_compiler

Only the nir options are used now, since i965 was dropped,
the glsl options come from the state tracker

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14102>

2 years agonir/algebraic: Move all the individual transforms to a common table.
Emma Anholt [Wed, 1 Dec 2021 23:45:54 +0000 (15:45 -0800)]
nir/algebraic: Move all the individual transforms to a common table.

Cuts 28% of the remaining relocations in libvulkan_intel.so, shrinks
binary size by 290kb.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13987>

2 years agonir/algebraic: Mark the automaton's filter tables as const.
Emma Anholt [Wed, 1 Dec 2021 22:20:55 +0000 (14:20 -0800)]
nir/algebraic: Mark the automaton's filter tables as const.

Moves it to .rodata instead of .data.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13987>

2 years agonir/algebraic: Pack various bitfields in the nir_search_value_union.
Emma Anholt [Tue, 30 Nov 2021 22:34:45 +0000 (14:34 -0800)]
nir/algebraic: Pack various bitfields in the nir_search_value_union.

This gets our union's size down to 22 bytes (now smaller than any of the
union's types were before we made the union!).  Cuts another 48kb off of
the drivers.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13987>

2 years agonir/algebraic: Move relocations for variable conds to a table.
Emma Anholt [Tue, 30 Nov 2021 22:33:41 +0000 (14:33 -0800)]
nir/algebraic: Move relocations for variable conds to a table.

This helps concentrate the dirty pages from the relocations, reduces how
many relocations there are, and reduces the size of each variable assuming
variables mostly don't have conditions or the conditions are mostly
reused).  Reduces libvulkan_intel.so size by 49kb.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13987>

2 years agonir/algebraic: Move relocations for expression conds to a table.
Emma Anholt [Tue, 30 Nov 2021 22:23:39 +0000 (14:23 -0800)]
nir/algebraic: Move relocations for expression conds to a table.

This helps concentrate the dirty pages from the relocations, reduces how
many relocations there are, and reduces the size of each expression
(assuming expressions mostly don't have conditions or the conditions are
mostly reused).  Reduces libvulkan_intel.so size by 8.7kb.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13987>

2 years agonir/algebraic: Remove array-of-cond code
Emma Anholt [Tue, 30 Nov 2021 22:17:10 +0000 (14:17 -0800)]
nir/algebraic: Remove array-of-cond code

You can't have an array of them after removing many-comm-expr, there's no
space in the struct.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13987>

2 years agonir/algebraic: Replace relocations for nir_search values with a table.
Emma Anholt [Mon, 29 Nov 2021 23:24:47 +0000 (15:24 -0800)]
nir/algebraic: Replace relocations for nir_search values with a table.

Even with packing all 3 types into a 40-byte union (nir_search_constant
being 24 bytes and nir_search_expression having formerly been 32), and
having a single array of them, this cuts 1.7MB from each of
libvulkan_intel.so and libgallium_dri.so.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13987>

2 years agonir/algebraic: Drop the check for cache == None.
Emma Anholt [Mon, 29 Nov 2021 22:14:35 +0000 (14:14 -0800)]
nir/algebraic: Drop the check for cache == None.

The cache is always set.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13987>

2 years agonir/algebraic: Move some generated-code algebraic opt args into a struct.
Emma Anholt [Mon, 29 Nov 2021 21:57:19 +0000 (13:57 -0800)]
nir/algebraic: Move some generated-code algebraic opt args into a struct.

I'm going to be adding some more tables to reduce relocations in the
generated code, so move the current tables to a struct for arg-passing
sanity.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13987>

2 years agonouveau/nir: Use the address reg for indirect scratch access.
Emma Anholt [Sun, 5 Dec 2021 19:41:25 +0000 (11:41 -0800)]
nouveau/nir: Use the address reg for indirect scratch access.

Fixes the dEQP regressions in dEQP-GLES2.functional.shaders.indexing.*.
TGSI used the address reg for these offsets too.

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

2 years agomesa: make struct in gl_program a union and remove FIXME
Timothy Arceri [Sat, 4 Dec 2021 12:23:07 +0000 (23:23 +1100)]
mesa: make struct in gl_program a union and remove FIXME

Now that the classic drivers that were mixing the use of these asm
and glsl shader fields are gone we can finally use a union here.

This basically reverts commit 9d99dc4bc1fd but also moves a
read of IsPositionInvariant inside an arb asm only code block
for safety.

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

2 years agoloader/dri3: support glx pbuffer swap
Qiang Yu [Wed, 10 Nov 2021 10:59:34 +0000 (18:59 +0800)]
loader/dri3: support glx pbuffer swap

Double buffered pbuffer need to update the front buffer,
otherwise we always get wrong value when glReadPixels().

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoloader/dri3: stop doing anything in swap buffer for some drawable
Qiang Yu [Wed, 10 Nov 2021 14:02:53 +0000 (22:02 +0800)]
loader/dri3: stop doing anything in swap buffer for some drawable

We are sure to have a back buffer in swap buffer now.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Singed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoloader/dri3: rename dri3_fake_front_buffer
Qiang Yu [Wed, 10 Nov 2021 11:06:14 +0000 (19:06 +0800)]
loader/dri3: rename dri3_fake_front_buffer

Sometimes this is the real front buffer depends on the place
called. Since it's the same LOADER_DRI3_FRONT_ID slot, just
name it dri3_front_buffer.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoloader/dri3: replace is_pixmap with drawable type
Qiang Yu [Wed, 10 Nov 2021 02:00:14 +0000 (10:00 +0800)]
loader/dri3: replace is_pixmap with drawable type

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoloader/dri3: setup present event with drawable type info
Qiang Yu [Fri, 12 Nov 2021 02:49:07 +0000 (10:49 +0800)]
loader/dri3: setup present event with drawable type info

If we already know the drawable type, setup event in a simpler way.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoloader/dri3: pack window present event setup into a function
Qiang Yu [Thu, 11 Nov 2021 09:21:48 +0000 (17:21 +0800)]
loader/dri3: pack window present event setup into a function

For simplicity and latter commits.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoloader/dri3: remove unused present capability query
Qiang Yu [Tue, 9 Nov 2021 13:51:35 +0000 (21:51 +0800)]
loader/dri3: remove unused present capability query

The query result is not used anywhere.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoloader/dri3: add drawable type set by GLX and EGL
Qiang Yu [Fri, 12 Nov 2021 02:25:11 +0000 (10:25 +0800)]
loader/dri3: add drawable type set by GLX and EGL

Drawable type include more information which can be used
to distinguish pixmap and pbuffer which both treated as
pixmap before.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoglx: add drawable type argument when create drawable
Qiang Yu [Tue, 9 Nov 2021 09:19:44 +0000 (17:19 +0800)]
glx: add drawable type argument when create drawable

For distinguish different behavior of pixmap and pbuffer
in latter commits.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoglx: check drawable type before create drawble
Qiang Yu [Tue, 9 Nov 2021 08:52:40 +0000 (16:52 +0800)]
glx: check drawable type before create drawble

If glxDrawable is not a X window ID, we can only support
GLXPbuffer now.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoglx: no need to create extra pixmap for pbuffer
Qiang Yu [Tue, 9 Nov 2021 07:41:08 +0000 (15:41 +0800)]
glx: no need to create extra pixmap for pbuffer

XServer already created a pixmap with same id as pbuffer,
so that other client can use the pbuffer id to do
glXMakeCurrent(). But with a hidden pixmap, we can't do
this.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13750>

2 years agoutil: add workaround for SNK HEROINES Tag Team Frenzy
Timothy Arceri [Fri, 3 Dec 2021 11:22:57 +0000 (22:22 +1100)]
util: add workaround for SNK HEROINES Tag Team Frenzy

The game makes use of builtin functions that were moved to
compatibility shaders in GLSL 4.20 in its GLSL 4.20 shaders
without declaring the compatibility token.

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

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14040>

2 years agoutil: add dri config option force_compat_shaders
Timothy Arceri [Fri, 3 Dec 2021 09:53:46 +0000 (20:53 +1100)]
util: add dri config option force_compat_shaders

This allows us to force all shaders to offer shader features only
provided to compatibility shaders.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14040>

2 years agoisl: Move some genxml surface state helpers into an include file
Kenneth Graunke [Thu, 11 Nov 2021 08:19:25 +0000 (00:19 -0800)]
isl: Move some genxml surface state helpers into an include file

On XeHP, the XY_BLOCK_COPY_BLT command has a number of fields that
describe the layout of the surface, much like SURFACE_STATE does.

Several of them are encoded in such a similar manner that we really
would like to reuse the isl helpers for emitting those.  This commit
moves them into a new isl_genX_helpers.h file which I can include
from the BLORP code.  (The alternative would be to add XY_BLOCK_COPY_BLT
filling commands to isl, but that...seems more like a BLORP feature.)

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14094>

2 years agoiris: Rename is_render_target to is_dest in a few blit functions
Kenneth Graunke [Tue, 16 Nov 2021 00:02:34 +0000 (16:02 -0800)]
iris: Rename is_render_target to is_dest in a few blit functions

When targeting the blitter or compute engines, the destination is not
really a render target.  But it's still useful to know whether we're
talking about the source or destination.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14094>

2 years agor300: Fix mis-optimization turning -1 - x into 1 - x.
Emma Anholt [Mon, 6 Dec 2021 22:03:37 +0000 (14:03 -0800)]
r300: Fix mis-optimization turning -1 - x into 1 - x.

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

2 years agor300: Turn a comment about presub into an assert.
Emma Anholt [Mon, 6 Dec 2021 21:58:25 +0000 (13:58 -0800)]
r300: Turn a comment about presub into an assert.

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

2 years agor300: Add deqp expectations for RV515.
Emma Anholt [Tue, 23 Nov 2021 18:35:57 +0000 (10:35 -0800)]
r300: Add deqp expectations for RV515.

This may not be a complete set, as I haven't been able to run dEQP-GLES2
to completion (GPU hangs at some point, no particular test seems to be
guilty).  But this will help me assess NIR-to-TGSI for the driver.

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

2 years agodoc: update source tree doc to reflect recent classic/swrast deletions
Timothy Arceri [Mon, 6 Dec 2021 11:24:04 +0000 (22:24 +1100)]
doc: update source tree doc to reflect recent classic/swrast deletions

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14078>