Bas Nieuwenhuizen
5f97dfc4c8
vulkan/wsi/x11: Ensure we create at least minImageCount images.
...
Doom Eternal happily creates a swapchain with 2 images for IMMEDIATE...
This fixes a 10% performance issues with Doom Eternal for me.
Since the game only sets a minImageCount increasing till our own minimum
is totally okay.
CC: <stable@lists.freedesktop.org >
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2684
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3156
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4368 >
2020-06-24 09:18:01 +00:00
Mike Blumenkrantz
7b3976d3f8
zink: clamp VkImageCreateInfo.arrayLayers to 1 for image resource creation
...
this is required by spec, so we can generally assume that any time it's 0 here
this is the result of us being lazy elsewhere in the zink driver when we're
manually creating this sort of buffer
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5614 >
2020-06-24 07:01:00 +00:00
Kenneth Graunke
6a5fb31fef
nir: Fix divergence analysis for tessellation input/outputs
...
The load_per_vertex_{input,output} intrinsics simply mean that they're
reading an arrayed input/output, which have one element per invocation.
Most accesses to those use gl_InvocationID as the subscript. However,
it's totally possible to read any element of the array. For example,
an evaluation shader might read gl_in[2].gl_Position, or a control
shader might read output[0].
For threads processing a single patch, an input/output load is
convergent if and only if both sources (the per-vertex-array subscript
and the offset) are convergent. For threads processing multiple
patches, we continued to mark them divergent.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Acked-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5613 >
2020-06-24 03:25:10 +00:00
Kenneth Graunke
8278a46b26
intel: Disable loading drivers on DG1 devices for now
...
Kernel support for DG1 has not yet been merged upstream; per our
long-standing DRM subsystem policy, we should not enable the platform
in userspace until the kernel patches are merged and functional.
We will re-enable this in the future. In the meantime, we retain all
of the infrastructure and code for the platform so that we can continue
developing DG1 support in upstream.
See a discussion here:
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4956#note_547775
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch >
Acked-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5617 >
2020-06-24 02:48:04 +00:00
Jordan Justen
7f48c6b6a2
iris/compute: Split out iris_load_indirect_location
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5571 >
2020-06-24 00:14:36 +00:00
Jordan Justen
6557c8294d
iris: Split walker and state update into iris_upload_gpgpu_walker
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5571 >
2020-06-24 00:14:36 +00:00
Jordan Justen
ecf3335eef
anv/cmd_buffer: Split GPGPU_WALKER out to emit_gpgpu_walker
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5571 >
2020-06-24 00:14:36 +00:00
Jordan Justen
759b7f83dd
anv/pipeline: Split VFE/INTERFACE_DESCRIPTOR out to emit_media_cs_state
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5571 >
2020-06-24 00:14:35 +00:00
Jonathan Marek
a5918ac63e
turnip: use pipeline cs for shader programs instead of separate bo
...
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5606 >
2020-06-23 21:12:09 +00:00
Jonathan Marek
a58de1b8d3
turnip: fix ts_cs_memory typo
...
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5606 >
2020-06-23 21:12:09 +00:00
Kristian H. Kristensen
bf92f041fe
freedreno: Handle DRM_FORMAT_MOD_INVALID in shared code
...
layout_resource_for_modifier() needs to handle DRM_FORMAT_MOD_INVALID
as well, since src/gallium/frontends/dri/dri2.c uses this to indicate
"no modifier" when it's called through the older non-modifier entry
points.
This is similar to 334788d4 ("freedreno: allow INVALID modifier") but
for the generic implementation.
Fixes: 98910626 ("freedreno/a6xx: Implement layout for DRM_FORMAT_MOD_QCOM_COMPRESSED")
Closes : #3154
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5611 >
2020-06-23 19:10:40 +00:00
Jason Ekstrand
561aaeeb48
intel/eu: Add the RNDU opcode
...
We don't want to use it on gen5 and earlier because only RNDD can be
done with a single instruction and we can implement RNDU(x) as -RNDD(-x)
so it's better to just do that when we have the instruction. On gen6
and above, we may as well just use the right instruction.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5596 >
2020-06-23 17:43:54 +00:00
Jason Ekstrand
e0ab48e3ea
intel/eu: Set the right subnr for ALIGN16 destinations
...
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5596 >
2020-06-23 17:43:54 +00:00
Jason Ekstrand
8a0d772dca
intel/eu: Add a brw_urb_dest_msg_type helper
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5596 >
2020-06-23 17:43:54 +00:00
Kenneth Graunke
2c762955d4
intel/eu: Add a brw_urb_desc helper
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5596 >
2020-06-23 17:43:53 +00:00
Jason Ekstrand
ecda98fbb2
intel/compiler: Expose brw_texture_offset to C
...
Some day we probably want to move it out of brw_shader if we're going to
share it with IBC but that can be another day.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5596 >
2020-06-23 17:43:53 +00:00
Jason Ekstrand
479797e130
intel/fs: Move more prog_data setup into populate_wm_prog_data
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5596 >
2020-06-23 17:43:53 +00:00
Jason Ekstrand
fc519cad57
intel/fs: Break wm_prog_data setup into a helper
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5596 >
2020-06-23 17:43:53 +00:00
Jason Ekstrand
2687ec5ee6
intel/fs: Expose a couple of NIR lowering helpers
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5596 >
2020-06-23 17:43:53 +00:00
Kenneth Graunke
bfc1fd22cd
iris: Delete useless #define
...
When I was bringing up the driver, I had BLORP use #ifdefs for
softpin-mode vs. relocation-mode. That all got reworked during
review, but apparently this #define is still kicking around,
even though nothing uses it.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5610 >
2020-06-23 10:25:31 -07:00
Jose Maria Casanova Crespo
ba15bb383f
nir: only uniforms with dynamically_uniform offset are dynamically_uniform
...
Previously all nir_intrinsic_load_uniform that were used as sources were
considered to be dynamically_uniform but when offsets of load_uniform
are indirect it can not be determined.
This fixes artefacts in Google Maps 3D view in V3D.
Fixes: 886d46b089 ("nir: Add a function to determine if a source is dynamically uniform")
Reviewed-by: Neil Roberts <nroberts@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5587 >
2020-06-23 13:04:04 +00:00
Jonathan Marek
20e12d9ef4
turnip: implement CmdDrawIndirectByteCountEXT
...
Fixes these deqp tests:
dEQP-VK.transform_feedback.simple.backward_dependency*
dEQP-VK.transform_feedback.simple.draw_indirect*
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5579 >
2020-06-23 10:44:19 +00:00
Jonathan Marek
6cf87d777a
turnip: enable VK_EXT_index_type_uint8
...
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5579 >
2020-06-23 10:44:19 +00:00
Jonathan Marek
52da27aede
turnip: refactor CmdDraw* functions (and a few fixes)
...
This cleans up the CmdDraw* functions to be more straightforward. And a few
fixes applied while going through it:
* Fix indirect draw commands not adding the buffer->bo_offset, and ignoring
drawCount/stride parameters (deqp tests not testing indirect draws very
much apparently).
* Fixed a potential issue with RESTART_INDEX + secondary command bufs.
* Add missing logic for 8-bit indices
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
# Conflicts:
# src/freedreno/vulkan/tu_cmd_buffer.c
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5579 >
2020-06-23 10:44:19 +00:00
Jonathan Marek
98b0d90047
turnip: rework streamout state and add missing counter buffer read/writes
...
Rework the streamout state and at the same time fix some issues, the
biggest one being to actually use the counter buffers instead of ignoring
them completely.
(note it appears the dEQP tests are bad and able to pass with the previous
broken behavior of not ever reading/writing from the counter buffers)
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5579 >
2020-06-23 10:44:19 +00:00
Marek Olšák
012b7aab26
driconf: add workarounds for SPECviewperf13
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5459 >
2020-06-23 09:25:24 +00:00
Marek Olšák
ca719c6e30
glsl,driconf: add allow_glsl_120_subset_in_110 for SPECviewperf13
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5459 >
2020-06-23 09:25:24 +00:00
Marek Olšák
f8e8701cf1
radeonsi: replace ctx->screen with sscreen in si_flush_gfx_cs
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5506 >
2020-06-23 09:12:16 +00:00
Marek Olšák
470b319813
radeonsi: don't wait for idle at the end of gfx IBs
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5506 >
2020-06-23 09:12:16 +00:00
Samuel Pitoiset
0aca04afa5
aco: fix printing ASM on GFX6-7 again
...
Checking errno is actually wrong because it's only updated if
popen() fails (ie. NULL). One solution is to check if the first
line is empty.
Fixes: c95d258d1b ("aco: fix printing ASM on GFX6-7 if clrxdisasm is not found")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5591 >
2020-06-23 07:45:03 +00:00
Marek Olšák
a2d7f4fe5a
glthread: handle ARB_vertex_attrib_binding
...
This handles ARB_vertex_attrib_binding for vertex uploads correctly.
Before this, the extension might have led to crashes if non-VBO vertex
attribs were present.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5303 >
2020-06-23 06:41:37 +00:00
Marek Olšák
66c2c9c6a9
glthread: rename non_vbo_attrib_mask -> user_buffer_mask, attribs -> buffers
...
just a cleanup, no change in behavior
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5303 >
2020-06-23 06:41:37 +00:00
Marek Olšák
2bf425431d
glapi: fix incorrect param names in ARB_vertex_attrib_binding functions
...
no change in behavior
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5303 >
2020-06-23 06:41:37 +00:00
Marek Olšák
2b8b62c55b
ac/nir: fix 64-bit division for GL CTS
...
This fixes: KHR-GL45.gpu_shader_fp64.builtin.mod_*
Fixes: ba2ec1f3 "ac/nir: use llvm.amdgcn.rcp in ac_build_fdiv()"
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5531 >
2020-06-23 04:46:55 +00:00
Marek Olšák
3fec2f67c3
radeonsi: compact MRTs to save PS export memory space
...
If there are holes between color outputs (e.g. a shader exports MRT1, but
not MRT0), we can remove the holes by moving higher MRTs lower.
The hardware will remap the MRTs to their correct locations if we remove
holes in SPI_SHADER_COL_FORMAT but not CB_SHADER_MASK.
This is a performance optimization, but MRTs with holes are pretty rare,
so there is most likely no effect on any app.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5535 >
2020-06-23 00:23:51 -04:00
Jason Ekstrand
6ac99b9f39
anv: Bump the advertised patch version to 145
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5597 >
2020-06-22 23:24:25 +00:00
Jason Ekstrand
a9ee1b9cf9
vulkan: Update Vulkan XML and headers to 1.2.145
...
Acked-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5597 >
2020-06-22 23:24:25 +00:00
Jordan Justen
c72832e83c
anv: Make use of devinfo has_aux_map field
...
Reworks:
* Use device rather than physical_device for info. (Lionel)
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5572 >
2020-06-22 22:32:03 +00:00
Jordan Justen
8c36936832
iris: Make use of devinfo has_aux_map field
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5572 >
2020-06-22 22:32:03 +00:00
Eric Engestrom
04e8eaf4e8
util: rename xmlpool.h to driconf.h
...
To make it clearer what it is and does.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5440 >
2020-06-22 21:50:12 +00:00
Eric Engestrom
2ef983dca6
driconf: drop now unused translation facility
...
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5440 >
2020-06-22 21:50:12 +00:00
Eric Engestrom
b1f647a3b4
driconf: drop 9% swedish translation
...
Only 7 of the 72 strings are translated, and there doesn't seem to be
any effort to keep it updated.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5440 >
2020-06-22 21:50:12 +00:00
Eric Engestrom
0a19565592
driconf: drop 8% dutch translation
...
Only 6 of the 72 strings are translated, and there doesn't seem to be
any effort to keep it updated.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5440 >
2020-06-22 21:50:12 +00:00
Eric Engestrom
56d76859fa
driconf: drop 6% french translation
...
Only 4 of the 72 strings are translated, and there doesn't seem to be
any effort to keep it updated.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5440 >
2020-06-22 21:50:12 +00:00
Eric Engestrom
a029eafba3
driconf: drop 26% spanish translation
...
Only 19 of the 72 strings are translated, and there doesn't seem to be
any effort to keep it updated.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5440 >
2020-06-22 21:50:12 +00:00
Eric Engestrom
29ee6f6c6a
driconf: drop 15% german translation
...
Only 11 of the 72 strings are translated, and there doesn't seem to be
any effort to keep it updated.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5440 >
2020-06-22 21:50:12 +00:00
Eric Engestrom
ae7759eb21
driconf: drop 28% catalan translation
...
Only 20 of the 72 strings are translated, and there doesn't seem to be
any effort to keep it updated.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5440 >
2020-06-22 21:50:12 +00:00
Mike Blumenkrantz
6e24047573
zink: use correct define value for reserved slot count in ntv
...
this is zero-indexed, so we need to include the zero index in the count
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5592 >
2020-06-22 21:19:18 +00:00
Jordan Justen
c323e0ddf3
intel/dev: Add device info for DG1
...
Reworks:
* Anuj: Set is_dg1
* Anuj: Add dg1 to gen_device_name_to_pci_device_id
* Anuj: Update simulator id
* Rafael: has_llc = false
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4956 >
2020-06-22 11:42:00 -07:00
Rafael Antognolli
37a724e4ae
anv/dg1: Don't use SET_TILING kernel uapi.
...
It is not available on discrete platforms anymore.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4956 >
2020-06-22 11:42:00 -07:00