tree: 65f8070ef6c4d1683df6e5d60bb45fe6069f1389 [path history] [tgz]
  1. test/
  2. valhall/
  3. bi_builder.h.py
  4. bi_helper_invocations.c
  5. bi_layout.c
  6. bi_liveness.c
  7. bi_lower_divergent_indirects.c
  8. bi_lower_swizzle.c
  9. bi_opcodes.c.py
  10. bi_opcodes.h.py
  11. bi_opt_constant_fold.c
  12. bi_opt_copy_prop.c
  13. bi_opt_cse.c
  14. bi_opt_dce.c
  15. bi_opt_dual_tex.c
  16. bi_opt_message_preload.c
  17. bi_opt_mod_props.c
  18. bi_opt_push_ubo.c
  19. bi_pack.c
  20. bi_packer.c.py
  21. bi_pressure_schedule.c
  22. bi_print.c
  23. bi_print_common.c
  24. bi_print_common.h
  25. bi_printer.c.py
  26. bi_quirks.h
  27. bi_ra.c
  28. bi_schedule.c
  29. bi_scoreboard.c
  30. bi_test.h
  31. bi_validate.c
  32. bifrost.h
  33. bifrost_compile.c
  34. bifrost_compile.h
  35. bifrost_isa.py
  36. bifrost_nir.h
  37. bifrost_nir_algebraic.py
  38. bir.c
  39. cmdline.c
  40. compiler.h
  41. disassemble.c
  42. disassemble.h
  43. gen_disasm.py
  44. ISA.xml
  45. meson.build
  46. nodearray.h
  47. Notes.txt
  48. 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)