mesa/src/panfrost/bifrost
2021-06-21 09:03:34 -05:00
..
bi_builder.h.py pan/bi: Move typesize to common code 2021-06-15 20:27:22 +00:00
bi_layout.c pan/bi: Extract bi_ec0_packed helper 2021-02-08 14:07:29 +00:00
bi_liveness.c pan/bi: Track words instead of bytes in RA 2021-06-10 18:06:10 +00:00
bi_lower_divergent_indirects.c pan/bi: Add divergent intrinsic lowering pass 2021-05-07 18:20:30 +00:00
bi_lower_swizzle.c pan/bi: Change swizzled scalars to identity 2021-05-06 23:26:21 +00:00
bi_opcodes.c.py pan/bi: Track instruction size in opcode table 2021-06-15 20:27:22 +00:00
bi_opcodes.h.py pan/bi: Track instruction size in opcode table 2021-06-15 20:27:22 +00:00
bi_opt_constant_fold.c pan/bi: Add simple constant folding pass 2021-05-03 15:10:20 +00:00
bi_opt_copy_prop.c pan/bi: Move bi_word_node to common code 2021-06-15 20:27:22 +00:00
bi_opt_dce.c pan/bi: Explicit zero reg_live_{in, out} when needed 2021-06-10 18:06:10 +00:00
bi_opt_mod_props.c pan/bi: Fuse abs into FCMP/FMIN/FMAX.v2f16 2021-06-15 20:27:22 +00:00
bi_opt_push_ubo.c panfrost: Add a knob to disable the UBO -> push constants optimization 2021-03-11 15:10:57 +00:00
bi_pack.c pan/bi: Don't set the EOS flag if there's at least one successor 2021-04-21 15:46:16 +02:00
bi_packer.c.py pan/bi: Add "lane_dest" modifier 2021-05-03 15:10:20 +00:00
bi_print.c pan/bi: Add pcrel_idx to bi_clause 2021-02-08 14:07:29 +00:00
bi_print_common.c pan/bi: Move modifier prints out of common code 2020-12-23 12:48:06 -05:00
bi_print_common.h pan/bi: Move modifier prints out of common code 2020-12-23 12:48:06 -05:00
bi_printer.c.py pan/bi: Add "lane_dest" modifier 2021-05-03 15:10:20 +00:00
bi_quirks.h panfrost: Add GPU IDs for G52 1-Core-2EE (RK3568/RK3566) 2021-05-12 20:45:44 +00:00
bi_ra.c pan/bi: Don't allocate past the end of the reg file 2021-06-10 18:06:10 +00:00
bi_schedule.c pan/bi: Schedule FCMP.v2f16 with abs modifier 2021-06-15 20:27:22 +00:00
bi_scoreboard.c pan/bi: Stub scoreboarding 2021-02-18 21:48:21 +00:00
bi_test_pack.c pan/bi: Add packing format tests 2021-01-29 16:55:44 +00:00
bifrost.h pan/bi: Remove unused definitions 2021-02-22 19:17:50 +00:00
bifrost_compile.c nir,panfrost: Suffix fsat_signed and fclamp_pos with _mali 2021-06-21 09:03:34 -05:00
bifrost_compile.h nir, nir/algebraic: add byte/word insertion instructions 2021-06-08 08:57:42 +00:00
bifrost_isa.py pan/bi: Move typesize to common code 2021-06-15 20:27:22 +00:00
bifrost_nir.h pan/bi: Add back custom algebraic opts 2021-06-15 20:27:22 +00:00
bifrost_nir_algebraic.py nir,panfrost: Suffix fsat_signed and fclamp_pos with _mali 2021-06-21 09:03:34 -05:00
bir.c pan/bi: Track words instead of bytes in RA 2021-06-10 18:06:10 +00:00
cmdline.c panfrost: Move the shader compilation logic out of the gallium driver 2021-02-15 11:23:46 +00:00
compiler.h pan/bi: Propagate fabs/neg/sat 2021-06-15 20:27:22 +00:00
disassemble.c Convert most remaining free-form fall-through comments to FALLTHROUGH 2021-04-15 16:01:22 +00:00
disassemble.h pan/bi: Move bi_constants to bifrost.h 2021-01-29 16:55:44 +00:00
gen_disasm.py pan/bi: Rename isa_parse to bifrost_isa 2020-12-23 17:06:57 +00:00
ISA.xml pan/bi: Replace lane0 modifier with lane_dest for load instructions 2021-05-03 15:10:20 +00:00
meson.build pan/bi: Add back custom algebraic opts 2021-06-15 20:27:22 +00:00
Notes.txt pan/bi: Move notes on ADD ops to notes file 2020-03-03 00:03:50 +00:00
README.md pan/bi: Document register conventions 2021-04-03 12:47:29 -04:00

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)