Tomeu Vizoso [Fri, 12 Aug 2022 06:25:04 +0000 (08:25 +0200)]
iris/ci: Test on Jasper Lake Chromebooks
8 such boards have been added to Collabora's lab, let's run all tests
from the selected set.
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18028>
Qiang Yu [Mon, 8 Aug 2022 01:42:16 +0000 (09:42 +0800)]
nir/lower_gs_intrinsics: fix primitive count for points
When primitive is points, EndPrimitive can't be used to count
primitive. Need to use vertex count instead. And it's also not
needed to do vertex per primitive count and overwrite incomplete
primitive work for points.
Fixes:
2be99012e95 ("nir: Add ability to count emitted GS primitives.")
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17805>
Mike Blumenkrantz [Fri, 5 Aug 2022 17:54:58 +0000 (13:54 -0400)]
zink: fix program cache comparisons
I missed this when pipe shader types were merged with mesa types
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 16:34:57 +0000 (12:34 -0400)]
zink: delete zink_shader_stage()
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 16:31:44 +0000 (12:31 -0400)]
zink: remove all pipe_shader_type usage
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 16:20:10 +0000 (12:20 -0400)]
zink: PIPE_SHADER_TYPES -> MESA_SHADER_STAGES
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 16:19:03 +0000 (12:19 -0400)]
zink: explicitly define ZINK_GFX_SHADER_COUNT
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 16:17:37 +0000 (12:17 -0400)]
zink: ZINK_SHADER_COUNT -> ZINK_GFX_SHADER_COUNT
more descriptive
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 16:10:11 +0000 (12:10 -0400)]
zink: use statically sized array for descriptor allocation
this will never be more than 100
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 16:02:34 +0000 (12:02 -0400)]
zink: rename _lazy descriptor stuff
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:43:57 +0000 (11:43 -0400)]
zink: reorder some descriptor structs
should yield slightly better packing
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:42:09 +0000 (11:42 -0400)]
zink: merge batch descriptor data onto batch state
also clean up some related descriptor code
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:32:04 +0000 (11:32 -0400)]
zink: merge program descriptor data onto program struct
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:29:59 +0000 (11:29 -0400)]
zink: merge context descriptor data onto context struct
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:25:36 +0000 (11:25 -0400)]
zink: merge batch descriptor data structs
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:23:31 +0000 (11:23 -0400)]
zink: merge context descriptor data structs
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:21:15 +0000 (11:21 -0400)]
zink: remove descriptor dummy_set
while well-intentioned, this didn't actually do anything
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:20:16 +0000 (11:20 -0400)]
zink: delete some unused descriptor struct members
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:15:39 +0000 (11:15 -0400)]
zink: move lazy descriptor data types into zink_types.h
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 15:05:47 +0000 (11:05 -0400)]
zink: move all types/enums into zink_types.h
this significantly untangles all the header includes and fixes an issue
where zink_descriptors.h couldn't be included by certain files due to
type conflicts
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 13:02:48 +0000 (09:02 -0400)]
zink: delete unused struct types
so old
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 12:52:59 +0000 (08:52 -0400)]
zink: move lazy descriptor functions into zink_descriptors.c
the merginating continues
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 12:27:03 +0000 (08:27 -0400)]
zink: delete a lot of descriptor code
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 12:23:10 +0000 (08:23 -0400)]
zink: remove descriptor vtable
no longer used
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 12:16:18 +0000 (08:16 -0400)]
zink: remove checks for lazy descriptor mode + templates ext
these are always true
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Mike Blumenkrantz [Thu, 4 Aug 2022 12:10:02 +0000 (08:10 -0400)]
zink: remove cached descriptor mode
this just removes the enum(s) for it, making it functionally inaccessible
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18051>
Alyssa Rosenzweig [Sun, 7 Aug 2022 23:17:40 +0000 (19:17 -0400)]
asahi: Identify depth clip mode bit
Setting this bit (at the batch level, not the draw level!) switches to
[-1, 1] clipping instead of Metal's preferred [0, 1] clipping. Using
this bit allows us to drop the clip_halfz lowering we had before, saving
2 instructions in every vertex shader.
Fixes dEQP-GLES2.functional.depth_range.*
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17948>
Alyssa Rosenzweig [Sun, 7 Aug 2022 23:27:06 +0000 (19:27 -0400)]
asahi: Don't advertise ARB_clip_control yet
Our depth handling is pretty busted as it is. Adding clip control into
the mix will only make things more complicated. Best not worry about
that yet. Implementing this ext "properly" has some wrinkles: explain
them.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17948>
Timur Kristóf [Sat, 6 Aug 2022 06:47:22 +0000 (08:47 +0200)]
aco: Add faster code path to store_lds for consecutive write mask.
This makes it more likely to hit the fast path for count == 1
in the split_store_data function.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17923>
Eric Engestrom [Fri, 12 Aug 2022 16:51:51 +0000 (17:51 +0100)]
vk/device-select-layer: fix .sType of VkPhysicalDeviceGroupProperties
The validation layers complained:
> Validation Error: [ VUID-VkPhysicalDeviceGroupProperties-sType-sType ] Object 0: VK_NULL_HANDLE, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xc9edee8b | vkEnumeratePhysicalDeviceGroups: parameter pPhysicalDeviceGroupProperties[0].sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES The Vulkan spec states: sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-VkPhysicalDeviceGroupProperties-sType-sType)
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Fixes:
c196ffaca6d ("vk-device-select: add device group support")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18037>
Lucas Stach [Fri, 12 Aug 2022 17:40:20 +0000 (19:40 +0200)]
etnaviv: don't expose array and 3D texture support on pre-halti GPUs
3D and array texture support is a halti0 GPU feature and
gpu_supports_texture_target() already prevents such textures from being
constructed on older GPUs. Set the screen caps correctly to avoid
exposing EXT_texture_array and OES_texture_3D on those GPUs.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17996>
Lucas Stach [Wed, 10 Aug 2022 20:08:34 +0000 (22:08 +0200)]
etnaviv: allow 3D textures with TS in transfer
The resolve operation to the temporary resource properly iterates
over all layers of the 3D texture, so there is no need to fail the
transfer if we encounter a 3D texture that has a TS BO allocated
due to previous rendering.
Fixes piglit spec@arb_framebuffer_object@fbo-generatemipmap-3d
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17996>
Lucas Stach [Wed, 10 Aug 2022 19:24:03 +0000 (21:24 +0200)]
etnaviv: fix TS buffer allocation for 3D textures
For 3D textures the number of layers is the resource depth. As the TS buffer
allocation only looked at the array size it does not allocate enough TS
storage for 3D textures.
Fixes piglit spec@!opengl 1.2@copyteximage 3d
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17996>
Lucas Stach [Wed, 10 Aug 2022 19:27:27 +0000 (21:27 +0200)]
etnaviv: properly check number of layers in surface creation
3D textures store their number of layers in the resource depth. As the
assert only checks the array_size, it fails on perfectly valid surface
creation requests. Use the proper helper to get the number of layers.
Fixes piglit spec@arb_framebuffer_object@fbo-incomplete
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17996>
Pavel Ondračka [Wed, 10 Aug 2022 07:17:56 +0000 (09:17 +0200)]
r300: fix variables detection for paired ALU and TEX instructions in different branches
TEX instrutions can't write xyz and w to separate registers so we
need to create variables from them first, otherwise we can create
two variables from ALU writing the same register xyz and w in other
branch (this usually works when TEX is not present as the xyz and
w can read/write from different registers).
This fixes regalloc because the variables are later used as a
graph nodes.
The variable order should not matter but it slightly does (leading
to approx 0.3% shader-db temps increase as compared to previous
state), so just sort the variables list afterwards to be as close
to the previous behavior as possible and prevent the regression.
CC: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6936
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17987>
Axel Davy [Thu, 28 Jul 2022 20:55:40 +0000 (22:55 +0200)]
frontend/nine: Fix ff position_t fallback when w = 0
For post-transformed vertices, w = 0 is similar to
w = 1. Replace the value to fix rcp(w).
It is common for apps to pass w = 0 for
position_t.
cc: mesa-stable
Signed-off-by: Axel Davy <davyaxel0@gmail.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18021>
Axel Davy [Sat, 30 Jul 2022 08:09:05 +0000 (10:09 +0200)]
frontend/nine: Fix shader multi-use crash
Due to the driver live shader cache, it's possible
two different d3d9 shaders get the same cso.
As it's disallowed to destroy a shader cso being
bound, nine checks for this scenario. However it
was not taking into account the cso might be from
a different shader.
cc: mesa-stable
Signed-off-by: Axel Davy <davyaxel0@gmail.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18021>
Axel Davy [Fri, 29 Jul 2022 22:25:29 +0000 (00:25 +0200)]
frontend/nine: Fix cso restore bug
Invalidating all state groups is not sufficient, as
some states check for actual changes.
The correct way is to invalidate the
commit mask.
Found with a wine test.
cc: mesa-stable
Signed-off-by: Axel Davy <davyaxel0@gmail.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18021>
Axel Davy [Fri, 29 Jul 2022 19:15:01 +0000 (21:15 +0200)]
frontend/nine: Fix ATOC handling
The previous code was incorrectly checking the previous
value of alphatestenable.
In addition, remove an optimization that cannot hit (as we
filter out redundant state settings).
cc: mesa-stable
Fixes:
1272640d5 ("st/nine: Fix alpha to coverage states")
Signed-off-by: Axel Davy <davyaxel0@gmail.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18021>
Axel Davy [Thu, 11 Aug 2022 20:04:57 +0000 (22:04 +0200)]
frontend/nine: Fix buffer tracking out of bounds
Fixes a crash in a ffxi trace, which draws out of bounds.
This was previously resulting in trying to fill a buffer
resource not big enough.
cc: mesa-stable
Fixes: 380c2bf ("st/nine: Optimize dynamic systemmem buffers")
Signed-off-by: Axel Davy <davyaxel0@gmail.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18021>
Axel Davy [Sun, 24 Jul 2022 09:08:57 +0000 (11:08 +0200)]
frontend/nine: Skip invalid swvp calls
Without this it may crash running wine tests.
According to the test themselves, the correct
behaviour is a bit more complicated, but
that's a first step.
cc: mesa-stable
Signed-off-by: Axel Davy <davyaxel0@gmail.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18021>
Yonggang Luo [Fri, 5 Aug 2022 07:00:27 +0000 (15:00 +0800)]
ci: Enable llvmpipe on MacOS
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17879>
Yonggang Luo [Mon, 1 Aug 2022 20:17:34 +0000 (04:17 +0800)]
ci: Improve MacOS github ci
GALLIUM_DUMP_CPU=true to see dump result
Save the testing log artifacts
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17879>
Yonggang Luo [Thu, 4 Aug 2022 03:27:20 +0000 (11:27 +0800)]
util: Disable usage of __attribute__((__const__)) when the compiler is clang
Clang didn't implement __attribute__((__const__)) properly for release build.
The issue tracker is: https://github.com/llvm/llvm-project/issues/56993
Closes #6781
Closes #6782
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18039>
Yonggang Luo [Sun, 7 Aug 2022 16:05:21 +0000 (00:05 +0800)]
util: Fixes invalid assumption that return non null by function util_format_fetch_rgba_func
Fixes:
e342081c ("util/format: Assert that formats are valid")
Closes #7020
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18024>
Yonggang Luo [Sun, 7 Aug 2022 14:33:50 +0000 (22:33 +0800)]
util: Fixes memory leak in u_printf_test.cpp
That's Fixes:
bdc0a862 ("printf: add some unit tests")
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18024>
Yonggang Luo [Sun, 7 Aug 2022 15:46:13 +0000 (23:46 +0800)]
util: Fixes memory leak in create_cache_item_header_and_blob
stack-trace by asan
Direct leak of 238 byte(s) in 6 object(s) allocated from:
#0 0x7f101e1dbe8f in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:145
#1 0x55ce3a959e2c in create_cache_item_header_and_blob ../src/util/disk_cache_os.c:647
#2 0x55ce3a95c217 in disk_cache_write_item_to_disk_foz ../src/util/disk_cache_os.c:967
#3 0x55ce3a97bce1 in util_queue_thread_func ../src/util/u_queue.c:306
#4 0x55ce3a989c3b in impl_thrd_routine ../src/c11/impl/threads_posix.c:67
#5 0x7f101ddc7ea6 in start_thread nptl/pthread_create.c:477
Fixes:
2a9b4ad1774 ("util/disk_cache: Add option to disable compression")
Cc: mesa-stable
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18024>
Yonggang Luo [Sun, 7 Aug 2022 12:47:48 +0000 (20:47 +0800)]
intel: Fixes compile error of aubinator_viewer.cpp with gcc
Remove '-Wno-class-memaccess' from cpp_args because clang don't support this option
aubinator_viewer.cpp:1183:39: error: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Context'; use assignment or value-initialization instead [-Werror=class-memaccess]
1183 | memset(&context, 0, sizeof(context));
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18024>
Yonggang Luo [Sun, 7 Aug 2022 14:23:15 +0000 (22:23 +0800)]
panfrost: Do no use designated initializer for union
../src/panfrost/lib/tests/test-earlyzs.cpp: In function 'void test(pan_earlyzs, pan_earlyzs, uint32_t)':
../src/panfrost/lib/tests/test-earlyzs.cpp:59:4: error: 'pan_shader_info::<unnamed union>' has no non-static data member named 'can_discard'
59 | };
| ^
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18024>
Yonggang Luo [Sun, 7 Aug 2022 13:20:00 +0000 (21:20 +0800)]
nine: Fixes compile of nine_pipe.h with clang
../../src/gallium/frontends/nine/nine_pipe.h:377:9: error: unannotated fall-through between switch labels [-Werror,-Wimplicit-fallthrough]
default:
^
../../src/gallium/frontends/nine/nine_pipe.h:377:9: note: insert 'break;' to avoid fall-through
default:
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18024>
pal1000 [Thu, 21 Jul 2022 10:59:11 +0000 (13:59 +0300)]
meson: Microsoft / maybe Intel CLC need the all-targets workaround
just like clover
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5666
Fixes:
1506ea2ecb ("Move a bunch of the CLC stuff from src/microsoft to common code")
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17682>
Jesse Natalie [Fri, 22 Jul 2022 22:47:46 +0000 (15:47 -0700)]
meson: Don't include glsl compiler if flex/bison aren't found
Use a disabler for not-found, which causes the GLSL targets to simply
not be generated if the tools don't exist.
Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17724>
Yonggang Luo [Mon, 28 Mar 2022 16:41:50 +0000 (00:41 +0800)]
util: Add os_create_anonymous_file support on win32
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18017>
Yonggang Luo [Thu, 11 Aug 2022 02:24:31 +0000 (10:24 +0800)]
meson: Enable graw tests on mingw
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18016>
Samuel Pitoiset [Fri, 12 Aug 2022 07:58:09 +0000 (09:58 +0200)]
zink: stop skipping bunch of GLESx tests
Did 5 runs in Mesa CI (gles-navi10-valve) and 5 runs with vk-cts-image
on Navi21 without any GPU hangs. I think it's safe to re-enable them.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18029>
Yonggang Luo [Thu, 11 Aug 2022 02:12:34 +0000 (10:12 +0800)]
zink: Use DETECT_OS_WINDOWS instead of 'WIN32'
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18001>
Yonggang Luo [Wed, 30 Mar 2022 23:48:50 +0000 (07:48 +0800)]
util: Enable tests that disabled for msvc/mingw
mesa-sha1_test.cpp and string_buffer_test.cpp are working fine now
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18001>
Yonggang Luo [Mon, 16 May 2022 20:44:07 +0000 (04:44 +0800)]
util: Use `DETECT_OS_WINDOWS` instead `WIN32` in u_process.c
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18001>
Yonggang Luo [Tue, 29 Mar 2022 20:45:31 +0000 (04:45 +0800)]
util: Implement os_get_available_system_memory on Win32
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18001>
Yonggang Luo [Tue, 29 Mar 2022 20:44:55 +0000 (04:44 +0800)]
util: Fixes typo in function os_get_total_physical_memory
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18001>
Yonggang Luo [Tue, 29 Mar 2022 20:32:39 +0000 (04:32 +0800)]
util: Implement util_thread_get_time_nano on win32
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18001>
Mike Blumenkrantz [Mon, 1 Aug 2022 14:41:49 +0000 (10:41 -0400)]
mesa/st: simplify sampler border color swizzling
this reuses the pre-calculated swizzle value to resolve a TODO item and
improve perf
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Mon, 1 Aug 2022 14:37:51 +0000 (10:37 -0400)]
mesa/st: use tracked samplerview swizzle values
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Mon, 1 Aug 2022 14:34:57 +0000 (10:34 -0400)]
mesa: track gl_texture_object swizzle internally
this moves updating of swizzles to the points at which it could possibly change
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Mon, 1 Aug 2022 14:01:56 +0000 (10:01 -0400)]
mesa/st: use pre-calculated format swizzle for samplerviews
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Mon, 1 Aug 2022 14:00:01 +0000 (10:00 -0400)]
mesa: track format swizzles on teximage objects
this will only very rarely change, so stop calculating it during sampler update
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Wed, 3 Aug 2022 20:33:10 +0000 (16:33 -0400)]
zink: add a driver workaround for broken L4A4 on nvidia
KHR-GLES2.core.internalformat.copy_tex_image.luminance4_alpha4_oes,Fail
KHR-GLES2.core.internalformat.texture2d.luminance_alpha_unsigned_byte_luminance4_alpha4_oes,Fail
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Tue, 2 Aug 2022 12:34:12 +0000 (08:34 -0400)]
zink: support emulating alpha formats using new border color quirk
this works for texturing only because swizzles can be used
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Tue, 2 Aug 2022 12:33:02 +0000 (08:33 -0400)]
zink: handle emulated alpha format clears
technically zink doesn't support this, but mesa/st doesn't care what drivers
support for clears
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Tue, 2 Aug 2022 12:31:56 +0000 (08:31 -0400)]
zink: reject native blits for emulated alpha formats
these need u_blitter
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Tue, 2 Aug 2022 12:31:33 +0000 (08:31 -0400)]
zink: add some format functions for emulating alpha formats
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Thu, 21 Jul 2022 16:59:19 +0000 (12:59 -0400)]
zink: stop modifying samplerview swizzle on base struct
this gets (stupidly?) checked in mesa/st, so changing it might trigger
erroneous asserts
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Wed, 20 Jul 2022 20:29:43 +0000 (16:29 -0400)]
util/format: handle SRGB in util_format_luminance_to_red()
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Thu, 21 Jul 2022 15:42:28 +0000 (11:42 -0400)]
gallium: add PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE_ALPHA_NOT_W
mesa/gallium and util_format have different handling of alpha channels:
* mesa/gallium always uses w for the alpha swizzle
* util_format uses the actual component
for drivers which need to use the latter handling, this quirk will use the right
border color
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Thu, 21 Jul 2022 14:15:56 +0000 (10:15 -0400)]
gallium: convert PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE to enum
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Thu, 21 Jul 2022 15:41:55 +0000 (11:41 -0400)]
mesa/st: use plumbed value for srgb_skip_decode in sampler conversion
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Thu, 21 Jul 2022 13:55:44 +0000 (09:55 -0400)]
mesa/st: plumb glsl130_or_later through sampler creation
no functional changes
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Thu, 21 Jul 2022 13:27:30 +0000 (09:27 -0400)]
mesa/st: add ignore_srgb_decode param to st_convert_sampler
same as st_get_texture_sampler_view_from_stobj, no functional changes
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Tue, 2 Aug 2022 13:24:35 +0000 (09:24 -0400)]
mesa: require render target bind for A/L/I in format selection
these are required framebuffer formats in certain versions of GL,
so don't create a texture that can't later be bound to a framebuffer
see also spec@!opengl 3.0@required-texture-attachment-formats
cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Mike Blumenkrantz [Tue, 9 Aug 2022 20:56:08 +0000 (16:56 -0400)]
mesa: fix blending when using luminance/intensity emulation
neither of these have a real alpha channel, so reuse the xrgb blend
clamping here to ensure the "right" alpha value is used
cc: mesa-stable
fixes:
spec@arb_texture_float@fbo-blending-formats
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17687>
Konstantin Kharlamov [Wed, 10 Aug 2022 00:20:19 +0000 (03:20 +0300)]
.mailmap: change spelling for Constantine Kharlamov
The officially used spelling is Konstantin and I've been using it
everywhere for quite some time, so let's change it here as well
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17974>
Konstantin Kharlamov [Tue, 9 Aug 2022 23:53:18 +0000 (02:53 +0300)]
meson: remove source_root() call in main meson.build
source_root function is deprecated in Meson version 0.56.0, so let's use
instead a current_source_dir() function, available in all Meson
versions.
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17974>
Konstantin Kharlamov [Tue, 9 Aug 2022 23:04:51 +0000 (02:04 +0300)]
meson: remove source_root() call in nir compiler path
source_root function is deprecated in Meson version 0.56.0, so let's use
instead a current_source_dir() function, available in all Meson
versions. This also allows to deduplicate some code by declaring
commonly used string at the top meson.build file.
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17974>
Konstantin Kharlamov [Tue, 9 Aug 2022 22:24:39 +0000 (01:24 +0300)]
loader/dri3: remove a no-op free call
When modifiers == NULL, the free(modifiers) is a no-op, so we can just
remove it
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17974>
Konstantin Kharlamov [Tue, 9 Aug 2022 22:18:16 +0000 (01:18 +0300)]
loader/dri3: simplify check for reply
if reply == NULL, the call `free(reply)` is a no-op, so we can have a
single check instead of two.
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17974>
sjfricke [Wed, 10 Aug 2022 12:15:27 +0000 (21:15 +0900)]
isl: fix bug where sb.MOCS is not being set
Currently the sb.MOCS is being reset to zero after struct init.
Signed-off-by: sjfricke <spencerfricke@gmail.com>
Fixes:
c27fcb1d3ba ("isl: Fill in MOCS for NULL depth, stencil, and HiZ buffers.")
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17985>
Tapani Pälli [Fri, 5 Aug 2022 08:00:27 +0000 (11:00 +0300)]
glsl: add check for too large atomic counter buffer offset
Fixes upcoming CTS test for atomic counter buffer offsets.
"It's being clarified that placing an atomic counter into
a buffer at such an offset that the buffer is too large
results in a compilation error."
https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/3124
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17905>
Eric Engestrom [Fri, 12 Aug 2022 08:31:20 +0000 (09:31 +0100)]
pvr: fix memleak in error paths
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18027>
Alessandro Astone [Thu, 7 Jul 2022 08:34:37 +0000 (10:34 +0200)]
Android.mk: Disable lmsensors
Meson might incorrectly enable sensors if it detects lmsensors
on the host system.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6805
Cc: "22.0" "22.1" "22.2" mesa-stable
Reviewed-by: Roman Stratiienko <r.stratiienko@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17391>
Marek Olšák [Wed, 10 Aug 2022 00:41:01 +0000 (20:41 -0400)]
util/xmlconfig: allow drivers to override option values
This corrects the issue that we can't have DRI_CONF_MESA_GLTHREAD(false)
in gallium and then DRI_CONF_MESA_GLTHREAD(true) in drivers.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17976>
Marek Olšák [Wed, 10 Aug 2022 01:23:22 +0000 (21:23 -0400)]
glthread: add missing code for GL_ARB_sparse_texture
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17976>
Marek Olšák [Tue, 9 Aug 2022 23:46:37 +0000 (19:46 -0400)]
glthread: track glBindFramebufferEXT, not just glBindFramebuffer
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17976>
Marek Olšák [Tue, 9 Aug 2022 23:45:08 +0000 (19:45 -0400)]
glthread: track GL_READ_FRAMEBUFFER bindings too
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17976>
Marek Olšák [Tue, 9 Aug 2022 23:15:35 +0000 (19:15 -0400)]
glthread: call _mesa_glthread_DeleteBuffers unconditionally
Deleted buffers were not unbound in glthread.
Fixes:
4fa24747b9089b - glthread: call _mesa_glthread_BindBuffer unconditionally
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17976>
Marek Olšák [Tue, 9 Aug 2022 23:10:35 +0000 (19:10 -0400)]
glthread: unbind framebuffers in glDeleteFramebuffers
Tests:
dEQP-GLES2.functional.lifetime.delete_bound.framebuffer
dEQP-GLES2.functional.state_query.integers.framebuffer_binding_getinteger
Fixes:
e48f676835d - glthread: don't sync for more glGetIntegerv enums for glretrace
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17976>
Tapani Pälli [Fri, 5 Aug 2022 06:15:04 +0000 (09:15 +0300)]
glsl: allow image*Shadow keywords on ES and GLSL >= 420
These were not reserved keywords in GLSL ES and also allowed on
desktop GLSL after 420. New CTS compiler tests will test this.
https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/3007
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17904>
Lionel Landwerlin [Thu, 11 Aug 2022 10:25:17 +0000 (13:25 +0300)]
intel/drm-shim: update shim to support DG2
We were missing :
* GEM_CREATE_EXT (for local memory allocations)
* MMAP_OFFSET (new version of mmap required on DG2)
* GEOMETRY_SUBSLICE query (also required on DG2)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18005>
Charmaine Lee [Tue, 9 Aug 2022 01:02:30 +0000 (18:02 -0700)]
mesa/st: fix reference to nir->info after nir_to_tgsi
The nir shader memory is freed in nir_to_tgsi(), but the already
freed shader info is referenced later when create compute state.
To avoid referencing the freed memory, copy the shader info first before
calling nir_to_tgsi.
Fixes vmx crash running aztec on SVGA driver.
Fixes:
580f1ac4736 ("nir: Extract shader_info->cs.shared_size out of union")
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17999>
Charmaine Lee [Thu, 11 Aug 2022 04:52:19 +0000 (21:52 -0700)]
svga: compare graphics shader stages against COMPUTE
This patch fixes the graphics shader stage comparisons that are left out in
commit
9bbf235fd9d.
Fixes:
9bbf235fd9d ("svga: compare shader type against compute not tess eval")
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18004>
Konstantin Seurer [Mon, 8 Aug 2022 10:37:42 +0000 (12:37 +0200)]
radv: Fix stack size calculation with stage ids
In create_rt_shader, we were setting group_idx to the stage index before.
Fixes the following tests:
dEQP-VK.ray_query.builtin.instancecustomindex.miss.aabbs
dEQP-VK.ray_query.builtin.objectrayorigin.miss.triangles
Fixes: c39ccce ("radv/rt: use stage ID as handle for general and closestHit shaders")
Signed-off-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17936>