tree: cdc5cd64c47955f0b2802f4ecd781d35f466642d [path history] [tgz]
  1. bi_builder.h.py
  2. bi_layout.c
  3. bi_liveness.c
  4. bi_lower_swizzle.c
  5. bi_opcodes.c.py
  6. bi_opcodes.h.py
  7. bi_opt_copy_prop.c
  8. bi_opt_dce.c
  9. bi_opt_push_ubo.c
  10. bi_pack.c
  11. bi_packer.c.py
  12. bi_print.c
  13. bi_print_common.c
  14. bi_print_common.h
  15. bi_printer.c.py
  16. bi_quirks.h
  17. bi_ra.c
  18. bi_schedule.c
  19. bi_scoreboard.c
  20. bi_test_pack.c
  21. bifrost.h
  22. bifrost_compile.c
  23. bifrost_compile.h
  24. bifrost_isa.py
  25. bifrost_nir.h
  26. bifrost_nir_algebraic.py
  27. bir.c
  28. cmdline.c
  29. compiler.h
  30. disassemble.c
  31. disassemble.h
  32. gen_disasm.py
  33. ISA.xml
  34. meson.build
  35. Notes.txt
  36. README.md
src/panfrost/bifrost/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)