Jesse Natalie
4845bc7072
zink: Use p_atomic_fetch_add
...
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17529 >
2022-07-14 12:49:51 +00:00
Jesse Natalie
3245d3a219
u_atomic: Add p_atomic_fetch_add which returns the old value
...
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17529 >
2022-07-14 12:49:51 +00:00
Jesse Natalie
81bbfab5df
u_atomic: Fix MSVC p_atomic_add_return
...
InterlockedExchangeAdd returns the *old* value, not the new one
Cc: mesa-stable
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17529 >
2022-07-14 12:49:51 +00:00
Jesse Natalie
104c301658
u_atomic: Implement p_atomic_xchg for Windows
...
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17529 >
2022-07-14 12:49:51 +00:00
Yogesh Mohan Marimuthu
1c2ca3cfb7
radeonsi: no need to call si_pm4_clear_state() in si_pm4_free_state()
...
the si_pm4_clear_state() initializes the variable in struct si_pm4_state which
anyway gets freed in si_pm4_free_state(). Hence no need to call
si_pm4_clear_state() in si_pm4_free_state().
Signed-off-by: Yogesh Mohan Marimuthu <yogesh.mohanmarimuthu@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17504 >
2022-07-14 10:30:09 +00:00
Yogesh Mohan Marimuthu
2330c71751
radeonsi: remove tabs from code
...
v2: fix indentation after if (Marek Olšák)
Signed-off-by: Yogesh Mohan Marimuthu <yogesh.mohanmarimuthu@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17504 >
2022-07-14 10:30:09 +00:00
Kai Wasserbäch
301bcbac0e
fix(gallivm): Replace LLVMConstF* with LLVMBuild* methods.
...
LLVM 15 removed support for LLVMConstF in commit
4bb7b6fae3be02031878b2aa3be584c6627ad8ec.
Reference: https://github.com/llvm/llvm-project/commit/4bb7b6fae3be02031878b2aa3be584c6627ad8ec
Reference: https://github.com/llvm/llvm-project/blob/07146a9e647918ef1ea5fec494b6c7c2a4206037/llvm/docs/ReleaseNotes.rst#changes-to-the-c-api
Closes : mesa/mesa#6863
Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org >
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Tested-by: Marcus Seyfarth <m.seyfarth@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17518 >
2022-07-14 10:02:14 +00:00
Lionel Landwerlin
a41e8dc588
spirv: switch to uint64 for rayquery internal type
...
Fixes dEQP-VK.ray_query.advanced.using_wrapper_function.comp.*
An empty struct is causing problems because when passing it as
argument the spirv parser will just drop the argument, considering it
does not hold any data.
v2: update radv CI
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 4c703686db ("spirv: handle ray query intrinsics")
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17420 >
2022-07-14 09:15:52 +00:00
Mike Blumenkrantz
05552b4688
lavapipe: support inlined shader spirv for compute
...
no testing, full send
Fixes: d4d5a7abba ("lavapipe: implement EXT_graphics_pipeline_library")
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17365 >
2022-07-14 04:34:18 +00:00
Jesse Natalie
c1d0bf98f4
docs: Update features.txt and new_features.txt
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
333432310a
d3d12: Fix up resource import validation
...
Format on buffers is irrelevant and bind flag validation needs to be disabled.
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
d119e6a46f
d3d12: Implement fence opening and value setting
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
ea243ef1d5
d3d12: Implement server signal/wait
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
416f10fc3f
d3d12: Support importing fences / timeline semaphores
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
e3e22ce882
d3d12: Support opening resources and memobj by name
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
d462325895
d3d12: Implement resource_from_memobj
...
If the memobj wraps a resource, then we only succeed the
mapping operation if the gallium desc matches the D3D12
resource desc.
If the memobj wraps a heap, then we can place whatever
gallium is describing on the heap.
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
bd0407a4a6
d3d12: Support creating memory objects
...
They can wrap either an opened heap or resource
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
c87d7cfaad
d3d12: PIPE_BIND_SHARED doesn't mean linear and is always on opened resources
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
e02b11af57
d3d12: Get adapter LUID after device creation
...
Otherwise it's only set if the GL frontend gave us one
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
d6fa0a20b0
d3d12: Support B4G4R4A4 format
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
5a9cc96784
d3d12: Add pipe getters for Win32 and base external objects device matching
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
5f6795309f
d3d12: Compute UUIDs required by external objects extension
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
1b59b542ba
d3d12: Store the rest of the device IDs in the screen
...
Reviewed-by: Bill Kristiansen <billkris@microsoft.com >
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
acba2bbb0e
gallium, mesa: Support setting timeline semaphore values
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:17 +00:00
Jesse Natalie
cd01e71999
mesa: Implement ImportSemaphoreWin32NameEXT
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:16 +00:00
Jesse Natalie
c760f0e8b8
mesa: Support importing D3D12 fences as timeline semaphores
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:16 +00:00
Jesse Natalie
8cd391a63e
gallium: Add a new fence type with a pipe cap to indicate it can be imported
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:16 +00:00
Jesse Natalie
633a469a7a
driver_noop: Remove infinite recursion from create_fence_win32
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:16 +00:00
Jesse Natalie
7c4fa79bfa
gallium: Add 'name' field to Win32 semaphore import
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:16 +00:00
Jesse Natalie
51408dfec4
mesa: Implement ImportMemoryWin32NameEXT
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:16 +00:00
Jesse Natalie
91b14d4a77
gallium: Add a 'name' field to winsys_handle
...
Win32 memory objects can be imported by name (const void *
that will be interpreted as const wchar_t *)
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:16 +00:00
Jesse Natalie
8f11c0553c
mapi: Add more EXT_external_objects_win32 functions/enums
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:16 +00:00
Jesse Natalie
78ba74cfda
mesa: Support D3D11/D3D12 memory imports
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Marek Olák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17446 >
2022-07-14 03:45:16 +00:00
Sami Kyöstilä
0ff4f5a7e9
util: Shut down Perfetto before driver unload
...
Shut down Perfetto before unloading the driver to fix a crash caused by
an internal Perfetto thread that kept running after dlclose() took away
its code.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4909
Reviewed-by: Rob Clark <robdclark@gmail.com >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17454 >
2022-07-14 00:41:51 +00:00
Sami Kyöstilä
1a07a07a50
subprojects: Roll Perfetto to v27.1
...
Reviewed-by: Rob Clark <robdclark@gmail.com >
Reviewed-by: Chia-I Wu <olvaffe@gmail.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17454 >
2022-07-14 00:41:51 +00:00
Samuel Pitoiset
92a46a5687
ci: uprev vkd3d-proton to 5b73139f182d86cd58a757e4b5f0d4cfad96d319
...
This contains some Device Generated Command tests that will be
useful for an experimental RADV implementation.
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/17463 >
2022-07-14 00:00:54 +00:00
Mike Blumenkrantz
89a9220cbf
zink: reject swizzled format blits
...
e.g., R8G8B8A8 -> B8G8R8A8 is invalid, so use u_blitter
fixes (various gl configs):
KHR-GL46.blend_equation_advanced*
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17523 >
2022-07-13 22:14:39 +00:00
Alyssa Rosenzweig
3a0a8688d3
panfrost: Use early-ZS helpers
...
Remove the previous compile-time early-ZS implementation and replace it with the
decoupled early-ZS implementation. This uses more efficient settings in some
cases (depth/stencil tests always passes or do not write), and fixes the
settings used in another case (alpha-to-coverage enabled with an otherwise
early-ZS shader.)
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Closes : #6206
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17428 >
2022-07-13 21:05:35 +00:00
Alyssa Rosenzweig
2454531de4
panfrost: Add zsa->zs_always_passes flag
...
If we know ahead-of-time that depth/stencil testing will always pass, it's
better to use weak_early than force_early. However, if depth/stencil testing
could fail (discarding pixels), we'd rather use force_early. Determine which
case we're in at CSO create time.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17428 >
2022-07-13 21:05:35 +00:00
Alyssa Rosenzweig
fe875c0144
panfrost: Unit test early-ZS helpers
...
The new early-ZS helpers are pure functions, leaf nodes of the call graph, and
implemented with a different algorithm from the "oracle" table of correct values
for various combinations of states. Further, incorrect settings often still pass
CTS while causing game bugs or inefficiencies. That combination makes the
helpers an excellent candidate for unit tests. Add some.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17428 >
2022-07-13 21:05:35 +00:00
Alyssa Rosenzweig
e96292bc07
panfrost: Add decoupled early-ZS helpers
...
Bifrost (and Valhall) separate early-ZS configuration into two fields: when does
the depth/stencil buffer update happen? and when are pixels killed by the
depth/stencil tests? The driver separately configures these to occur early
(before the shader executes) or late (after the ATEST instruction executes at
the end of the shader). Early tests are generally more efficient, but various
combinations of API state and fragment shader properties can require late
updates and/or late kills for correctness. Determining how to configure these
fields is nontrivial.
Our current implementation (on Bifrost) configures these fields at fragment
shader compile time and bakes the settings into the RSD. This is both wrong
(using early testing when late testing is required) and suboptimal (using late
testing when early testing would suffice). We need to defer this configuration
until draw time, when we know rasterizer and Z/S state.
Reclassifying at draw time (as we currently do on Valhall) would be expensive,
especially with the extra terms added in here. To cope, decouple the shader
classification from the draw-time configuration. Since there are only a few bits
of draw state involved, this implementation just calculates all possible states.
Then the draw time classification is just indexing into a lookup table.
The actual algorithm used to classify is written with correctness and clarity in
mind. Unlike the current classification algorithm (which tries to match what the
DDK does, poorly), this algorithm embeds its proofs of correctness.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17428 >
2022-07-13 21:05:35 +00:00
Alyssa Rosenzweig
c89a3ad857
panfrost: Fix shader_modifies_coverage on Valhall
...
Alpha-to-coverage should set this flag. This is a hardware change since Bifrost.
Fixes: 26d339ef8a ("panfrost: Generate Valhall Malloc IDVS jobs")
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17428 >
2022-07-13 21:05:35 +00:00
Alyssa Rosenzweig
29c33f75d3
pan/va: Stall after ATEST
...
In theory this wait is required for correct behaviour of discarded threads with
ATEST. Mesa usually waits before the instruction after ATEST, so this wait will
get optimized out by va_merge_flow, but as our scheduler gets more sophisticated
this could become an issue.
Let's stay on the safe side and insert the recommended wait.
No shader-db changes.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17428 >
2022-07-13 21:05:35 +00:00
Alyssa Rosenzweig
db2bdc1dc3
pan/bi: Require ATEST coverage mask input in R60
...
In theory, ATEST can take any combination of registers for inputs.
Experimentally, however, ATEST requires the coverage mask in R60. This avoids
regressing the following dEQP tests, which write their coverage mask with
pixel-frequency-shading but without writing to the depth/stencil buffer.
dEQP-GLES31.functional.shaders.sample_variables.sample_mask.discard_half_per_pixel.*
This issue is known to affect both Mali-G52 (v7) and Mali-G57 (v9). I am unsure
if this is a silicon bug or just an obscure implementation detail.
No shader-db changes.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17428 >
2022-07-13 21:05:35 +00:00
Jason Ekstrand
1b3777ee0f
panfrost: Simplify sample_shading
...
Nos that glsl_to_nir is setting sample_shading_enable whenever FB fetch
is used, we don't need to duplicate it here.
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14020 >
2022-07-13 20:28:42 +00:00
Jason Ekstrand
3346f6918f
intel/fs,anv: Rework handling of coarse and sample shading
...
Now that this information is accurately gathered by spirv_to_nir, we no
longer need the hack. We just need to fix up the way we handle some of
the key bits.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14020 >
2022-07-13 20:28:42 +00:00
Jason Ekstrand
d0b154319d
intel/fs: Simplify persample_dispatch
...
Thanks to the previous commit, we no longer need this check.
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14020 >
2022-07-13 20:28:42 +00:00
Jason Ekstrand
1124bee4ba
glsl/nir: Set sample_shading if a FS output ever shows up as an rvalue
...
If framebuffer fetch is used, we have to enable sample shading because
the fetched framebuffer value is per-sample.
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14020 >
2022-07-13 20:28:42 +00:00
Jason Ekstrand
3cf103f23d
nir/gather_info: Stop gathering uses_sample_shading
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14020 >
2022-07-13 20:28:42 +00:00
Jason Ekstrand
b6543470fe
spirv/nir: Set uses_sample_shading from spirv_to_nir
...
We don't really want to base this on a late nir_gather_info for two
reasons:
1) The Vulkan spec says that if a sample-qualified input, SampleID, or
SamplePosition are in the entry-point's interface, you get
per-sample dispatch. This means we really should gather this
information before dead-code has a chance to delete anything.
2) We want to be able to add nir_intrinsic_load_sample_pos intrinsics
as part of lowering passes without causing per-sample interpolation.
This means nir_gather_info needs to stop gathering it.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14020 >
2022-07-13 20:28:42 +00:00