summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/i965/brw_vs.h
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2009-06-30 17:12:34 -0600
committerBrian Paul <brianp@vmware.com>2009-06-30 17:12:44 -0600
commit119eb4094256742013224afb7c5704b6254b6296 (patch)
tree82f1ab95b7cf661344b0b8d9fe3eee950a569e90 /src/mesa/drivers/dri/i965/brw_vs.h
parent1b6ae2e004b7a7a76508e0da3c45eb0d851ed10c (diff)
i965: first attempt at handling URB overflow when there's too many vs outputs
If we can't fit all the VS outputs into the MRF, we need to overflow into temporary GRF registers, then use some MOVs and a second brw_urb_WRITE() instruction to place the overflow vertex results into the URB. This is hit when a vertex/fragment shader pair has a large number of varying variables (12 or more). There's still something broken here, but it seems close...
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vs.h')
-rw-r--r--src/mesa/drivers/dri/i965/brw_vs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vs.h b/src/mesa/drivers/dri/i965/brw_vs.h
index 1e4f66091e..4a591365c9 100644
--- a/src/mesa/drivers/dri/i965/brw_vs.h
+++ b/src/mesa/drivers/dri/i965/brw_vs.h
@@ -58,6 +58,7 @@ struct brw_vs_compile {
GLuint first_output;
GLuint nr_outputs;
+ GLuint first_overflow_output; /**< VERT_ATTRIB_x */
GLuint first_tmp;
GLuint last_tmp;