Jesse Natalie
9a991cc52e
dzn: Implement point coord
...
Since we don't support wide points, this isn't a useful feature, but the CTS
requires a particular point coord value for the single rasterized pixel, based
on where the original point coord fell within the pixel. Since we're not doing
a quad, we don't get free interpolation like the GL driver does, so split the
logic between vertex (transform point center into screen space) and pixel
(compute delta between current pixel/sample and point center).
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20400 >
2023-01-10 04:25:26 +00:00
Jesse Natalie
03ce60ec7e
dzn: Lower fragcoord wtrans
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20400 >
2023-01-10 04:25:26 +00:00
Jesse Natalie
e8b12006bb
dzn: Use the right variable for heap slots when prepping resolves
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20400 >
2023-01-10 04:25:26 +00:00
Jesse Natalie
22b8e0c74c
microsoft/compiler: Set the advanced texture ops flag correctly
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20400 >
2023-01-10 04:25:26 +00:00
Jesse Natalie
a84208ee4d
microsoft/compiler: Fill out and sort the shader/module flags
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20400 >
2023-01-10 04:25:26 +00:00
Jesse Natalie
beeeb74a4c
microsoft/compiler: For Vulkan, centroid should be ignored on position
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20400 >
2023-01-10 04:25:26 +00:00
Jesse Natalie
d3cae18cb5
microsoft/compiler: For Vulkan, when shading at sample rate, pos is sample pos
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20400 >
2023-01-10 04:25:26 +00:00
Jesse Natalie
b0f3a387c9
nir_lower_fragcoord_wtrans: Support Vulkan shaders
...
In Vulkan shaders, you might not have all derefs pointing to a variable
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20400 >
2023-01-10 04:25:26 +00:00
Timothy Arceri
ac5af6c06d
util/driconf: add Dune: Spice Wars workaround
...
As per the bug report the game does not correctly handle a uniform
index of -1 being returned for the unused array element, which
results in rendering issues. So here we skip the uniform array
resizing optimisation.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6397
Cc: mesa-stable
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20579 >
2023-01-10 03:53:19 +00:00
Giancarlo Devich
e986d8c337
d3d12: Update hard-coded heap sizes and batch limit
...
Increasing the heap sizes and active batch count reduces flushing
churn when rendering runs out of descriptors.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20589 >
2023-01-10 03:22:26 +00:00
Daniel Stone
9c1fbc076a
Return 'Mesa' for GL_VENDOR for community drivers
...
Rather than a grab-bag of random values, return 'Mesa' as the GL_VENDOR
string for all community-supported drivers.
Drivers which are primarily developed/maintained by the hardware vendor
retain that vendor's name as the GL_VENDOR string.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16064 >
2023-01-10 01:50:33 +00:00
WebsterEndymion
7d9eb64990
zink: fix the stencil write
...
Stencil writing also needs to be considered when setting the flag renderpass
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20245 >
2023-01-10 01:30:02 +00:00
WebsterEndymion
53c4ce495c
zink: add a condition to needs_write_s
...
Previously missing check on the stencil write, condition added to needs_write_s using util_writes_stencil
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20245 >
2023-01-10 01:30:02 +00:00
Mike Blumenkrantz
847d198c1f
lavapipe: add some safety asserts when beginning rendering
...
if the render area exceeds the attachment size, this is not only illegal,
it will crash later
cc: mesa-stable
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Brian Paul <brianp@vmware.com >
Reviewed-by: Roland Scheidegger <sroland@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20583 >
2023-01-10 01:12:28 +00:00
Mike Blumenkrantz
b20df1abeb
zink: add a fs base key, fix optimal fs key packing
...
the optimal fs key gets at most 16 bits, so it's crucial to only use
the ones that are needed in order to conserve bits for things needed
by all drivers
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20585 >
2023-01-10 00:51:24 +00:00
Mike Blumenkrantz
8772651aa0
zink: use optimal key for pipeline library hash
...
this doesn't really change anything other than making the set collide less
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20585 >
2023-01-10 00:51:24 +00:00
Mike Blumenkrantz
19332b13e1
zink: unify some shadow tex code in match_tex_dests_instr()
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20585 >
2023-01-10 00:51:24 +00:00
Mike Blumenkrantz
e6c6a59f56
zink: fix some weird indentation in zink_set_sampler_views
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20585 >
2023-01-10 00:51:24 +00:00
Mike Blumenkrantz
90cd9cd3d1
zink: simplify some depth texturing spv
...
the special-casing here is no longer necessary since multi-component
depth sample ops have already been rewritten by this point
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20585 >
2023-01-10 00:51:24 +00:00
Mike Blumenkrantz
b23877e7fa
zink: put line emulation stuff behind optimal_keys check in draw
...
these parts of the shader key can't be accessed in optimal_keys mode
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20585 >
2023-01-10 00:51:24 +00:00
Mike Blumenkrantz
c6f06901b7
zink: only flag modules_changed in optimal path if a change has occurred
...
this should save some cycles when a recalc is a no-op
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20585 >
2023-01-10 00:51:24 +00:00
Mike Blumenkrantz
b295accf07
zink: delete dead code
...
update_gfx_program_optimal() is the real version of this
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20585 >
2023-01-10 00:51:24 +00:00
Eric Engestrom
bc801c0808
meson/zink: use vk_api_xml variable instead of re-constructing the file path
...
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20568 >
2023-01-10 00:31:11 +00:00
Alyssa Rosenzweig
615c3a078b
asahi: Fix segfault with null drawbuffer
...
Fixes fbo-drawbuffers-none piglit.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20569 >
2023-01-10 00:17:12 +00:00
Alyssa Rosenzweig
9b67afb55d
agx: Fix missing #include
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20569 >
2023-01-10 00:17:12 +00:00
Alyssa Rosenzweig
b4d8be165b
asahi: Implement ARB_texture_mirror_clamp_to_edge
...
Guessing the enum value, passes texwrap piglit.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20560 >
2023-01-09 23:58:52 +00:00
Alyssa Rosenzweig
0e2d786579
asahi: Implement GL_CLAMP natively
...
Turns out there's a hardware mode for this. Apple's GL driver uses this.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20560 >
2023-01-09 23:58:52 +00:00
Lionel Landwerlin
8679956e63
ci/zink+anv: remove dEQP-GLES31.functional.layout_binding.ubo.*
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20555 >
2023-01-09 23:00:24 +00:00
Lionel Landwerlin
2d627f28c8
anv: use the null surface with unused push descriptor binding table entries
...
Some binding table entries have been identify as unused in the shaders
by the push constant analysis pass. We can just put the null entry in
there.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: b49b18f0b7 ("anv: reduce BT emissions & surface state writes with push descriptors")
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20555 >
2023-01-09 23:00:24 +00:00
Lionel Landwerlin
bbfca4eb92
anv: return properly typed value for no ubo promoted
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: ff91c5ca42 ("anv: add analysis for push descriptor uses and store it in shader cache")
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20555 >
2023-01-09 23:00:24 +00:00
Lionel Landwerlin
e2b0086b78
anv: check that push range actually match binding considered
...
We can't just check the load_ubo range is contained in the push entry,
we also need to check that the push entry set/binding matches the
load_ubo set/binding.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: ff91c5ca42 ("anv: add analysis for push descriptor uses and store it in shader cache")
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20555 >
2023-01-09 23:00:24 +00:00
Lionel Landwerlin
48bb3df951
anv: don't nullify entries
...
We'll use those to fill the push constant addresses, so we can't have
them turned to null.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: ff91c5ca42 ("anv: add analysis for push descriptor uses and store it in shader cache")
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20555 >
2023-01-09 23:00:24 +00:00
Tapani Pälli
319d485679
iris: let isl set tiling mode for external resources
...
Patch sets memory object external format (which is otherwise
PIPE_FORMAT_NONE for memory objects) before main surface gets
configured. With this we can add a check that when dealing
with external resource that has no modifier set, we let isl
figure out the tiling mode.
Fixes memobj tests on DG2:
piglit.spec.ext_external_objects.vk-image-display-muliple-textures
piglit.spec.ext_external_objects.vk-image-display-overwrite
piglit.spec.ext_external_objects.vk-depth-display
piglit.spec.ext_external_objects.vk-image-display
piglit.spec.ext_external_objects.vk-stencil-display
v2: add assert and comment on tiling decision (Ken)
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7684
Cc: mesa-stable
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Simon Zeni <simon@bl4ckb0ne.ca >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20473 >
2023-01-09 22:38:29 +00:00
Rhys Perry
fdf4a87823
radv/rt: use a smaller value to enable scratch
...
The scratch allocation alignment on GFX11 is small enough that this should
help. Would be nice to someday remove this hack completely though.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20534 >
2023-01-09 21:46:13 +00:00
Rhys Perry
810ced93f3
aco: align scratch size during assembly
...
This lets us use less scratch if both VGPR spilling and scratch intrinsics
are used.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20534 >
2023-01-09 21:46:13 +00:00
Rhys Perry
c9846158cd
aco/gfx11: reduce scratch allocation alignment
...
fossil-db (gfx1100):
Totals from 112 (0.08% of 134574) affected shaders:
Scratch: 1513472 -> 1455360 (-3.84%)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20534 >
2023-01-09 21:46:13 +00:00
Qiu Wenbo
ee32f3873c
vc4: Fix running process_mux_deps on irrelevant type of instructions
...
Only ALU and ALU Small Imm instructions have input mux.
Signed-off-by: Qiu Wenbo <qiuwenbo@kylinos.com.cn >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20581 >
2023-01-09 20:22:47 +00:00
Qiu Wenbo
7489c29abe
vc4: Fix RADDR_A field extraction of branch instruction
...
Signed-off-by: Qiu Wenbo <qiuwenbo@kylinos.com.cn >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20581 >
2023-01-09 20:22:47 +00:00
Mike Blumenkrantz
82bd38fa11
zink: add a bunch of asserts for starting dynamic render
...
try to avoid any race condition bugs triggering later when they're
harder to catch
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20584 >
2023-01-09 20:06:14 +00:00
Mike Blumenkrantz
0997a6272e
zink: re-clamp dynamic render area when doing swapchain fixups
...
this may catch another corner case if a late fixup changes fb size
fixes (lavapipe):
dEQP-EGL.functional.swap_buffers_with_damage.resize_before_swap.clear_render
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20584 >
2023-01-09 20:06:14 +00:00
Mike Blumenkrantz
c53fc5f48e
zink: catch a potential corner case with dynamic render and swapchain updates
...
zink_prep_fb_attachment() calls acquire internally, which means it's theoretically
possible that fixups are required very late in this function
never seen it happen, but who knows
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20584 >
2023-01-09 20:06:14 +00:00
Mike Blumenkrantz
a59dc9d157
zink: split out swapchain render update fixups into separate function
...
this needs to be more granular for corner cases
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20584 >
2023-01-09 20:06:14 +00:00
Mike Blumenkrantz
6f02fe8842
zink: protect against invalid scissored renderpass clears
...
if the clear region is oob, this is illegal and may crash some drivers
fixes (lavapipe):
dEQP-EGL.functional.swap_buffers_with_damage.resize_before_swap.buffer_age_clear_render
dEQP-EGL.functional.swap_buffers_with_damage.resize_before_swap.buffer_age_render_clear
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20584 >
2023-01-09 20:06:14 +00:00
Mike Blumenkrantz
79a4d22928
zink: only update framebuffer object during swapchain update if framebuffer exists
...
otherwise this might be randomly creating an unused framebuffer for dynamic render
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20584 >
2023-01-09 20:06:14 +00:00
Ian Romanick
51be623372
intel/eu/validate: Check predication and cmod for SEL, CMP, and CMPN
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20527 >
2023-01-09 19:15:19 +00:00
Ian Romanick
e0f409c5d8
intel/eu/validate: Add validation for csel
...
v2: Also check the condition modifier. Suggested by Lionel.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20527 >
2023-01-09 19:15:19 +00:00
Ian Romanick
3a7c23973b
intel/eu/validate: Add validation for bfi2
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20527 >
2023-01-09 19:15:19 +00:00
Ian Romanick
f34821d998
intel/eu/validate: More validation for logic ops
...
v2: Use number of source to condition validating src1 instead of using
the opcode. Suggested by Lionel.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20527 >
2023-01-09 19:15:19 +00:00
Ian Romanick
8be7406c81
intel/compiler: Assert that ARF used is the accumulator
...
v2: Move the new check to be with similar existing checks. Suggested by
Lionel.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20527 >
2023-01-09 19:15:19 +00:00
Ian Romanick
3b579a2ea8
intel/compiler: Validate 3-source instruction source strides
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20527 >
2023-01-09 19:15:19 +00:00