diff options
author | Corbin Simpson <[email protected]> | 2009-02-12 20:01:09 -0800 |
---|---|---|
committer | Corbin Simpson <[email protected]> | 2009-02-12 20:01:09 -0800 |
commit | 637b24a5904ab78cbd3fc61ea5fe39c52be711ce (patch) | |
tree | 463da95efc3b1a40cd17332c9915528cabd9375d /src/gallium/drivers/r300/r300_context.h | |
parent | f2a36d334c6fbe3787d44c6203f54ccb184fb923 (diff) |
r300-gallium: Add r300 passthrough shader.
Diffstat (limited to 'src/gallium/drivers/r300/r300_context.h')
-rw-r--r-- | src/gallium/drivers/r300/r300_context.h | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/src/gallium/drivers/r300/r300_context.h b/src/gallium/drivers/r300/r300_context.h index a29201eabaf..54879f88f54 100644 --- a/src/gallium/drivers/r300/r300_context.h +++ b/src/gallium/drivers/r300/r300_context.h @@ -108,9 +108,6 @@ struct r3xx_fragment_shader { /* Has this shader been translated yet? */ boolean translated; - /* Number of used instructions */ - int instruction_count; - /* Pixel stack size */ int stack_size; }; @@ -118,12 +115,38 @@ struct r3xx_fragment_shader { struct r300_fragment_shader { /* Parent class */ struct r3xx_fragment_shader shader; + + /* Number of ALU instructions */ + int alu_instruction_count; + + /* Number of texture instructions */ + int tex_instruction_count; + + /* Number of texture indirections */ + int indirections; + + /* Indirection node offsets */ + int offset0; + int offset1; + int offset2; + int offset3; + + /* Machine instructions */ + struct { + uint32_t alu_rgb_inst; + uint32_t alu_rgb_addr; + uint32_t alu_alpha_inst; + uint32_t alu_alpha_addr; + } instructions[64]; /* XXX magic num */ }; struct r500_fragment_shader { /* Parent class */ struct r3xx_fragment_shader shader; + /* Number of used instructions */ + int instruction_count; + /* Machine instructions */ struct { uint32_t inst0; |