mesa/src/asahi/lib
Alyssa Rosenzweig 9a58a8257e treewide: Switch to nir_progress
Via the Coccinelle patch at the end of the commit message, followed by

sed -ie 's/progress = progress | /progress |=/g' $(git grep -l 'progress = prog')
ninja -C ~/mesa/build clang-format
cd ~/mesa/src/compiler/nir && clang-format -i *.c
agxfmt

    @@
    identifier prog;
    expression impl, metadata;
    @@

    -if (prog) {
    -nir_metadata_preserve(impl, metadata);
    -} else {
    -nir_metadata_preserve(impl, nir_metadata_all);
    -}
    -return prog;
    +return nir_progress(prog, impl, metadata);

    @@
    expression prog_expr, impl, metadata;
    @@

    -if (prog_expr) {
    -nir_metadata_preserve(impl, metadata);
    -return true;
    -} else {
    -nir_metadata_preserve(impl, nir_metadata_all);
    -return false;
    -}
    +bool progress = prog_expr;
    +return nir_progress(progress, impl, metadata);

    @@
    identifier prog;
    expression impl, metadata;
    @@

    -nir_metadata_preserve(impl, prog ? (metadata) : nir_metadata_all);
    -return prog;
    +return nir_progress(prog, impl, metadata);

    @@
    identifier prog;
    expression impl, metadata;
    @@

    -nir_metadata_preserve(impl, prog ? (metadata) : nir_metadata_all);
    +nir_progress(prog, impl, metadata);

    @@
    expression impl, metadata;
    @@

    -nir_metadata_preserve(impl, metadata);
    -return true;
    +return nir_progress(true, impl, metadata);

    @@
    expression impl;
    @@

    -nir_metadata_preserve(impl, nir_metadata_all);
    -return false;
    +return nir_no_progress(impl);

    @@
    identifier other_prog, prog;
    expression impl, metadata;
    @@

    -if (prog) {
    -nir_metadata_preserve(impl, metadata);
    -} else {
    -nir_metadata_preserve(impl, nir_metadata_all);
    -}
    -other_prog |= prog;
    +other_prog = other_prog | nir_progress(prog, impl, metadata);

    @@
    identifier prog;
    expression impl, metadata;
    @@

    -if (prog) {
    -nir_metadata_preserve(impl, metadata);
    -} else {
    -nir_metadata_preserve(impl, nir_metadata_all);
    -}
    +nir_progress(prog, impl, metadata);

    @@
    identifier other_prog, prog;
    expression impl, metadata;
    @@

    -if (prog) {
    -nir_metadata_preserve(impl, metadata);
    -other_prog = true;
    -} else {
    -nir_metadata_preserve(impl, nir_metadata_all);
    -}
    +other_prog = other_prog | nir_progress(prog, impl, metadata);

    @@
    expression prog_expr, impl, metadata;
    identifier prog;
    @@

    -if (prog_expr) {
    -nir_metadata_preserve(impl, metadata);
    -prog = true;
    -} else {
    -nir_metadata_preserve(impl, nir_metadata_all);
    -}
    +bool impl_progress = prog_expr;
    +prog = prog | nir_progress(impl_progress, impl, metadata);

    @@
    identifier other_prog, prog;
    expression impl, metadata;
    @@

    -if (prog) {
    -other_prog = true;
    -nir_metadata_preserve(impl, metadata);
    -} else {
    -nir_metadata_preserve(impl, nir_metadata_all);
    -}
    +other_prog = other_prog | nir_progress(prog, impl, metadata);

    @@
    expression prog_expr, impl, metadata;
    identifier prog;
    @@

    -if (prog_expr) {
    -prog = true;
    -nir_metadata_preserve(impl, metadata);
    -} else {
    -nir_metadata_preserve(impl, nir_metadata_all);
    -}
    +bool impl_progress = prog_expr;
    +prog = prog | nir_progress(impl_progress, impl, metadata);

    @@
    expression prog_expr, impl, metadata;
    @@

    -if (prog_expr) {
    -nir_metadata_preserve(impl, metadata);
    -} else {
    -nir_metadata_preserve(impl, nir_metadata_all);
    -}
    +bool impl_progress = prog_expr;
    +nir_progress(impl_progress, impl, metadata);

    @@
    identifier prog;
    expression impl, metadata;
    @@

    -nir_metadata_preserve(impl, metadata);
    -prog = true;
    +prog = nir_progress(true, impl, metadata);

    @@
    identifier prog;
    expression impl, metadata;
    @@

    -if (prog) {
    -nir_metadata_preserve(impl, metadata);
    -}
    -return prog;
    +return nir_progress(prog, impl, metadata);

    @@
    identifier prog;
    expression impl, metadata;
    @@

    -if (prog) {
    -nir_metadata_preserve(impl, metadata);
    -}
    +nir_progress(prog, impl, metadata);

    @@
    expression impl;
    @@

    -nir_metadata_preserve(impl, nir_metadata_all);
    +nir_no_progress(impl);

    @@
    expression impl, metadata;
    @@

    -nir_metadata_preserve(impl, metadata);
    +nir_progress(true, impl, metadata);

squashme! sed -ie 's/progress = progress | /progress |=/g' $(git grep -l 'progress = prog')

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33722>
2025-02-26 15:19:53 +00:00
..
tests asahi: add missing tib alignment check 2024-01-10 08:44:38 -04:00
.editorconfig asahi: UAPI update to add GET_TIME & cleanup 2024-12-02 19:26:46 +00:00
agx_abi.h asahi: bind zero-page 2025-02-22 02:24:28 +00:00
agx_bg_eot.c asahi: use NIR_PASS to validate more 2025-02-22 02:24:28 +00:00
agx_bg_eot.h asahi,vtn: precompile kernels 2024-11-28 17:34:12 +00:00
agx_bo.c asahi: fix agxdecode memory mapping 2024-12-02 19:26:47 +00:00
agx_bo.h asahi,hk: mmap BO on first use 2024-12-02 19:26:46 +00:00
agx_border.c ail: swallow up formats 2024-09-02 23:27:14 +00:00
agx_device.c asahi: fix null deref in error path 2025-02-22 02:24:29 +00:00
agx_device.h asahi: support unbinding VA in agx_va_free 2025-02-22 02:24:28 +00:00
agx_device_virtio.c asahi: support sparse in virtgpu 2025-02-22 02:24:29 +00:00
agx_device_virtio.h asahi: add broken bits of unstable Linux UAPI 2024-06-14 15:44:30 +00:00
agx_helpers.h ail: split compression up 2025-02-26 00:03:52 +00:00
agx_linker.c asahi,hk: mmap BO on first use 2024-12-02 19:26:46 +00:00
agx_linker.h hk,libagx: handle adjacency without a GS 2024-12-21 01:50:32 +00:00
agx_nir_format_helpers.h asahi/lib: use #pragma once 2024-02-14 21:02:32 +00:00
agx_nir_lower_alpha.c treewide: Switch to nir_progress 2025-02-26 15:19:53 +00:00
agx_nir_lower_gs.c treewide: Switch to nir_progress 2025-02-26 15:19:53 +00:00
agx_nir_lower_gs.h asahi: port to vtn_bindgen2 2025-01-31 16:17:59 +00:00
agx_nir_lower_ia.c hk,libagx: handle adjacency without a GS 2024-12-21 01:50:32 +00:00
agx_nir_lower_msaa.c treewide: Switch to nir_progress 2025-02-26 15:19:53 +00:00
agx_nir_lower_sample_intrinsics.c treewide: use nir_def_replace sometimes 2024-06-21 15:36:56 +00:00
agx_nir_lower_tess.c treewide: Switch to nir_progress 2025-02-26 15:19:53 +00:00
agx_nir_lower_tilebuffer.c asahi: switch tib lower to intrinsic pass 2025-02-22 02:24:28 +00:00
agx_nir_lower_uvs.c treewide: use nir_metadata_control_flow 2024-06-17 16:28:14 -04:00
agx_nir_lower_vbo.c asahi: optimize !robustness with soft fault 2024-10-05 18:30:13 +00:00
agx_nir_lower_vbo.h asahi: implement rba2 semantics for vbo 2024-06-16 12:15:22 -04:00
agx_nir_prolog_epilog.c treewide: Switch to nir_progress 2025-02-26 15:19:53 +00:00
agx_ppp.h asahi: split frag shader words 2024-05-16 13:25:56 -04:00
agx_scratch.c asahi,hk: mmap BO on first use 2024-12-02 19:26:46 +00:00
agx_scratch.h asahi,vtn: precompile kernels 2024-11-28 17:34:12 +00:00
agx_tilebuffer.c asahi: add tib sample setter helper 2024-10-05 18:30:10 +00:00
agx_tilebuffer.h asahi: add tib sample setter helper 2024-10-05 18:30:10 +00:00
agx_usc.h asahi,vtn: precompile kernels 2024-11-28 17:34:12 +00:00
agx_uvs.h asahi: extend varying linking for tri fan weirdness 2024-05-14 04:57:27 +00:00
agx_va.c asahi: support unbinding VA in agx_va_free 2025-02-22 02:24:28 +00:00
asahi_proto.h asahi: reformat 2024-12-21 01:50:31 +00:00
decode.c asahi: fix libwrap.dylib 2025-02-22 02:24:28 +00:00
decode.h asahi: stop fixing up USC addresses 2024-08-12 18:36:26 -04:00
dyld_interpose.h asahi: Clang-format the subtree 2022-12-27 22:46:29 +00:00
meson.build asahi: drop trivial depends 2025-02-22 02:24:29 +00:00
pool.c asahi,hk: mmap BO on first use 2024-12-02 19:26:46 +00:00
pool.h asahi: label individual pools 2024-12-02 19:26:46 +00:00
unstable_asahi_drm.h asahi: UAPI update to add support for user timestamp buffers 2024-12-02 19:26:46 +00:00
wrap.c asahi: fix libwrap.dylib 2025-02-22 02:24:28 +00:00