Samuel Pitoiset
6a98329b5e
radv: add support for dynamic line stipple enable
...
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/18882 >
2022-10-21 15:56:52 +00:00
Samuel Pitoiset
17b9aa92b7
radv: add support for dynamic logic op enable
...
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/18882 >
2022-10-21 15:56:52 +00:00
Samuel Pitoiset
f22290949d
radv: add support for dynamic tessellation domain origin
...
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/18882 >
2022-10-21 15:56:52 +00:00
Samuel Pitoiset
6bf34e9f36
radv: add support for dynamic polygon mode
...
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/18882 >
2022-10-21 15:56:52 +00:00
Samuel Pitoiset
e0b4b12066
radv: declare new dynamic states
...
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/18882 >
2022-10-21 15:56:52 +00:00
Simon Ser
4c080cb8e5
egl: fix error string for dri2_create_image_dma_buf()
...
Using dri2_create_image_khr_texture_error() here prints an error
like so:
command: eglCreateImageKHR, error: EGL_BAD_ALLOC (0x3003), message: "dri2_create_image_khr_texture"
This is confusing, because dri2_create_image_khr_texture() is
unrelated to this error.
Instead, print a more accurate error manually.
Signed-off-by: Simon Ser <contact@emersion.fr >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19156 >
2022-10-21 14:57:25 +00:00
Karol Herbst
e2d67765fa
zink: handle f2f16_rtz
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19212 >
2022-10-21 14:38:26 +00:00
Karol Herbst
813b76aeb6
zink: handle more opcodes for CL
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19212 >
2022-10-21 14:38:25 +00:00
Martin Roukala (né Peres)
4629fe2aab
zink: update the RADV expectations
...
We got 4 more tests passing, let's document that :)
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19190 >
2022-10-21 14:19:35 +00:00
Karol Herbst
4a125f790c
ci/llvmpipe: update to new RUSTICL_ENABLE var
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19149 >
2022-10-21 13:58:07 +00:00
Karol Herbst
feca63e37e
rusticl: add RUSTICL_ENABLE to have a global way of enabling devices
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19149 >
2022-10-21 13:58:07 +00:00
Leandro Ribeiro
3b7d977f76
vulkan/wsi/wayland: avoid useless re-allocations when receiving per-surface dma-buf feedback
...
It's not just because we received dma-buf feedback that we should
re-allocate, as sometimes it is useless.
We must compare the most recent allocation parameters used and the ones
that we have with the newest feedback. So do that.
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226 >
2022-10-21 12:15:37 +00:00
Leandro Ribeiro
df77641993
vulkan/wsi/wayland: add per-surface dma-buf feedback support
...
Follow up of "vulkan/wsi/wayland: add default dma-buf feedback support".
The surface feedback is dynamic, differently from the default feedback.
When we receive per-surface feedback, that means that we could be using
a better DRM format/modifier pair for the chain's buffers. So the next
time that the client calls vkAcquireNextImageKHR(), we return
VK_SUBOPTIMAL_KHR instead of VK_SUCCESS. Some clients will re-create the
swapchain when receiving SUBOPTIMAL, and for those we'll re-create the
chain. An optimal DRM format/modifier pair from the per-surface feedback
will be used to create the images of this swapchain.
Note that for now we won't be able to change the DRM format, only the
modifier. That's good enough for many cases in which direct scanout
would not be possible because of the modifier. In order to be able to
switch the format, we'll need a mechanism to negotiate preferred formats
with clients. Currently we can only expose a set of supported formats
all with the same preference.
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226 >
2022-10-21 12:15:37 +00:00
Leandro Ribeiro
edd3c00d5d
vulkan/wsi/wayland: add default dma-buf feedback support
...
This bumps the supported dma-buf version up to 4 and adds default
dma-buf feedback support. It follows the changes in the dma-buf protocol
extension to include dma-buf feedback.
From version 4 onwards, the dma-buf modifier events are not sent by the
compositor anymore, so we use the default feedback to pick the set of
formats/modifiers supported by the compositor.
In the next commit we add support for per-surface feedback.
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226 >
2022-10-21 12:15:37 +00:00
Leandro Ribeiro
947a465cee
vulkan/wsi/wayland: remove refcount from struct wsi_wl_display
...
After "vulkan/wsi/wayland: move wl_surface and wl_display from chain to
struct wsi_wl_surface", refcount is being unused. So remove it and its
associated functions.
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226 >
2022-10-21 12:15:37 +00:00
Leandro Ribeiro
3adba6b18d
vulkan/wsi/wayland: move wl_surface and wl_display from chain to struct wsi_wl_surface
...
When a swapchain is re-created, if the old swapchain is not passed to
us, we need to re-create the wl_display and the Wayland objects. As
described in "vulkan/wsi/wayland: introduce struct wsi_wl_surface", this
gets in the way when adding the dma-buf feedback implementation.
With this change now the lifetime of the Wayland objects is tied to the
VkSurface. When the swapchain gets re-created, we won't have to
re-create the wl_display (and consequently the Wayland objects).
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226 >
2022-10-21 12:15:37 +00:00
Leandro Ribeiro
ba571c3657
vulkan/wsi/wayland: take ownership of wsi_wl_surface when creating chain
...
When we create a swapchain, take ownership of a struct wsi_wl_surface.
When the chain gets destroyed, the ownership is dropped.
We can safely do that because only a single swapchain can be associated
with the surface at a time, according to vkCreateSwapchainKHR spec:
"If pCreateInfo->oldSwapchain is VK_NULL_HANDLE, and the native
window referred to by pCreateInfo->surface is already associated
with a Vulkan swapchain, VK_ERROR_NATIVE_WINDOW_IN_USE_KHR must
be returned."
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226 >
2022-10-21 12:15:37 +00:00
Leandro Ribeiro
abc464f3a9
vulkan/wsi/wayland: introduce struct wsi_wl_surface
...
In the following commits we add dma-buf feedback support. In order to do
that, we need to keep the feedback tied to the lifetime of the surface,
instead of tied to the lifetime of the chain.
Why do we need this change?
The reason is per-surface feedback and swapchain re-creation. If we
receive feedback and return SUBOPTIMAL to the client in the next
acquireNextImage() call, it may re-create the swapchain. If it
doesn't pass us the oldSwapchain, we won't have access to the surface
feedback data (as it was tied to the oldSwapchain). We could bind
again to the surface feedback, but compositors may have a transient
state when we bind to surface feedback, and send a non-optimal batch
of dma-buf feedback which is updated when the drawing loop starts. So
we would re-create the chain with this non-optimal batch, and after a
few moments receive new feedback. This could potentially lead into an
allocation loop, so it is not safe.
Tying the feedback to the lifetime of the VkSurface we don't have to
re-bind to the surface dma-buf feedback every time that the swapchain
is re-created, avoiding this dangerous allocation loop described
above.
So add struct wsi_wl_surface in order to add support for dma-buf
feedback. For now it is just the stub, but in the next commits we start
making use of that.
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226 >
2022-10-21 12:15:37 +00:00
Leandro Ribeiro
149f7e4762
vulkan/wsi/wayland: remove unnecessary spaces in struct fields
...
We have arbitrary amount of spaces between structs fields types and
their names. That doesn't improve legibility and get in the way when
adding new fields/structs. So remove these spaces.
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226 >
2022-10-21 12:15:37 +00:00
Leandro Ribeiro
05ed116d01
vulkan/wsi/wayland: move some structs to beginning of code
...
There are some structs defined in the middle of the code. Move them
closer to where the other structs are defined.
This makes the code easier to read and also will help us in the next
commits, in which we add dma-buf feedback support.
Reviewed-by: Simon Ser <contact@emersion.fr >
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226 >
2022-10-21 12:15:37 +00:00
Pierre-Eric Pelloux-Prayer
19b6c889be
Revert "ac: use LLVMContextSetOpaquePointers if available"
...
This reverts commit 940734630d
.
radeonsi and radv now support opaque pointers.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
f5abb7ce4c
ac/llvm: pass ac_llvm_ptr instead of separate type/ptr
...
This simplifies the API.
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
efa5c52822
ac/llvm: add ac_get_ptr_arg
...
For argument of type AC_AR_..._PTR, this returns a ac_llvm_pointer.
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
39fd373f81
radv/llvm: replace LLVMBuildLoad by LLVMBuildLoad2
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
b31affddf4
ac/llvm: remove gep_2 and others temporary functions
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
7508cdd2ff
radeonsi: port the remaining code to opaque pointers
...
Mechanical changes (= use ac_llvm_pointer and adapt the callers/callees)
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
c0058a38d1
radeonsi: make ngg_gs_get_vertex_storage return a ac_llvm_pointer
...
gs_ngg_emit is declared as a 0-size array so we can't store it as a
ac_llvm_pointer.
Instead, we simply modify the ngg_gs_get_vertex_storage to return
a properly typed pointer, when num_outputs is known.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
52f8319dac
radeonsi: use LLVMBuildGEP2 in si_build_gep_i8_var
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
b58bb254f3
radeonsi: use ac_get_arg_pointee_type to get the right type
...
And switch to the xxx2 versions of the ac/llvm functions.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
cb117cdc96
radv/llvm: use ac_build_gep0_type to get args types
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
f12adf2cc9
ac/llvm: remove unneeded casts
...
The only useful information in pointer types is the address space and these
casts don't change it.
The type information is explicitely passed by the caller of GEP2 and similar
functions.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
a15eed1e22
ac/llvm: store constant_data and scratch as ac_llvm_pointer
...
This way we can pass the type information to LLVM when needed.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
e9a7f8d8df
ac/llvm: store lds as ac_llvm_pointer
...
This way we can pass the type information to LLVM when needed.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
8c54ae013d
ac/llvm: add xxxx2 functions to iteratively port to opaque pointers
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
18e78db39c
ac/llvm: add type param to ac_build_load_invariant
...
And adapt the only user of this function.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
f044de2e60
ac/llvm: switch ac_build_pointer_add to LLVMBuildGEP2
...
The cast was superfluous: GEP2 return value is a pointer to
the given type.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
f68b18f285
ac/llvm: switch ac_build_gep_ptr to LLVMBuildGEP2
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
0f00f74b20
ac/llvm: port functions to use ac_llvm_pointer
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
174caabab7
ac/llvm: add a ac_llvm_pointer type
...
This struct stores a pointer's value and the pointee type and
will be used everywhere LLVM requires us to pass the pointee
type.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
afd645f057
ac/llvm: remove LLVMBuildGEP usages
...
Use LLVMBuildGEP2 instead.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
fab476bd11
ac/llvm: add helpers to get pointer types of ac_arg
...
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
5dcc2c216b
ac/llvm: simplify get_memory_ptr
...
We actually don't need the type: lds is always treaded as
a "pointer to i8" in this function.
The caller will use the proper type when using the result.
For the same reason, we can get rid of the cast in setup_shared
because LLVM won't use this information anymore.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
8465d23f99
ac/llvm: drop visit_deref
...
This functions processes mem_shared and nir_var_mem_global:
- mem_shared is lowered by radv and radeonsi.
- mem_global is lowered by radv and radonsi doesn't use it.
So we can safely drop this function.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
236c7ca8b3
radeonsi: use nir_lower_explicit_io to get rid of mem_shared deref
...
We can get them through GLSL compute or SPIR-V.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
55ba066d45
radeonsi: remove USE_LDS_SYMBOLS
...
This has been set to true for 3 years and radeonsi wants LLVM 11, so
we can remove the define and use true directly.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Pierre-Eric Pelloux-Prayer
83283fffc5
ac/llvm: remove unused vars hash table
...
It's unused because variables are never dereferenced during the
NIR -> LLVM IR translation.
Reviewed-by: Mihai Preda <mhpreda@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19035 >
2022-10-21 07:56:38 +00:00
Samuel Pitoiset
ef5fc6a764
aco: fix tcs_wave_id unpacking on GFX11
...
Only the first 3 bits are useful.
Ported from ac/llvm.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19194 >
2022-10-21 07:15:44 +00:00
Samuel Pitoiset
1f573c44ab
radv: advertise fragmentShadingRateWithShaderDepthStencilWrites on NAVI23+
...
It should work.
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/19195 >
2022-10-21 06:45:21 +00:00
Samuel Pitoiset
0a8a9d9d63
ac: add radeon_info::has_vrs_ds_export_bug
...
According to PAL, only NAVI21 and NAVI22 are affected.
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/19195 >
2022-10-21 06:45:21 +00:00
Samuel Pitoiset
61e54297cd
radv: allocate more space for pipeline statistics query on GFX11
...
There is 14 queries, including new queries for mesh/task shaders.
Ported from RadeonSI.
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/19199 >
2022-10-21 06:09:00 +00:00