mesa/src/asahi/compiler
Alyssa Rosenzweig fc88876329 agx: Handle linear 2D array textureSize()
We handle linear 2D arrays internally for blit shaders, so we need textureSize
to work for these. That requires some special casing, because there's a line
stride where the layer count would otherwise be. But it's not too bad.

Fixes
dEQP-GLES3.functional.shaders.texture_functions.texturesize.sampler2darray_*
when forcing linear textures.

Since we clamp array access to the maximum layer, we need textureSize() to work
for even the most basic array texturing. So this should fix blits from linear 2D
arrays as well, which finally unlocks support for compressed arrays/cubes/3D
textures.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22891>
2023-05-07 09:00:59 -04:00
..
test asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_builder.h.py asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_compile.c asahi: Fix disk cache disable with AGX_MESA_DEBUG 2023-05-07 09:00:40 -04:00
agx_compile.h asahi: Implement null textures 2023-04-07 03:23:03 +00:00
agx_compiler.h asahi: Fix disk cache disable with AGX_MESA_DEBUG 2023-05-07 09:00:40 -04:00
agx_dce.c asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_debug.h asahi: Fix disk cache disable with AGX_MESA_DEBUG 2023-05-07 09:00:40 -04:00
agx_insert_waits.c agx: isolate compiler debug flags 2023-03-08 02:07:44 +00:00
agx_internal_formats.h agx: Add agx_internal_format_supports_mask helper 2023-02-21 08:10:15 +00:00
agx_ir.c agx: Factor out allows_16bit_immediate check 2023-03-05 09:27:02 +00:00
agx_liveness.c asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_lower_64bit.c asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_lower_parallel_copy.c asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_lower_pseudo.c asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_lower_uniform_sources.c agx: Don't allow uniform source to local_atomic 2023-04-07 03:23:03 +00:00
agx_minifloat.h asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_nir.h agx: Mask shifts in the backend 2023-03-05 07:52:22 +00:00
agx_nir_algebraic.py agx: Implement extract_[ui]16 2023-03-11 14:15:50 +00:00
agx_nir_lower_address.c agx/lower_address: Handle 16-bit offsets 2023-03-07 02:58:35 +00:00
agx_nir_lower_frag_sidefx.c agx: Fix clang-formatting 2023-03-10 06:33:01 +00:00
agx_nir_lower_load_mask.c asahi: Clang-format the subtree 2022-12-27 22:46:29 +00:00
agx_nir_lower_shared_bitsize.c agx: Lower shared memory offsets to 16-bit 2023-02-20 18:50:39 +00:00
agx_nir_lower_texture.c agx: Handle linear 2D array textureSize() 2023-05-07 09:00:59 -04:00
agx_nir_lower_ubo.c agx: Use load_global_constant for UBO lowering 2023-01-11 20:36:51 +00:00
agx_nir_lower_zs_emit.c agx/lower_zs_emit: Fix progress returning 2023-05-07 09:00:56 -04:00
agx_nir_opt_preamble.c asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_opcodes.c.py asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_opcodes.h.py asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_opcodes.py agx: Make signal_pix instructions explicit 2023-04-07 03:23:04 +00:00
agx_opt_cse.c asahi: fix a few typos 2023-03-17 22:11:33 +00:00
agx_optimizer.c agx: Fix abs/neg propagation into fcmpsel 2023-05-07 09:00:56 -04:00
agx_pack.c agx: Fix abs/neg propagation into fcmpsel 2023-05-07 09:00:56 -04:00
agx_performance.c agx: Add helper for calculating occupancy 2023-04-07 03:23:03 +00:00
agx_print.c asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
agx_register_allocate.c agx: Handle splits of uniforms 2023-05-07 09:00:56 -04:00
agx_validate.c asahi: Convert to SPDX headers 2023-03-28 05:14:00 +00:00
meson.build agx: Add helper for calculating occupancy 2023-04-07 03:23:03 +00:00