Daniel Stone
0f46a3191f
CI: Windows: Build LLVM and llvmpipe
...
We will eventually need to build our own LLVM on Windows in order to
build libclc and other bits which are required for the d3d12 build, as
well as to be able to test SPIR-V/OpenCL on llvmpipe.
Start doing this now, building into the base container, and exercise
this by building llvmpipe under Windows.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Jose Fonseca <jfonseca@vmware.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4946 >
2020-05-14 06:40:54 +00:00
Daniel Stone
69ffbcb162
llvmpipe: Expect increased exp precision on Windows
...
'Newer' versions of MSVCRT than 2013 appear to have fixed the bug around expf
precision which caused bb9e8c5090
. It's not clear when this was
changed, but at least on Windows 10 machines with Visual Studio 2019,
expf behaves in line with other implementations.
As there is no clear way to test for the version of the VCRT in use,
simply mark this test as expected-pass rather than xfail.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Jose Fonseca <jfonseca@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4946 >
2020-05-14 06:40:54 +00:00
Rob Clark
cf21b76383
freedreno/ir3: use lower_wrmasks pass
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2020-05-13 20:24:53 -07:00
Rob Clark
42d38ad028
nir: add pass to lower disjoint wrmask's
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2020-05-13 20:24:49 -07:00
Rob Clark
a506d49fae
nir: add helper to copy const_index[]
...
It seems less brittle to not assume they are in the same order for src
and dst instructions.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2020-05-13 20:24:45 -07:00
Rob Clark
3d3cfea78b
nir: fix indices for ir3 ssbo_atomic intrinsics
...
Caught by the sanity checking in nir_intrinsic_copy_const_indices()
(which is introduced by the next patch).
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2020-05-13 20:24:42 -07:00
Rob Clark
ea6b404294
freedreno/ir3: use const_index accessors
...
Cleans up a couple spots that were still open-coding this.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2020-05-13 20:24:38 -07:00
Kristian H. Kristensen
14969aab11
freedreno/ir3: Drop wrmask for ir3 local and global store intrinsics
...
These intrinsics are supposed to map to the underlying hardware
instructions, which don't have wrmask. We use them when we lower
store_output in the geometry pipeline and since store_output gets
lowered to temps, we always see full wrmasks there.
2020-05-13 20:24:33 -07:00
Jason Ekstrand
4627bfcd69
nir: Add some docs to the metadata types
...
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5028 >
2020-05-14 01:57:12 +00:00
Eric Anholt
3111cee2f6
freedreno: Fix attempts to push UBO contents past the constlen on pre-a6xx.
...
The binning variant likely won't have any UBO load code in it, so we were
writing past constlen (and sometimes asserting about it) when loading more
than one ubo block.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5027 >
2020-05-14 01:30:31 +00:00
Eric Engestrom
7336caa52d
docs: update calendar for 20.1.0-rc3
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5026 >
2020-05-14 01:26:41 +00:00
Icecream95
0dd24b381c
panfrost: Fix background showing when using discard
...
This fixes problems in a number of games, including SuperTuxKart,
OpenMW and RVGL.
v2: Use MALI_READS_ZS | 0x20 instead of MALI_WRITES_Z to match with
the blob. Keep using 0x400 | 0x20 when depth is disabled.
Closes : #2620
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5001 >
2020-05-14 01:08:21 +00:00
Danylo Piliaiev
15dd7933bc
anv: Translate relative timeout to absolute when calling anv_timelines_wait
...
Fixes: 34f32a6d66
Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5025 >
2020-05-14 00:52:37 +00:00
Jason Ekstrand
0b5288492b
anv: Set MOCS in 3DSTATE_CONSTANT_* on Gen9+
...
While we're here, we add a nice detailed comment about why always
assuming internal is ok.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5022 >
2020-05-14 00:34:47 +00:00
Jason Ekstrand
e3d8edf3e0
anv: Set 3DSTATE_VF_INSTANCING on the SVGS element
...
It probably doesn't matter because that buffer should have a stride of
zero. However, it still seems like a good idea just to be safe.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5022 >
2020-05-14 00:34:47 +00:00
Eric Anholt
723208988e
freedreno: Drop the noubo fails list for CI, since there aren't any now.
...
The remaining two fails in the list are the same as for the normal CI run.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858 >
2020-05-14 00:10:43 +00:00
Eric Anholt
112c65825f
freedreno/a6xx: Use LDC for UBO loads.
...
It saves addressing math, but may cause multiple loads to be done and
bcseled due to NIR not giving us good address alignment information
currently. I don't have any workloads I know of using non-const-uploaded
UBOs, so I don't have perf numbers for it
This makes us match the GLES blob's behavior, and turnip (other than being
bindful).
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858 >
2020-05-14 00:10:43 +00:00
Eric Anholt
ab93a631b4
freedreno: Trim num_ubos to just the ones we haven't lowered to constbuf.
...
With the upcoming LDC usage in the GL driver, we don't want to be
uploading descriptors for every UBO when they aren't actually in use.
Trimming NIR's num_ubos will avoid that, and cleans up num_ubo handling
elsewhere right now.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858 >
2020-05-14 00:10:43 +00:00
Eric Anholt
d5176c453e
freedreno/ir3: Move i/o offset lowering after analyze_ubo_ranges.
...
I found that when moving more UBOs to load_ubo_ir3, analyze_ubo_ranges
would move things back in a broken way. We can just run this pass later
and drop the _ir3 path.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858 >
2020-05-14 00:10:43 +00:00
Eric Anholt
5387c27140
freedreno/ir3: Leave the cursor alone during ir3_nir_try_propagate_bit_shift.
...
Otherwise, we might end up inserting the nir_intrinsic_load_ubo_ir3()
after the non-offset src's definition, leading to nir_validate() failures.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858 >
2020-05-14 00:10:43 +00:00
Eric Anholt
e0a4d1c4e5
freedreno/ir3: Clean up a silly nir_src_for_ssa(src.ssa).
...
Just copy the src through.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858 >
2020-05-14 00:10:43 +00:00
Eric Anholt
d2a0cde390
nir: Include num_ubos in the printed shader (if nonzero).
...
I keep wanting this number for debugging shaders.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858 >
2020-05-14 00:10:43 +00:00
Jason Ekstrand
492d664be0
util/ra: Add [de]serialization support
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5019 >
2020-05-13 23:36:44 +00:00
Jason Ekstrand
38e68db778
util/vma: Add a debug print helper
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5019 >
2020-05-13 23:36:44 +00:00
Jason Ekstrand
adbcef37d2
util/vma: Add an option to configure high/low preference
...
The vma_heap allocator was originally designed to prefer high addresses
in order to find bugs in ANV's high address handling. However, there
are cases where you might want the allocator to prefer lower addresses
for some reason. This provides a configure bit for exactly this
purpose.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5019 >
2020-05-13 23:36:44 +00:00
Caio Marcelo de Oliveira Filho
f40f8f623a
util/list: Add list_foreach_entry_from_safe
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5019 >
2020-05-13 23:36:44 +00:00
Jason Ekstrand
aeb95fda54
util/list: Add a list pair iterator
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5019 >
2020-05-13 23:36:44 +00:00
Iván Briano
5425968d2e
anv: Implement VK_EXT_custom_border_color
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4898 >
2020-05-13 23:20:50 +00:00
Iván Briano
5b07f142d7
anv: Add a way to reserve states from a pool
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4898 >
2020-05-13 23:20:50 +00:00
Iván Briano
32d631dcd2
anv: Disable B5G6R5_UNORM_PACK16
...
It's not a required format and it causes issues with some features.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4898 >
2020-05-13 23:20:50 +00:00
Iván Briano
6ae0762f5c
anv: use the correct format on Android
...
Per https://android.googlesource.com/platform/frameworks/native/+/master/vulkan/libvulkan/swapchain.cpp#745
the format Android requires is R5G6B5, and we have it backwards here.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4898 >
2020-05-13 23:20:50 +00:00
JibbityJobbity
4cf702c332
drirc: Enable glthread for PCSX2
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5023 >
2020-05-13 22:48:09 +00:00
Eric Engestrom
445e559e35
post_version.py: stop adding release candidates to the index and relnotes
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2870
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4929 >
2020-05-13 21:35:24 +00:00
Eric Engestrom
ae26149e2e
post_version.py: invert is_point
into is_first_release
to make its purpose clearer
...
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4929 >
2020-05-13 21:35:24 +00:00
Eric Engestrom
5fba85bcb8
post_version.py: fix branch name construction for release candidates
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2870
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4929 >
2020-05-13 21:35:24 +00:00
Marek Olšák
64c7363f7e
glthread: stop using GLenum16 to get correct GL errors for out-of-bounds enums
...
Reported by Ian Romanick.
Reviewed-by: Eric Anholt <eric@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5016 >
2020-05-13 20:10:42 +00:00
Marek Olšák
1152af2eda
radeonsi: also enable tgsi_to_nir caching for compute shaders
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4993 >
2020-05-13 19:43:05 +00:00
Axel Davy
45e69e7d11
radeonsi: Enable tgsi to nir disk cache
...
Enable the tgsi to nir cache for radeonsi.
Signed-off-by: Axel Davy <davyaxel0@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4993 >
2020-05-13 19:43:05 +00:00
Axel Davy
f83f538881
st/nine: Enable ttn cache
...
A trace of a Hat in Time, which builds thousands of shaders
takes 339 seconds to run the second time without this patch,
and 41 seconds with it (basically there is no more loading times).
Signed-off-by: Axel Davy <davyaxel0@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4993 >
2020-05-13 19:43:05 +00:00
Axel Davy
4db880d805
ttn: Implement disk cache
...
ttn is slow, let's disk cache it.
Signed-off-by: Axel Davy <davyaxel0@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4993 >
2020-05-13 19:43:05 +00:00
Axel Davy
522bd414f3
ttn: Add new allow_disk_cache parameter
...
For now this parameter doesn't do anything.
It means the implementation is allowed to use
a cache on disk.
Signed-off-by: Axel Davy <davyaxel0@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4993 >
2020-05-13 19:43:05 +00:00
Eric Anholt
6670475a44
freedreno/a6xx: Fix UBWC mipmapping height alignment.
...
After fixing the power of two sizing, pitches worked, but 1-pixel high and
unaligned height miplevels were off.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4931 >
2020-05-13 19:18:16 +00:00
Eric Anholt
81f21ff4ef
freedreno/a6xx: Fix UBWC mipmap sizing.
...
The HW requires a log2 width/height of the level 0 meta_* size in the
descriptors, making it pretty clear that UBWC mipmapping is all
power-of-two sized. Fixes a bunch of failures in the upcoming unit UBWC
layout unit tests.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4931 >
2020-05-13 19:18:16 +00:00
Eric Anholt
b5db2a2574
freedreno/a6xx: Fix UBWC blockheight for RG8.
...
Using texturator on a P3A at 1024x1024, RG8 has log2w/h of 6x7 instead of
R16I/UI's 6x8. The other blockw/h I verified other than cpp=1
(R8/R8I/R8UI didn't use UBWC) and 32 (would need a bigger type).
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4931 >
2020-05-13 19:18:16 +00:00
Eric Anholt
9da4ce9953
freedreno: Pull the tile_alignment lookup for a layout to a helper.
...
The r8g8 case UBWC alignment will be changing in the next commit, so
fdl6_get_ubwc_blockwidth needs to start paying attention to r8g8 too.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4931 >
2020-05-13 19:18:16 +00:00
Eric Anholt
dc7ccdb3f5
freedreno/a6xx: Add a testcase for UBWC buffer sharing.
...
These offsets are hand-computed referencing msm_media_info.h, and match
our driver's current behavior.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4931 >
2020-05-13 19:18:16 +00:00
Eric Anholt
e32783c644
freedreno/a6xx: Improve layout testcase logging for UBWC fails.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4931 >
2020-05-13 19:18:16 +00:00
Eric Anholt
2e4ddb6353
freedreno/a4xx+: Increase max texture size to 16384.
...
Noticed when poking around with texture layouts and found that my big
texture layout from the blob buffer overflowed. Values come from
http://vulkan.gpuinfo.org for Adreno 418, 512, 630.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4931 >
2020-05-13 19:18:16 +00:00
Daniel Schürmann
1f7d1541df
nir: reset ssa-defs as non-divergent during divergence analysis instead of upfront
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4062 >
2020-05-13 18:49:22 +00:00
Daniel Schürmann
1b881f3d8e
nir: simplify phi handling in divergence analysis
...
This patch adds some control flow information to the
state to keep track whether a loop contains divergent
continue or break statements to not having to
recalculate this property for every phi.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4062 >
2020-05-13 18:49:22 +00:00