Chia-I Wu [Thu, 8 Apr 2021 00:53:44 +0000 (17:53 -0700)]
venus: include individual venus-protcol headers
Include individual headers than vn_protocol_driver.h to save compile
time.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Thu, 8 Apr 2021 00:44:41 +0000 (17:44 -0700)]
venus: split out vn_queue.[ch]
Move VkQueue, VkFence, VkSemaphore, and VkEvent functions to the new
files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Thu, 8 Apr 2021 00:30:54 +0000 (17:30 -0700)]
venus: split out vn_device_memory.[ch]
Move VkDeviceMemory functions to the new files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Thu, 8 Apr 2021 00:27:26 +0000 (17:27 -0700)]
venus: split out vn_image.[ch]
Move VkImage{,View} and VkSampler{,YcbcrConversion} functions to the new
files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Thu, 8 Apr 2021 00:25:40 +0000 (17:25 -0700)]
venus: split out vn_buffer.[ch]
Move VkBuffer{,View} functions to the new files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Wed, 7 Apr 2021 23:48:25 +0000 (16:48 -0700)]
venus: split out vn_descriptor_set.[ch]
Move VkDescriptor{Pool,Set,SetLayout,UpdateTemplate} functions to the
new files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Wed, 7 Apr 2021 23:42:37 +0000 (16:42 -0700)]
venus: split out vn_render_pass.[ch]
Move VkRenderPass and VkFramebuffer functions to the new files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Wed, 7 Apr 2021 23:37:33 +0000 (16:37 -0700)]
venus: split out vn_query_pool.[ch]
Move VkQueryPool functions to the new files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Wed, 7 Apr 2021 23:29:38 +0000 (16:29 -0700)]
venus: split out vn_pipeline.[ch]
Move VkShaderModule and VkPipeline{,Layout,Cache} functions to the new
files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Wed, 7 Apr 2021 22:19:46 +0000 (15:19 -0700)]
venus: split out vn_command_buffer.[ch]
Move VkCommand{Pool,Buffer} functions to the new files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Wed, 7 Apr 2021 22:26:15 +0000 (15:26 -0700)]
venus: prepare for splitting vn_device.[ch]
Make virtqueue/ring sync functions available to other files.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Chia-I Wu [Wed, 7 Apr 2021 22:01:06 +0000 (15:01 -0700)]
venus: update venus-protocol headers
This takes vn_protocol_driver_{structs,commands,calls}.h and split them
by Vulkan handle types. This enables us to split up vn_device.c in the
following commits without slowing down compile time too much.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10117>
Connor Abbott [Thu, 25 Feb 2021 10:14:53 +0000 (11:14 +0100)]
ir3/postsched: Make sure to schedule inputs before kill
Before, we would prefer to schedule inputs before kills, which works
assuming that the live range of the bary_ij system value don't get
split and therefore all bary.f are ready at the start of the block.
However live range splitting can mess up that assumption and cause a
kill to get scheduled before a move that leads to a bary.f.
This fixes even e.g. dEQP-GLES2.functional.shaders.discard.basic_always
on a3xx before introducing CSE of collect instructions, but even after
that it could be a problem theoretically as the register allocator
doesn't guarantee that any live ranges aren't split.
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10143>
Mike Blumenkrantz [Fri, 9 Apr 2021 15:35:59 +0000 (11:35 -0400)]
anv: fix debugoptimized build compile
this function is only needed for asserts
Fixes:
2e4c153c6ba ("anv/image: Refactor check_memory_bindings()")
fixes #4599
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10141>
Adam Jackson [Thu, 8 Apr 2021 22:46:02 +0000 (18:46 -0400)]
dri: Use __DRI_BUFFER_COUNT consistently internally
These arrays were all sized with insufficiently large magic numbers,
which is probably not a good idea.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10142>
Mike Blumenkrantz [Fri, 9 Apr 2021 14:43:59 +0000 (10:43 -0400)]
zink: don't lose existing pNext when using wsi_image_create_info in image creation
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10138>
Alexander von Gluck IV [Sun, 7 Mar 2021 22:57:17 +0000 (16:57 -0600)]
egl/haiku: Fix ConfigID naming inline with mesa
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9454>
Jesse Natalie [Thu, 8 Apr 2021 16:33:46 +0000 (09:33 -0700)]
meson: Refuse to build lavapipe without llvmpipe
This config doesn't work, and as of recently it no longer links.
Let's fail it early.
Fixes:
7b79db11c2e ("lavapipe: enable correct workgroup sizing")
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10107>
Matt Turner [Thu, 8 Apr 2021 20:31:14 +0000 (20:31 +0000)]
ir3: Don't count (nopX) towards the wrong category
Prior to this commit
(nop3) mad.f32 r0.y, c0.x, r1.w, c0.y
was counted as 4 cat3 instructions (and still 3 cat0/nops) in shader-db
results. With this change, it is counted as only 1 cat3 instruction.
Probably never going to have better shader-db results than this in my
career:
total cat2 in shared programs: 1214667 -> 732058 (-39.73%)
cat2 in affected programs: 1194729 -> 712120 (-40.39%)
helped: 8551
HURT: 0
total cat3 in shared programs: 376448 -> 274745 (-27.02%)
cat3 in affected programs: 344918 -> 243215 (-29.49%)
helped: 7222
HURT: 0
Reviewed-by: Rob Clark <robdclark@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10116>
Mike Blumenkrantz [Thu, 8 Apr 2021 18:52:47 +0000 (14:52 -0400)]
zink: only unmap PIPE_MAP_ONCE in synchronous mode
this flag cannot be used to infer that a transfer_map call will be matched
by a transfer_unmap call when tc reordering is active
fixes #4600
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10114>
Mike Blumenkrantz [Thu, 8 Apr 2021 14:08:00 +0000 (10:08 -0400)]
zink: handle checking batch completion from other contexts without timelines
if a batch state can't be found, it may exist on a different context, so the screen
value needs to be checked
if the screen value indicates that the batch hasn't completed and we're waiting,
force a flush so there's a fence that can be waited upon
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Tested-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10115>
Mike Blumenkrantz [Thu, 8 Apr 2021 14:52:55 +0000 (10:52 -0400)]
zink: make timeline semaphores per-screen
I misread the spec, and it turns out timeline ids can't be reused across
semaphores. This is obvious in retrospect, but what can be done?
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Tested-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10115>
Samuel Pitoiset [Tue, 19 Jan 2021 15:12:01 +0000 (16:12 +0100)]
radv: allow to force VRS rates on GFX10.3 with RADV_FORCE_VRS
This allows to force the VRS rates via RADV_FORCE_VRS, the supported
values are 2x2, 1x2 and 2x1. This supports the primitive shading rate
mode for non GUI elements.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7794>
Samuel Pitoiset [Tue, 19 Jan 2021 13:58:59 +0000 (14:58 +0100)]
radv: use explicit VRS mode when configuring PA_CL_VRS_CNTL
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7794>
Lionel Landwerlin [Fri, 9 Apr 2021 11:58:19 +0000 (14:58 +0300)]
microsoft: fixup clc_log() define
The local msg variable shadows one of the argument of
SPIRVMessageConsumer making the error message "(null)".
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10133>
Iago Toral Quiroga [Thu, 8 Apr 2021 07:08:20 +0000 (09:08 +0200)]
broadcom/compiler: rename unifa tracking fields
The term 'last' may be misleading because the offset represents
the current unifa offset, which is the offset used by the last
load plus 4 bytes, so rename these to use the term 'current'
instead.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10100>
Iago Toral Quiroga [Tue, 6 Apr 2021 11:53:36 +0000 (13:53 +0200)]
broadcom/compiler: sort constant UBO loads by index and offset
This implements a NIR pass that groups together constant UBO loads
for the same UBO index in order of increasing offset when the distance
between them is small enough that it enables the "skip unifa write"
optimization.
This may increase register pressure because it can move UBO loads
earlier, so we also add a compiler strategy fallback to disable the
optimization if we need to drop thread count to compile the shader
with this optimization enabled.
total instructions in shared programs:
13557555 ->
13550300 (-0.05%)
instructions in affected programs: 814684 -> 807429 (-0.89%)
helped: 4485
HURT: 2377
Instructions are helped.
total uniforms in shared programs: 3777243 -> 3760990 (-0.43%)
uniforms in affected programs: 112554 -> 96301 (-14.44%)
helped: 7226
HURT: 36
Uniforms are helped.
total max-temps in shared programs: 2318133 -> 2333761 (0.67%)
max-temps in affected programs: 63230 -> 78858 (24.72%)
helped: 23
HURT: 3044
Max-temps are HURT.
total sfu-stalls in shared programs: 32245 -> 32567 (1.00%)
sfu-stalls in affected programs: 389 -> 711 (82.78%)
helped: 139
HURT: 451
Inconclusive result.
total inst-and-stalls in shared programs:
13589800 ->
13582867 (-0.05%)
inst-and-stalls in affected programs: 817738 -> 810805 (-0.85%)
helped: 4478
HURT: 2395
Inst-and-stalls are helped.
total nops in shared programs: 354365 -> 342202 (-3.43%)
nops in affected programs: 31000 -> 18837 (-39.24%)
helped: 4405
HURT: 265
Nops are helped.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10100>
Iago Toral Quiroga [Tue, 6 Apr 2021 11:39:23 +0000 (13:39 +0200)]
broadcom/compiler: allow compilation strategies to limit minimum thread count
This adds a minimum thread count parameter to each compilation strategy with
the intention to limit the minimum allowed thread count that can be used to
register allocate with that strategy.
For now all strategies allow the minimum thread count supported by the
hardware, but we will be using this infrastructure to impose a more
strict limit in an upcoming optimization.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10100>
Iago Toral Quiroga [Thu, 8 Apr 2021 07:02:16 +0000 (09:02 +0200)]
broadcom/compiler: add a definition for the unifa skip distance
We will be using this distance to setup another optimization in a
follow-up patch.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
x# Please enter the commit message for your changes. Lines starting
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10100>
Iago Toral Quiroga [Fri, 9 Apr 2021 08:47:51 +0000 (10:47 +0200)]
v3dv: fix index buffer binding
This can be called outside a render pass so we should not expect to have
a job available. Also, we should not be emitting state here, instead we
should do in the pre-draw handler with all the other draw call state.
Fixes cases of crashes in RenderDoc when selecting elements in the
Event Browser.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10130>
Juan A. Suarez Romero [Thu, 8 Apr 2021 09:53:50 +0000 (11:53 +0200)]
broadcom/compiler: fix first_component assertion
first_component is an uint, and thus if it takes value 0 we can't know
if it is because writemask has its first bit to 1, or all bits to 0.
As we want to ensure that at least one bit is set, apply the assertion
in writemask.
Fixes CID#1472829 "Macro compares unsigned to 0 (NO_EFFECT)".
v2:
- Restore "first_component <= last_component" assertion (Iago)
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10103>
Gert Wollny [Thu, 8 Apr 2021 16:41:47 +0000 (18:41 +0200)]
r600: Enable sb for nir only on specific request
SB si known to be buggy and the ultimate aim is to make it go away. To
test workloads with better optimizations it makes sense to be able to
enable SB, but for the NIR backend it should not be enabled together
with NIR the default. Therefore an a specific debug option "nirsb" that
enables NIR with SB.
Fixes:
3b27243b01ecdfea6df068338e56ffbd9b16b663
r600: Enable sb also for NIR
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10108>
Samuel Pitoiset [Tue, 6 Apr 2021 12:29:47 +0000 (14:29 +0200)]
radv: add MSAA support to CopyImage() on compute queue
CopyImage supports copying MSAA images if the number of samples match.
Found by inspection because this is untested by CTS for some reasons.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10055>
Samuel Pitoiset [Thu, 8 Apr 2021 17:16:04 +0000 (19:16 +0200)]
radv: do not clamp framebuffer dimensions to the minimum dimension
This shouldn't be needed and this is going to be wrong with VRS
attachments because dimensions are divided by the VRS texel size.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10111>
Tapani Pälli [Tue, 6 Apr 2021 16:03:04 +0000 (19:03 +0300)]
egl: support no error attribute set to false with ES 1.1
We advertise the extension so it should support case where context has
attribute EGL_CONTEXT_OPENGL_NO_ERROR_KHR set to EGL_FALSE indepdendent
of ES version used.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4586
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10102>
Erik Faye-Lund [Mon, 29 Mar 2021 12:02:03 +0000 (14:02 +0200)]
compiler/glsl: clean up output
It's really hard to make sure we have the right amount of %s in the
format string, so let's change how we generate this string.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9896>
Erik Faye-Lund [Wed, 31 Mar 2021 08:09:58 +0000 (10:09 +0200)]
compiler/glsl: fix volatile string
The reason the member has a leading underscore is because volatile is a
keyword in C. We don't want to carry that detail into the error-string,
so let's drop the underscore.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9896>
Erik Faye-Lund [Mon, 29 Mar 2021 11:44:50 +0000 (13:44 +0200)]
compiler/glsl: correct the number of string-arguments
This format-string seems to have been incorrect since it's inception.
But there's also been commits that have both forgotten to add and remove
flags as appropriate as well.
Let's correct the format-list. This was done by counting by hand. A
better solution for the long-term is coming in a future commit.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9896>
Jesse Natalie [Tue, 6 Apr 2021 17:48:26 +0000 (10:48 -0700)]
microsoft/compiler: Add some more float16 support
We can support float16 constants, b2f16, and casts to float16.
Reviewed-by: Enrico Galli <enrico.galli@intel.com>
Reviewed-by: Michael Tang <tangm@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10063>
Jesse Natalie [Tue, 6 Apr 2021 17:47:34 +0000 (10:47 -0700)]
microsoft/spirv_to_dxil: Support doubles
First, we need to lower alu to scalar so that all alu ops on doubles
only take one input. Then, we can use our new double lowering pass.
Reviewed-by: Enrico Galli <enrico.galli@intel.com>
Reviewed-by: Michael Tang <tangm@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10063>
Jesse Natalie [Tue, 6 Apr 2021 17:46:21 +0000 (10:46 -0700)]
microsoft/compiler: Implement new double pack/unpack alu ops
MakeDouble is pretty straightforward, but SplitDouble is interesting
since it returns a unique 2-element struct.
Reviewed-by: Enrico Galli <enrico.galli@intel.com>
Reviewed-by: Michael Tang <tangm@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10063>
Jesse Natalie [Tue, 6 Apr 2021 17:44:55 +0000 (10:44 -0700)]
microsoft/compiler: Add a lowering pass to emit double [un]pack instructions
Whenever we have an ALU op that's operating on a double, we'll unpack
it as an integer, then repack it as a float. When we have an ALU op that
returns a double, we'll unpack it as a double, then repack it as an integer.
Then, simple algebraic opts will remove any redundant unpack/repack ops,
so we should be left with constructing and deconstructing doubles using
the right operations.
Reviewed-by: Enrico Galli <enrico.galli@intel.com>
Reviewed-by: Michael Tang <tangm@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10063>
Jesse Natalie [Tue, 6 Apr 2021 17:42:59 +0000 (10:42 -0700)]
nir: Add a new opcode for [un]packing doubles
HLSL doesn't support bitcasting a 64bit integer to a double. DXIL
doesn't have generic pack/unpack instructions, so we lower those to
integer bitwise ops. As a result, NIR generic double pack/unpack would
require our backend to emit a bitcast to get a double, but we want
to match HLSL semantics and emit MakeDouble/SplitDouble.
Adding a dedicated opcode for double pack/unpack allows us to add a
pass to emit that instead, which lets our backend emit the right
instruction to pack and unpack doubles.
Acked-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10063>
Jesse Natalie [Mon, 5 Apr 2021 20:22:16 +0000 (13:22 -0700)]
microsoft/compiler: Support fp16 i/o vars
Reviewed-by: Enrico Galli <enrico.galli@intel.com>
Reviewed-by: Michael Tang <tangm@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10063>
Jesse Natalie [Mon, 5 Apr 2021 19:19:40 +0000 (12:19 -0700)]
microsoft/spirv_to_dxil: Lower io arrays
Reviewed-by: Enrico Galli <enrico.galli@intel.com>
Reviewed-by: Michael Tang <tangm@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10063>
Jesse Natalie [Mon, 5 Apr 2021 17:40:01 +0000 (10:40 -0700)]
microsoft/spirv_to_dxil: Lower globals to function_temp
Reviewed-by: Enrico Galli <enrico.galli@intel.com>
Reviewed-by: Michael Tang <tangm@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10063>
Mike Blumenkrantz [Fri, 9 Apr 2021 00:33:30 +0000 (20:33 -0400)]
zink: fix CI flakiness in glx-multithread-clearbuffer
unsetting zink from GALLIUM_DRIVER is required in order for lavapipe to
work, but setting it back is totally broken in the case where an app
creates a ton of screens simultaneously
instead, just leave it set to llvmpipe, and if a race condition occurs,
at least llvmpipe isn't going to fail a test that zink passes
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10120>
Bas Nieuwenhuizen [Tue, 9 Mar 2021 02:32:32 +0000 (03:32 +0100)]
radv: Support DCC modifiers fully.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9998>
Bas Nieuwenhuizen [Tue, 9 Mar 2021 02:41:36 +0000 (03:41 +0100)]
radv: Add retiling for foreign queues.
This way modifier images that don't go through the present layout
get the retile executed properly.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9998>
Bas Nieuwenhuizen [Tue, 9 Mar 2021 02:22:45 +0000 (03:22 +0100)]
radv: Support DCC without DCC/FCE predicates.
Imported images can't have this as part of the associated memory.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9998>
Bas Nieuwenhuizen [Mon, 8 Mar 2021 14:45:50 +0000 (15:45 +0100)]
radv: Support DCC without a fast clear value.
For imported images we can't have one in the associated memory.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9998>
Adam Jackson [Tue, 6 Apr 2021 19:57:26 +0000 (15:57 -0400)]
glx: Downgrade sRGB-ful fbconfigs
Again, NVIDIA supports this on every fbconfig, Mesa alternates it on and
off for some reason but only on some drivers, and in particular llvmpipe
doesn't try to create sRGB-ful fbconfigs. Nerf it out of the fbconfig.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1648>
Adam Jackson [Tue, 6 Apr 2021 19:56:01 +0000 (15:56 -0400)]
glx: Downgrade tfp mipmap-capable fbconfigs
Again, NVIDIA does this but Mesa doesn't. Just disable it in the
fbconfig so apps can't try to use it.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1648>
Adam Jackson [Tue, 6 Apr 2021 19:54:28 +0000 (15:54 -0400)]
glx: Downgrade aux-buffer-ful fbconfigs
Mesa's never supported this, but NVIDIA does, on every fbconfig. Just
disable it if we see it.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1648>
Adam Jackson [Tue, 6 Apr 2021 19:50:35 +0000 (15:50 -0400)]
glx: Don't downgrade the visual caveat from the server
Mesa marks accumful fbconfigs as slow (for no especially good reason,
it's only accum operations that aren't accelerated, and we could fix
that). NVIDIA doesn't. All that mismatching on this attribute can do is
prevent a config from working exactly as well as it possibly can.
Trust the server's opinion here (but warn if you ask for warnings).
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1648>
Adam Jackson [Tue, 6 Apr 2021 19:42:04 +0000 (15:42 -0400)]
glx: Stop pretending to validate the pbuffer fbconfig attributes
For hardware drivers we've never set this to anything interesting so
there's no benefit to validating it. For drisw we're at the mercy of
whatever the X server sent to us anyway, and it's not like any server is
going to vary two fbconfigs by _just_ these values.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1648>
Adam Jackson [Tue, 6 Apr 2021 19:20:29 +0000 (15:20 -0400)]
dri: Don't tie the accum buffer's alpha-ness to the color buffer's
Let's preface this all by noting that the accum buffer is unused even by
legacy feature standards, and that anybody needing it to be performant
is probably not using Mesa to begin with since we've never accelerated
it. This fix is really about making drisw work under hostile GLX
environments, since it doesn't have any control over what's running on
the server side.
NVIDIA's driver simply lists RGBA16 accumulation buffers for every
fbconfig, and the accum buffer's alpha channel is always non-zero even
if the color buffer is RGBX. If we try to point llvmpipe at such a
screen, then _none_ of the depth-24 fbconfigs will find a matching DRI
config, since DRI's accumful config will have 0 accum alpha bits. This
is somewhat limiting since most X applications are expecting an RGBX
config and will be accidentally translucent at depth 32.
Due to the somewhat ugly nature of how xserver constructs fbconfigs, if
you run a driver with this fix against a server from before this fix (or
vice versa), you will find the opposite result: none of your RGBX
fbconfigs will have an accum buffer, though the RGBA ones still will.
That's a pretty acceptable tradeoff to me since what we're gaining is
the ability to use llvmpipe at all.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1648>
Adam Jackson [Tue, 6 Apr 2021 19:36:51 +0000 (15:36 -0400)]
mesa: gl_config::rgbBits should count alphaBits too
This backs {EGL,GLX}_BUFFER_SIZE, which explicitly include alpha.
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1648>
Dave Airlie [Thu, 4 Mar 2021 05:33:19 +0000 (15:33 +1000)]
lavapipe: add dummy sampler ycbcr conversion
This at least keeps the CTS tests happy.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10098>
Dave Airlie [Thu, 8 Apr 2021 06:37:04 +0000 (16:37 +1000)]
lavapipe: add vk1.1 image swapchain support
Adding support to create images from memory in the swapchain.
Just missed this in my pass of 1.1 features
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10099>
Mike Blumenkrantz [Thu, 8 Apr 2021 18:43:04 +0000 (14:43 -0400)]
gallium/threaded_context: add another rule for buffer mapping
a synchronous driver can use PIPE_MAP_ONCE to infer that a buffer is
guaranteed to not be mapped multiple times, as this is only used when
doing map -> memcpy -> unmap directly
a threaded driver performs maps/unmaps asynchronously, so this flag
can only be used by the driver to confirm that the mapped region is accessed
exactly once, not that it will not need to remain mapped for other transfer_map
uses after it is unmapped
in short, consider this scenario:
transfer_map(A) -> memcpy(map, data) -> transfer_unmap(map_A) ->
transfer_map(A) -> memcpy(map, data) -> transfer_unmap(map_A)
when a synchronous driver executes this, the call chain is unmodified
when a tc driver executes this, the call chain may become:
transfer_map(A) -> memcpy(map, data) ->
transfer_map(A) -> memcpy(map, data) ->
transfer_unmap(map_A) -> transfer_unmap(map_A)
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10113>
Christian Gmeiner [Fri, 12 Mar 2021 08:18:51 +0000 (09:18 +0100)]
etnaviv: tell the truth if alpha-test is supported
GPUs with the feature bit PE_NO_ALPHA_TEST set have no fixed-function
alpha test unit and we want to let st lower it with a shader variant.
For GC7000K this fixes all fbo-alphatest-formats piglits like:
spec@ext_framebuffer_object@fbo-alphatest-formats
spec@ext_packed_float@fbo-alphatest-formats
spec@ext_texture_srgb@fbo-alphatest-formats
This only works with the NIR compiler backend.
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Tested-by: Lukas F. Hartmann <lukas@mntmn.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9871>
Mike Blumenkrantz [Thu, 8 Apr 2021 16:55:41 +0000 (12:55 -0400)]
features: mark off ARB_fragment_shader_interlock for zink
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10109>
Yiwei Zhang [Tue, 6 Apr 2021 00:50:36 +0000 (00:50 +0000)]
venus: implement vn_debug_init_once with os_get_option
getenv is not working well with Android VM. Instead, use os_get_option
to read Android system property.
e.g. adb shell setprop mesa.vn.debug drm
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10112>
Yiwei Zhang [Sat, 3 Apr 2021 19:14:00 +0000 (19:14 +0000)]
venus: bring up Android support
1. implement hwvulkan_device_t
2. mask Android extension support
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10112>
Yiwei Zhang [Mon, 5 Apr 2021 21:20:09 +0000 (21:20 +0000)]
venus: properly enable WSI for different platforms
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10112>
Andrii Simiklit [Thu, 8 Apr 2021 11:17:00 +0000 (14:17 +0300)]
nir/spirv: remove unused fields from `vtn_builder`
They were used for tracking whether SSA needed to be repaired,
but now the repair is done for all functions with structured control flow.
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Signed-off-by: Andrii Simiklit <andrii.simiklit@globallogic.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7755>
Andrii Simiklit [Tue, 24 Nov 2020 12:28:12 +0000 (14:28 +0200)]
spirv: repair ssa defs for switchs with only default case
This fixes OpSwitch corner case when switch doesn't have any targets
just a `default` and SSAs defined in it is used after switch block
directly without phis.
v2: Just use `repair_ssa` for all structured control-flow cases
( - Jason Ekstrand <jason@jlekstrand.net>
- Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> )
Closes: #3787
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Signed-off-by: Andrii Simiklit <andrii.simiklit@globallogic.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7755>
Yevhenii Kharchenko [Tue, 6 Apr 2021 22:23:08 +0000 (01:23 +0300)]
intel/compiler: remove unused member 'input_vue_map'
v2: Instead of fixing unitialized member 'fs_visitor::input_vue_map'
(as reported by Coverity Scan in defect CID 1474559),
remove unused members 'vec4_tcs_visitor::input_vue_map' and
'fs_visitor::input_vue_map'.
Also fixed 'debug_enabled' argument skipped in a fs_visitor constructor
call from brw_compile_tes().
Signed-off-by: Yevhenii Kharchenko <yevhenii.kharchenko@globallogic.com>
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10040>
Samuel Pitoiset [Wed, 7 Apr 2021 07:08:18 +0000 (09:08 +0200)]
radv: add MSAA support to ClearColorImage() on compute queue
Found by inspection.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10070>
Chia-I Wu [Mon, 21 Oct 2019 20:52:12 +0000 (13:52 -0700)]
venus: initial support for WSI
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Fri, 9 Oct 2020 17:33:23 +0000 (10:33 -0700)]
venus: initial support for transform feedback
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Fri, 11 Sep 2020 22:14:34 +0000 (15:14 -0700)]
venus: advertise extensions promoted to 1.2
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Fri, 11 Sep 2020 17:39:17 +0000 (10:39 -0700)]
venus: advertise extensions promoted to 1.1
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Tue, 5 Nov 2019 20:53:15 +0000 (12:53 -0800)]
venus: initial support for command buffers
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Tue, 5 Nov 2019 20:52:14 +0000 (12:52 -0800)]
venus: initial support for module and pipelines
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Tue, 5 Nov 2019 20:51:09 +0000 (12:51 -0800)]
venus: initial support for events and queries
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Tue, 5 Nov 2019 20:50:20 +0000 (12:50 -0800)]
venus: initial support for render pass and fb
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Tue, 5 Nov 2019 20:48:58 +0000 (12:48 -0800)]
venus: initial support for descriptor sets
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Mon, 4 Nov 2019 21:09:04 +0000 (13:09 -0800)]
venus: initial support for buffers/images/samplers
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Mon, 4 Nov 2019 20:57:01 +0000 (12:57 -0800)]
venus: initial support for VkDeviceMemory commands
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Wed, 6 Nov 2019 18:19:20 +0000 (10:19 -0800)]
venus: initial support for queue/fence/semaphore
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Mon, 4 Nov 2019 20:49:32 +0000 (12:49 -0800)]
venus: initial support for VkDevice commands
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Tue, 29 Oct 2019 19:03:53 +0000 (12:03 -0700)]
venus: initial support for VkPhysicalDevice commands
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Tue, 29 Oct 2019 19:03:53 +0000 (12:03 -0700)]
venus: initial support for vkCreateInstance
Connect to the renderer.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Mon, 1 Mar 2021 19:54:21 +0000 (11:54 -0800)]
venus: add a ring buffer
vn_ring is a fast way to submit commands, skipping vn_renderer entirely.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Tue, 1 Oct 2019 20:48:57 +0000 (13:48 -0700)]
venus: add a CS encoder/decoder
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Tue, 29 Oct 2019 18:00:00 +0000 (11:00 -0700)]
venus: add experimental renderers
There are a virtio-gpu renderer and a vtest renderer. The vtest
renderer must be enabled with VN_DEBUG=vtest.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Mon, 29 Jun 2020 19:53:34 +0000 (12:53 -0700)]
venus: add generated venus-protocol headers
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Wed, 3 Jun 2020 20:18:30 +0000 (13:18 -0700)]
venus: add driver skeleton
It only has enough stubs to be loadable by the loader.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Chia-I Wu [Thu, 20 Aug 2020 20:06:24 +0000 (13:06 -0700)]
virgl: update headers from virglrenderer
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5800>
Rhys Perry [Fri, 2 Apr 2021 09:17:25 +0000 (10:17 +0100)]
nir/gather_info: fix partial masking of compact I/O with location_frac!=0
nir_lower_clip_cull_distance_arrays() can create compact variables with
location_frac!=0.
Fixes:
cc7a1874112 ("nir/gather_info: implement partial masking of struct and compact I/O")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4554
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10002>
Mike Blumenkrantz [Wed, 7 Apr 2021 12:34:29 +0000 (08:34 -0400)]
aux/trace: dump all the blend state members
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10092>
Bas Nieuwenhuizen [Wed, 7 Apr 2021 22:53:52 +0000 (00:53 +0200)]
nir: Do not reset shared_size in nir_lower_io.
I'd like to use raw shared intrinsics already for some raytracing
stuff before this pass gets called and this was a real pitfall.
This mirrors scratch_size and constant_data_size.
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10094>
Bas Nieuwenhuizen [Wed, 7 Apr 2021 22:52:18 +0000 (00:52 +0200)]
nir: Remove nir_shader->shared_size.
The same info is in shader_info. Dedupe.
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10094>
Bas Nieuwenhuizen [Thu, 8 Apr 2021 10:30:14 +0000 (12:30 +0200)]
nir: Extract shader_info->cs.shared_size out of union.
It is valid for all stages, just 0 for most of them. In particular
mesh/task shaders might be using it.
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10094>
Chad Versace [Thu, 1 Apr 2021 23:14:32 +0000 (16:14 -0700)]
anv: Drop unused anv_image_create_info::stride
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1466>
Chad Versace [Thu, 20 Aug 2020 17:10:28 +0000 (10:10 -0700)]
anv: Remove vkCreateDmaBufINTEL (v4)
Superceded by VK_EXT_image_drm_format_modifier.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (v1)
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> (v4)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1466>
Chad Versace [Tue, 23 Mar 2021 05:27:21 +0000 (22:27 -0700)]
anv: Enable VK_EXT_image_drm_format_modifier
Also enable the dependency VK_EXT_queue_family_foreign.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1466>
Chad Versace [Tue, 23 Feb 2021 00:59:46 +0000 (16:59 -0800)]
anv/image: Support VkImageDrmFormatModifierExplicitCreateInfoEXT
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1466>