From 8b212503052b767561d85108c435f375e0228f44 Mon Sep 17 00:00:00 2001 From: Corbin Simpson Date: Tue, 10 Mar 2009 15:40:41 -0700 Subject: r300-gallium: Begin R500 fragment shader assembler. I love it so much. I also hate it a lot. --- src/gallium/drivers/r300/r300_state_shader.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/gallium/drivers/r300/r300_state_shader.h') diff --git a/src/gallium/drivers/r300/r300_state_shader.h b/src/gallium/drivers/r300/r300_state_shader.h index 73025b2dcc..333f0f5d05 100644 --- a/src/gallium/drivers/r300/r300_state_shader.h +++ b/src/gallium/drivers/r300/r300_state_shader.h @@ -23,10 +23,25 @@ #ifndef R300_STATE_SHADER_H #define R300_STATE_SHADER_H +#include "tgsi/tgsi_parse.h" + #include "r300_context.h" #include "r300_reg.h" #include "r300_screen.h" +/* Temporary struct used to hold assembly state while putting together + * fragment programs. */ +struct r300_fs_asm { + /* Number of colors. */ + unsigned color_count; + /* Number of texcoords. */ + unsigned tex_count; + /* Offset for temporary registers. Inputs and temporaries have no + * distinguishing markings, so inputs start at 0 and the first usable + * temporary register is after all inputs. */ + unsigned temp_offset; +}; + void r300_translate_fragment_shader(struct r300_context* r300, struct r300_fragment_shader* fs); -- cgit v1.2.3