Eric Anholt
ee4cee6dbd
android: Disable trying to read/write to the disk cache.
...
We need the disk cache enabled in Android to get EGL_ANDROID_blob_cache's
callbacks called, but we don't actually want to store anything on disk.
Fixes "Failed to create //.cache for shader cache (Read-only file
system)---disabling." spam on init.
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6762 >
2020-09-22 20:41:25 +00:00
Eric Anholt
25b36d900a
mesa: Make the android_stub be a set of non-installed shared libraries.
...
Previously, we included the stubs in our driver binaries, so they didn't
call the actual system libraries for these functions. This was enough to
build-test the Android code in CI without even the NDK.
To make NDK-built Mesa drivers useful, we need to link against these
system libraries that aren't present in the NDK. Split the symbols to
separate non-installed shared libraries and link against those, so that
when you drop the resulting .so in your /vendor/lib64/hw/, it just works
out.
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6805 >
2020-09-22 17:09:22 +00:00
Marek Olšák
283686ad67
amd: add VanGogh support
...
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6820 >
2020-09-22 16:50:07 +00:00
Marek Olšák
d7495bd123
amd: add Dimgrey Cavefish support
...
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6820 >
2020-09-22 16:50:07 +00:00
Marek Olšák
40a50e9398
radeonsi: remove KILL_PS_INF_INTERP/CLAMP_DIV_BY_ZERO, use screen::options
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6810 >
2020-09-22 15:58:51 +00:00
Marek Olšák
98188409d1
radeonsi: move debug options from si_disk_cache_create to si_get_ir_cache_key
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6810 >
2020-09-22 15:58:51 +00:00
Marek Olšák
cd12fcff96
radeonsi: set TRUNC_COORD=0 for Total War: WARHAMMER to fix it
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3233
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6810 >
2020-09-22 15:58:51 +00:00
Michel Dänzer
a1f46d7b69
ci: Use ignore_scheduled_pipelines anchor in .radeonsi-rules
...
Without this, scheduled pipelines erroneously tried to create jobs using
this template, which can't work, because their dependency jobs don't
exist in scheduled pipelines. Unfortunately, this resulted in scheduled
pipelines not running silently, without any direct feedback about what's
wrong (see https://gitlab.com/gitlab-org/gitlab/-/issues/25490 ).
Fixes: 6c8b921572 "ci: Build kernels and rootfs for x86 devices"
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6802 >
2020-09-22 15:08:52 +00:00
Connor Abbott
e781cc7025
tu: Expose shaderStorageImage*WithoutFormat
...
We don't use the format anymore in the backend, except determining the
number of components, and we fallback to 4 there if it's not specified.
So we should be safe to enable this.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6800 >
2020-09-22 14:54:40 +00:00
Connor Abbott
37054a3ef5
ir3: Don't use the format to get the image type
...
Use the sampler type instead, which was recently plumbed through core
NIR, for load/store and the right type for atomics. This removes the
last hard dependency on the image format.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6800 >
2020-09-22 14:54:40 +00:00
Connor Abbott
6ebc20fd88
tu: Expose shaderImageGatherExtended
...
This just allows textureGather() to have offsets, which we already
supported in ir3.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6800 >
2020-09-22 14:54:40 +00:00
Connor Abbott
205f4e9a57
tu: Expose shaderStorageImageExtendedFormats
...
We already supported all the formats on the list, so it's trivial to
enable.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6800 >
2020-09-22 14:54:40 +00:00
Gert Wollny
5d3a72cd61
r600/sfn: Be a bit more verbose when logging skipped FS outputs
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Gert Wollny
2abb9e5ac0
r600/sfn: Acquire the number of FS outputs and the write_all info early
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Gert Wollny
c2c5f71e96
r600/sfn: Take dual source blending output indices into account
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Gert Wollny
44b45a3864
r600/sfn: Handle number of color outputs taking dual source blending into account
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Gert Wollny
234891cc04
r600/sfn: Keep info about dual-source blend in FS
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Gert Wollny
0a59530d0d
r600/sfn: Sort the outputs of the FS according to data index
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Gert Wollny
a57f2d0cfa
r600: Add flag for dual-source blending to shader key
...
Otherwise the number of outputs and the output data index can't be
interpreted correctly.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Gert Wollny
1625a9b9ae
r600/sfn: remove a useless if-condition
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Gert Wollny
4f4e90bfbb
r600/sfn: run late algebraic optimizations
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Gert Wollny
8a9876a29a
r600/sfn: use cnde instead of cnde_int
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6814 >
2020-09-22 14:32:45 +00:00
Michael Tretter
952cf95f8b
etnaviv: fix comment for source of etna_mesa_debug
...
The file and the environment variables have different names than
described in the comment. Fix the comment to avoid confusion.
Signed-off-by: Michael Tretter <m.tretter@pengutronix.de >
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6661 >
2020-09-22 14:24:25 +00:00
Jason Ekstrand
9750164c09
nir: Rename get_buffer_size to get_ssbo_size
...
This makes it explicit that this intrinsic is only for SSBOs. For the
v3dv driver, we'll be adding a get_ubo_size intrinsic and we want to be
able to distinguish between the two.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6812 >
2020-09-22 13:34:12 +00:00
Rhys Perry
f100cf0d30
aco: stop multiplying driver_location by 4
...
This didn't really serve any purpose, doesn't match how FS inputs are
currently done, and prevented us from using
nir_io_add_const_offset_to_base in the future.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6689 >
2020-09-22 12:38:43 +00:00
Rhys Perry
fd872c3cf7
aco: remove dead indirect fs input loading
...
It's asserted that the visit_load_input code isn't reached. It also didn't
handle divergent indexing and this situation should have been lowered
anyway.
I think this used to be needed to pass a dEQP-VK.glsl.indexing.* test, but
it doesn't seem needed anymore.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6689 >
2020-09-22 12:38:43 +00:00
Rhys Perry
7f51a0c670
aco: use nir's constant source helpers more
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6689 >
2020-09-22 12:38:43 +00:00
Rhys Perry
430cc90071
aco: use nir_get_io_offset_src() in visit_load_input()
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6689 >
2020-09-22 12:38:43 +00:00
Rhys Perry
9bba79088d
aco: use io semantics to get an intrinsic's slot
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6689 >
2020-09-22 12:38:43 +00:00
Timur Kristóf
d58a1a87cc
aco: Use NIR IO semantics for tess factor IO locations.
...
Previously we relied on looping over the NIR output variables
to remember the driver location of the tess factors, now use
the new NIR IO semantics instead.
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/6689 >
2020-09-22 12:38:43 +00:00
Lionel Landwerlin
10540c2f6f
anv: implement VK_KHR_copy_commands2
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6801 >
2020-09-22 11:37:12 +00:00
Lionel Landwerlin
4c1c546fa3
vulkan: bump headers/registry to 1.2.154
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Acked-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6801 >
2020-09-22 11:37:12 +00:00
Danylo Piliaiev
f2b17dec12
nir/lower_samplers: Clamp out-of-bounds access to array of samplers
...
Section 5.11 (Out-of-Bounds Accesses) of the GLSL 4.60 spec says:
"In the subsections described above for array, vector, matrix and
structure accesses, any out-of-bounds access produced undefined
behavior.... Out-of-bounds reads return undefined values, which
include values from other variables of the active program or zero."
Robustness extensions suggest to return zero on out-of-bounds
accesses, however it's not applicable to the arrays of samplers,
so just clamp the index.
Otherwise instr->sampler_index or instr->texture_index would be out
of bounds, and they are used as an index to arrays of driver state.
E.g. this fixes such dereference:
if (options->lower_tex_packing[tex->sampler_index] !=
in nir_lower_tex.c
CC: <mesa-stable@lists.freedesktop.org >
Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6428 >
2020-09-22 09:06:52 +00:00
Danylo Piliaiev
0ba82f78a5
nir/large_constants: Eliminate out-of-bounds writes to large constants
...
Out-of-bounds writes could be eliminated per spec:
Section 5.11 (Out-of-Bounds Accesses) of the GLSL 4.60 spec says:
"In the subsections described above for array, vector, matrix and
structure accesses, any out-of-bounds access produced undefined
behavior.... Out-of-bounds writes may be discarded or overwrite
other variables of the active program."
Fixes: 1235850522
Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6428 >
2020-09-22 09:06:52 +00:00
Danylo Piliaiev
66669eb529
nir/lower_io: Eliminate oob writes and return zero for oob reads
...
Out-of-bounds writes could be eliminated per spec:
Section 5.11 (Out-of-Bounds Accesses) of the GLSL 4.60 spec says:
"In the subsections described above for array, vector, matrix and
structure accesses, any out-of-bounds access produced undefined
behavior....
Out-of-bounds writes may be discarded or overwrite
other variables of the active program.
Out-of-bounds reads return undefined values, which
include values from other variables of the active program or zero."
GL_KHR_robustness and GL_ARB_robustness encourage us to return zero
for reads.
Otherwise get_io_offset would return out-of-bound offset which may
result in out-of-bound loading/storing of inputs/outputs,
that could cause issues in drivers down the line.
E.g. this fixes such dereference:
int vue_slot = vue_map->varying_to_slot[intrin->const_index[0]];
in brw_nir.c
CC: <mesa-stable@lists.freedesktop.org >
Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6428 >
2020-09-22 09:06:52 +00:00
Marek Olšák
8e1193b8d3
radeon: rename RADEON_TRANSFER_* -> RADEON_MAP_*
...
Acked-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5749 >
2020-09-22 03:20:54 +00:00
Marek Olšák
31765340fd
gallium: rename transfer flags -> map flags in comments
...
Acked-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5749 >
2020-09-22 03:20:54 +00:00
Marek Olšák
3586068557
gallium: rename pipe_transfer_usage -> pipe_map_flags
...
Acked-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5749 >
2020-09-22 03:20:54 +00:00
Marek Olšák
22253e6b65
gallium: rename PIPE_TRANSFER_* -> PIPE_MAP_*
...
Acked-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5749 >
2020-09-22 03:20:54 +00:00
Marek Olšák
44f1b1be7a
radeonsi: add 16-bit ALU vectorization
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6622 >
2020-09-22 02:44:53 +00:00
Marek Olšák
6702e542cf
radeonsi: don't scalarize 16-bit vec2 ALU opcodes
...
prerequisite for enabling vectorization, so that we don't scalarize
and vectorize at the same time, causing an infinite loop.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6622 >
2020-09-22 02:44:53 +00:00
Marek Olšák
e823742e9f
radeonsi: vectorize IO for better ALU vectorization
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6622 >
2020-09-22 02:44:53 +00:00
Marek Olšák
98a52fecda
radeonsi: implement 16-bit FS color outputs
...
This removes type conversions from 16 bits to 32 bits in the main function
and then back to 16 bits in the epilog.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6622 >
2020-09-22 02:44:53 +00:00
Marek Olšák
d3c63d6f60
radeonsi: set flags for FP16 in shaders
...
v2: remove the enablement code
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com > (v1)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6622 >
2020-09-22 02:44:53 +00:00
Marek Olšák
c5277f035e
radeonsi: don't lower pack for better 16-bit vectorization
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6622 >
2020-09-22 02:44:53 +00:00
Daniel Schürmann
581a3516dc
ac/nir: implement nir_op_[un]pack_[64/32]_*
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6622 >
2020-09-22 02:44:53 +00:00
Vinson Lee
3022cf3bac
glsl: Initialize ir_constant member const_elements in all constructors.
...
Fix defects reported by Coverity Scan.
Uninitialized pointer field (UNINIT_CTOR)
uninit_member: Non-static class member const_elements is not
initialized in this constructor nor in any functions that it calls.
Signed-off-by: Vinson Lee <vlee@freedesktop.org >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6770 >
2020-09-21 18:29:46 -07:00
Vinson Lee
a5967f308c
pan/bi: Fix typo.
...
Fix defect reported by Coverity Scan.
Same on both sides (CONSTANT_EXPRESSION_RESULT)
pointless_expression: The expression src0_u8 || src0_u8 does not
accomplish anything because it evaluates to either of its
identical operands, src0_u8.
Fixes: 2ff53879f2 ("pan/bi: Use new packing")
Signed-off-by: Vinson Lee <vlee@freedesktop.org >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6780 >
2020-09-21 18:03:45 -07:00
Bas Nieuwenhuizen
ade72e677b
st/mesa: Deal with empty textures/buffers in semaphore wait/signal.
...
The actual texture might not have been created yet.
Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3257
CC: mesa-stable
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6788 >
2020-09-22 00:14:55 +00:00
Eric Anholt
08add9f61c
turnip/kgsl: Associate fences with submits.
...
This fixes all the I was seeing in the multiview tests.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4479 >
2020-09-21 22:51:05 +00:00