Georg Lehmann
2cda56e8b7
ac/llvm: remove unused ballot size
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37294 >
2025-09-14 13:21:20 +00:00
Karol Herbst
4f94ca6c96
ac/llvm: fix get_global_address for global atomics
...
They do not have an ACCESS index.
Fixes: 9a33c03654 ("ac/llvm: port load_smem_amd behavior to load_global_amd")
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37292 >
2025-09-12 08:55:39 +00:00
Marek Olšák
9a33c03654
ac/llvm: port load_smem_amd behavior to load_global_amd
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37101 >
2025-08-30 15:04:32 -04:00
Marek Olšák
f5ba2d3e8f
ac/llvm: fix handling COHERENT and VOLATILE flags for global access
...
Fixes: c181db0660 - ac/llvm: rewrite global & shared stores to share code
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37101 >
2025-08-30 15:04:32 -04:00
Georg Lehmann
9ed94371f7
amd: stop using custom gl_access_qualifier for access type
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36764 >
2025-08-15 08:26:10 +00:00
Georg Lehmann
f17cb6b714
amd: replace ACCESS_TYPE_SMEM with ACCESS_SMEM_AMD
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36764 >
2025-08-15 08:26:10 +00:00
Marek Olšák
d93156c2a2
ac: merge AC_ARG_INT & AC_ARG_FLOAT into single AC_ARG_VALUE
...
nothing uses the type anymore
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36696 >
2025-08-11 15:32:30 -04:00
Marek Olšák
bb8d2e55d1
ac/llvm: make AC_ARG_FLOAT equal to AC_ARG_INT
...
Nothing cares about the type anymore.
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36696 >
2025-08-11 15:32:29 -04:00
Marek Olšák
324a7f7e24
ac/llvm: make ac_get_arg non-inline
...
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36696 >
2025-08-11 15:32:25 -04:00
Marek Olšák
54fe9aa664
ac: simplify AC_ARG_CONST_*PTR enums
...
The pointer type doesn't matter anymore.
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36696 >
2025-08-11 15:32:23 -04:00
Marek Olšák
d5d5726908
ac/nir: remove unused ac_get_ptr_arg & ac_arg_type_to_pointee_type
...
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36696 >
2025-08-11 15:32:19 -04:00
Marek Olšák
dbefe0c26d
ac/nir: inline ac_get_ptr_arg
...
so that we can get rid of ac_get_ptr_args.
RADV uses AC_ARG_CONST_PTR for num_work_groups, which maps to i8, which
seems wrong.
No functional change.
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36696 >
2025-08-11 15:32:17 -04:00
Marek Olšák
4edcd8a87f
ac/llvm: inline ac_array_in_const*_addr_space
...
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36696 >
2025-08-11 15:32:15 -04:00
Qiang Yu
7a91473192
all: rename gl_shader_stage_is_compute to mesa_shader_stage_is_compute
...
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Yonggang Luo <luoyonggang@gmail.com >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36569 >
2025-08-06 10:28:41 +08:00
Qiang Yu
196569b1a4
all: rename gl_shader_stage to mesa_shader_stage
...
It's not only for GL, change to a generic name.
Use command:
find . -type f -not -path '*/.git/*' -exec sed -i 's/\bgl_shader_stage\b/mesa_shader_stage/g' {} +
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Yonggang Luo <luoyonggang@gmail.com >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36569 >
2025-08-06 10:28:40 +08:00
Antonio Ospite
ddf2aa3a4d
build: avoid redefining unreachable() which is standard in C23
...
In the C23 standard unreachable() is now a predefined function-like
macro in <stddef.h>
See https://android.googlesource.com/platform/bionic/+/HEAD/docs/c23.md#is-now-a-predefined-function_like-macro-in
And this causes build errors when building for C23:
-----------------------------------------------------------------------
In file included from ../src/util/log.h:30,
from ../src/util/log.c:30:
../src/util/macros.h:123:9: warning: "unreachable" redefined
123 | #define unreachable(str) \
| ^~~~~~~~~~~
In file included from ../src/util/macros.h:31:
/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h:456:9: note: this is the location of the previous definition
456 | #define unreachable() (__builtin_unreachable ())
| ^~~~~~~~~~~
-----------------------------------------------------------------------
So don't redefine it with the same name, but use the name UNREACHABLE()
to also signify it's a macro.
Using a different name also makes sense because the behavior of the
macro was extending the one of __builtin_unreachable() anyway, and it
also had a different signature, accepting one argument, compared to the
standard unreachable() with no arguments.
This change improves the chances of building mesa with the C23 standard,
which for instance is the default in recent AOSP versions.
All the instances of the macro, including the definition, were updated
with the following command line:
git grep -l '[^_]unreachable(' -- "src/**" | sort | uniq | \
while read file; \
do \
sed -e 's/\([^_]\)unreachable(/\1UNREACHABLE(/g' -i "$file"; \
done && \
sed -e 's/#undef unreachable/#undef UNREACHABLE/g' -i src/intel/isl/isl_aux_info.c
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36437 >
2025-07-31 17:49:42 +00:00
Marek Olšák
4a80272bae
ac/llvm: fix readlane with vectors
...
It crashes in LLVM when the type is not scalar integer.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35950 >
2025-07-24 06:31:17 +00:00
Marek Olšák
543fddb01b
ac/llvm: always use opaque pointers
...
LLVM removed typed pointers a long time ago. These types and bitcasts
had no effect.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35950 >
2025-07-24 06:31:16 +00:00
Marek Olšák
d205772869
ac/llvm: rewrite global & shared loads to share code
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35950 >
2025-07-24 06:31:16 +00:00
Marek Olšák
c181db0660
ac/llvm: rewrite global & shared stores to share code
...
The alignment change allows LLVM to select 32-bit stores when 8-bit and
16-bit stores are properly aligned.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35950 >
2025-07-24 06:31:16 +00:00
Marek Olšák
7bbc4ef719
ac/llvm: rename misnamed get_memory_ptr -> get_shared_mem_ptr
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35529 >
2025-07-12 10:28:21 +00:00
Marek Olšák
f6aecfb886
ac/llvm: don't declare LDS as an array for HS & GS & CS, use IntToPtr(0)
...
We don't need all this stuff anymore.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35529 >
2025-07-12 10:28:21 +00:00
Marek Olšák
24260644e8
radeonsi: remove now unused LLVM LDS logic for NGG
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35529 >
2025-07-12 10:28:21 +00:00
Georg Lehmann
2cc3e1876c
ac/llvm: support vec2 extract
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35854 >
2025-07-12 08:39:13 +00:00
Marek Olšák
4263b49778
ac/nir: remove ngg_scratch LDS ABI, allocate it in the lowering pass
...
This is a cleanup.
Old gs LDS layout: [es outputs][gs outputs][scratch]
Old nogs LDS layout: [xfb/cull][scratch]
New gs LDS layout: [es outputs][scratch|gs outputs]
New nogs LDS layout: [scratch|xfb/cull]
The LDS scratch is moved to the beginning of the preceding buffer in LDS,
while the addresses in that LDS buffer are offset by the scratch size.
It effectively merges the LDS scratch with the preceding buffer in LDS.
Thanks to that, we no longer need the ngg_scratch ABI and the offset
in a user SGPR.
The lowering passes now return the LDS scratch size, which is used
by the drivers to determine the final LDS size.
The ngg_lds_layout SGPR is now unused without GS in RADV.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35352 >
2025-07-02 20:27:41 +00:00
Rhys Perry
01fae0c5c2
ac/llvm: use ds_bpermute_b32 for GFX12 wave64
...
It works.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:11 +00:00
Rhys Perry
9a5073e3a4
ac/llvm: rewrite shuffle waterfall loop
...
This can't break until we have read all lanes, otherwise it might read
from an inactive lane.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:11 +00:00
Rhys Perry
2ff53fd97c
ac/llvm: convert to integer after reductions
...
These return floating point types for floating point ops.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Backport-to: 25.1
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Rhys Perry
8609008aeb
ac/llvm: fix mul24 intrinsic overloading
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Fixes: e3edc6029b ("ac/llvm: use mul24 intrinsics")
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Rhys Perry
3c2b3fbd03
ac/llvm: fix overloading of intrinsic names
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Backport-to: 25.1
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Reviewed-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489 >
2025-06-14 13:59:10 +00:00
Karol Herbst
4ff66b4343
ac/llvm: fix bitfield ops
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35423 >
2025-06-13 07:33:03 +00:00
Pierre-Eric Pelloux-Prayer
4a84ebfcb1
ac/llvm: rework component trimming in visit_tex
...
The referenced commit was a step in the right direction, but not
complete.
ac_build_image_opcode returns a vec<4> or a struct<vec<4>, int>
so we can simplify visit_tex. We just need to map these 4/5 values
to the expected layout from NIR.
eg: depth + TFE would produces "<d, x, x, x>, t" so it has to be
transformed into <d, t>.
nir_texop_fragment_mask_fetch_amd + sparse doesn't exist, so it's
another opportunity for simplification.
This is required to get KHR-GL46.sparse_texture2_tests.SparseTexture2Lookup_texture_2d_depth_component16
working properly.
The same test fails with ACO so it probably needs a change in the
same area.
Fixes: c0ef2aa7f8 ("DEPENDENCY: ac/llvm: fix sparse code handling")
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35206 >
2025-06-11 12:11:28 +00:00
Marek Olšák
447d744833
ac/llvm: allocate LLVM PS output variables on demand
...
This stops relying on si_shader_info, allowing further cleanup of
si_shader_info.
radv_load_output was unused.
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35392 >
2025-06-10 03:31:20 +00:00
Marek Olšák
c3034fa82c
amd: replace most u_bit_consecutive* with BITFIELD_MASK/RANGE
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35346 >
2025-06-04 17:46:38 +00:00
Rhys Perry
d0a09b6ff7
ac/llvm: correctly set alignment of vector global load/store
...
For coherent/volatile access, this would be too high for vector access.
Even when we didn't set the alignment, LLVM seemed to assume too high of
an alignment for 8/16-bit vector access.
Fixes generated_tests/cl/vload/vload-char-constant.cl
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Tested-by: Michel Dänzer <mdaenzer@redhat.com >
Backport-to: 25.0
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34903 >
2025-05-12 10:51:57 +00:00
Rhys Perry
c1ecad2b11
ac/llvm: correctly split vector 8/16-bit stores
...
This assumes that the start of the load is 32-bit aligned.
For example, a vec3 16-bit store with align_offset=2 should split off the
first component, not the last.
This probably also fixed splitting with 8-bit stores.
Fixes arb_copy_buffer-overlap
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Tested-by: Michel Dänzer <mdaenzer@redhat.com >
Backport-to: 25.0
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34903 >
2025-05-12 10:51:57 +00:00
Georg Lehmann
44be05cc45
ac/llvm: support nir_op_bfdot2_bfadd
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34768 >
2025-05-09 11:20:26 +00:00
Karol Herbst
e3edc6029b
ac/llvm: use mul24 intrinsics
...
With the current code in clpeak LLVM ended up generating v_mad_u64_u32
instructions, with this we get nice v_mad_u32_s24 ones instead and an 4x
performance increase in the int24 benchmark.
Suggested-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34630 >
2025-04-23 01:11:48 +00:00
Georg Lehmann
7c6a2b16e0
ac/llvm: support mul24_relaxed
...
I didn't find dedicated 24bit intrinsics, but I also haven't looked that hard.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33871 >
2025-03-27 06:24:16 +00:00
Natalie Vock
0e7c94b2b3
ac/llvm: Don't use getTriple() on LLVM21+
...
setTargetTriple() takes a Triple now.
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33981 >
2025-03-11 20:54:34 +00:00
Timur Kristóf
a91f105e5b
ac: Don't include full nir.h anymore.
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Marek Olšák
82047fa82f
amd: drop support for LLVM 15, 16, 17
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33211 >
2025-02-01 04:22:30 +00:00
Marek Olšák
de790c3c5f
Revert "ac/llvm: enable wqm for ac_build_quad_swizzle from ac_build_fs_interp_mov"
...
This reverts commit 9d4d9e6150 .
It breaks on Navi31:
* KHR-GL46.shaders.uniform_block.instance_array_basic_type.shared.bvec3,Fail
* KHR-GL46.shaders.uniform_block.instance_array_basic_type.std140.bvec3,Fail
* KHR-GL46.shaders.uniform_block.random.all_per_block_buffers.13,Fail
* KHR-GL46.shaders.uniform_block.random.all_per_block_buffers.3,Fail
* KHR-GL46.shaders.uniform_block.single_basic_array.shared.bvec3,Fail
* KHR-GL46.shaders.uniform_block.single_basic_array.std140.bvec3,Fail
* KHR-GLES3.shaders.uniform_block.instance_array_basic_type.shared.bvec3,Fail
* KHR-GLES3.shaders.uniform_block.instance_array_basic_type.std140.bvec3,Fail
* KHR-GLES3.shaders.uniform_block.random.all_per_block_buffers.13,Fail
* KHR-GLES3.shaders.uniform_block.random.all_per_block_buffers.3,Fail
* KHR-GLES3.shaders.uniform_block.single_basic_array.shared.bvec3,Fail
* KHR-GLES3.shaders.uniform_block.single_basic_array.std140.bvec3,Fail
* dEQP-GLES3.functional.ubo.instance_array_basic_type.shared.bvec3_both,Fail
* dEQP-GLES3.functional.ubo.instance_array_basic_type.std140.bvec3_both,Fail
* dEQP-GLES3.functional.ubo.random.vector_types.24,Fail
* dEQP-GLES3.functional.ubo.single_basic_array.shared.bvec3_both,Fail
* dEQP-GLES3.functional.ubo.single_basic_array.std140.bvec3_both,Fail
Fixes: 9d4d9e6150
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33118 >
2025-01-21 11:58:37 +00:00
Pierre-Eric Pelloux-Prayer
9d4d9e6150
ac/llvm: enable wqm for ac_build_quad_swizzle from ac_build_fs_interp_mov
...
Without this, WQM is only used for the lds_param_load like this:
s_wqm_b64 exec, exec
lds_param_load v5, attr0.x wait_vdst:15
s_mov_b64 exec, s[0:1]
v_mov_b32_dpp v5, v5 quad_perm:[0,0,0,0] row_mask:0xf bank_mask:0xf
With this change we get:
s_wqm_b64 exec, exec
lds_param_load v5, attr0.x wait_vdst:15
s_mov_b64 exec, s[0:1]
...
s_wqm_b64 exec, exec
v_mov_b32_dpp v5, v5 quad_perm:[0,0,0,0] row_mask:0xf bank_mask:0xf
s_mov_b64 exec, s[0:1]
This fixes KHR-GL46.shaders.uniform_block.random.nested_structs_instance_arrays.0
and other similar tests with LLVM.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32959 >
2025-01-17 09:55:45 +00:00
Pierre-Eric Pelloux-Prayer
182d662ccf
ac/llvm: add wqm param to ac_build_quad_swizzle
...
And to ac_build_dpp because it's used from quad_swizzle.
No functional changes but will be used in the next commit.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32959 >
2025-01-17 09:55:45 +00:00
Marek Olšák
1f5220b03d
ac/llvm: remove the low-optimizing compiler option
...
Not needed with ACO. It was used for big shaders on old APUs that took
forever to compile.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33046 >
2025-01-16 02:58:03 +00:00
Marek Olšák
08a47fa05c
ac/llvm: lower vector load_const in NIR
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33046 >
2025-01-16 02:58:03 +00:00
Marek Olšák
d160252270
ac: use Z_EXPORT_FORMAT=32_AR for Z + Alpha mrtz exports
...
This should be faster than 32_ABGR.
Also, stencil exports are changed from UINT16_ABGR to 32_GR,
which should have no effect on performance.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33046 >
2025-01-16 02:58:03 +00:00
Timur Kristóf
cc0166462e
ac/nir: Move ac_nir_get_mem_access_flags to ac_nir.c
...
And change its name to indicate that it is NIR specific.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32966 >
2025-01-14 13:45:30 +01:00
Marek Olšák
dc8a40ff3e
ac/llvm: remove already lowered cases
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32782 >
2025-01-02 17:36:55 +00:00