ilo: add a toy shader compiler 42/6242/1
authorChia-I Wu <olv@lunarg.com>
Wed, 12 Dec 2012 21:48:28 +0000 (05:48 +0800)
committerChia-I Wu <olvaffe@gmail.com>
Fri, 26 Apr 2013 08:20:52 +0000 (16:20 +0800)
commit7118ff8bb02046bb2f440e2a5c48d9a41bb057b1
treefacfe5b880db82818b95521da5edc5803de749be
parent0fa2d0e98aec1e864f7edc225eb9cda449051733
ilo: add a toy shader compiler

This is a simple shader compiler that performs almost zero optimizations.  The
generated code is usually much larger comparing to that generated by i965.
The generated code also requires many more registers.

Function-wise, it lacks register spilling and does not support most TGSI
indirections.  Other than those, it works alright.
14 files changed:
src/gallium/drivers/ilo/Makefile.sources
src/gallium/drivers/ilo/shader/toy_compiler.c [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_compiler.h [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_compiler_asm.c [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_compiler_disasm.c [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_compiler_reg.h [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_helpers.h [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_legalize.c [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_legalize.h [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_legalize_ra.c [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_optimize.c [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_optimize.h [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_tgsi.c [new file with mode: 0644]
src/gallium/drivers/ilo/shader/toy_tgsi.h [new file with mode: 0644]