mesa/src/panfrost/bifrost
Alyssa Rosenzweig 847361ba07 panfrost: Remove load_kernel_input path
Now the state tracker's responsible to lower away for us (and the state tracker
can do it correctly, our implementation is incorrect with a strict reading of
the Gallium contract).

Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18658>
2022-10-05 16:09:21 +00:00
..
test pan/bi: Strip negate when lowering swizzles 2022-09-19 17:22:58 +00:00
valhall pan/va: Add 8-bit integer max assembler case 2022-09-19 17:22:58 +00:00
ISA.xml pan/bi: Add phi nodes 2022-09-02 16:03:23 +00:00
Notes.txt
README.md
bi_builder.h.py pan/bi: Dynamically allocate source/dests 2022-09-02 16:03:23 +00:00
bi_helper_invocations.c pan/bi: Add and use bi_foreach_ssa_src macro 2022-09-02 16:03:24 +00:00
bi_layout.c
bi_liveness.c pan/bi: Add and use bi_foreach_ssa_src macro 2022-09-02 16:03:24 +00:00
bi_lower_divergent_indirects.c
bi_lower_swizzle.c pan/bi: Strip negate when lowering swizzles 2022-09-19 17:22:58 +00:00
bi_lower_xfb.c
bi_opcodes.c.py
bi_opcodes.h.py
bi_opt_constant_fold.c pan/bi: Assume non-null sources in constant folding 2022-09-02 16:03:23 +00:00
bi_opt_copy_prop.c pan/bi: Add and use bi_replace_src helper 2022-09-02 16:03:24 +00:00
bi_opt_cse.c pan/bi: Add and use bi_replace_src helper 2022-09-02 16:03:24 +00:00
bi_opt_dce.c pan/bi: Add and use bi_foreach_ssa_src macro 2022-09-02 16:03:24 +00:00
bi_opt_dual_tex.c pan/bi: Introduce TEXC_DUAL psuedoinstruction 2022-09-02 16:03:23 +00:00
bi_opt_message_preload.c pan/bi: Assume SSA in minor passes 2022-09-02 16:03:23 +00:00
bi_opt_mod_props.c pan/bi: Remove assert(bi_is_ssa(dest)) 2022-09-02 16:03:24 +00:00
bi_opt_push_ubo.c pan/bi: Use variable src/dest for collect/split 2022-09-02 16:03:23 +00:00
bi_pack.c pan/bi: Use safe helpers to remove srcs/dests 2022-09-02 16:03:23 +00:00
bi_packer.c.py
bi_pressure_schedule.c pan/bi: Add and use bi_foreach_ssa_src macro 2022-09-02 16:03:24 +00:00
bi_print.c
bi_print_common.c
bi_print_common.h
bi_printer.c.py pan/bi: Remove NIR registers from the IR 2022-09-02 16:03:24 +00:00
bi_quirks.h
bi_ra.c pan/bi: Fix memory leaks. 2022-09-18 10:18:04 -07:00
bi_schedule.c pan/bi: Add and use bi_replace_src helper 2022-09-02 16:03:24 +00:00
bi_scoreboard.c pan/bi: Don't read nonexistant sources 2022-09-02 16:03:23 +00:00
bi_test.h pan/bi: Dynamically allocate source/dests 2022-09-02 16:03:23 +00:00
bi_validate.c pan/bi: Strengenth assert in the validator 2022-09-02 16:03:24 +00:00
bifrost.h
bifrost_compile.c panfrost: Remove load_kernel_input path 2022-10-05 16:09:21 +00:00
bifrost_compile.h pan/bi: Lower fisnormal 2022-09-19 17:22:58 +00:00
bifrost_isa.py pan/bi: Add variable dest/src support to builder 2022-09-02 16:03:23 +00:00
bifrost_nir.h pan/bi: Optimize bitwise arithmetic of booleans 2022-08-19 20:48:37 +00:00
bifrost_nir_algebraic.py pan/bi: Implement unpack_64_2x32 2022-09-19 17:22:58 +00:00
bir.c pan/bi: Add and use bi_num_successors helper 2022-09-02 16:03:24 +00:00
cmdline.c
compiler.h pan/bi: Add and use bi_num_successors helper 2022-09-02 16:03:24 +00:00
disassemble.c
disassemble.h
gen_disasm.py
meson.build pan/bi: Unit test swizzle lowering 2022-09-19 17:22:58 +00:00
nodearray.h

README.md

Bifrost compiler

Register file

Defined partially in software, partially in hardware.

Blend shaders

R0 - R3: input (color #0) R4 - R7: input (color #1) R8 - R15: general purpose R48: return address

Fragment

Anything live during BLEND must respect blend shader registers.

R0 - R3: preloaded (message #0) R4 - R7: preloaded (message #1) R57 - R63: preloaded (various)

R0 - R15: general purpose (full threads) R48 - R63: general purpose (full threads)

R32 - R47: general purpose (half threads, or v6)