diff options
author | Brian Paul <[email protected]> | 2009-06-30 17:12:34 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2009-06-30 17:12:44 -0600 |
commit | 119eb4094256742013224afb7c5704b6254b6296 (patch) | |
tree | 82f1ab95b7cf661344b0b8d9fe3eee950a569e90 /src/mesa/drivers/dri/i965/brw_vs.h | |
parent | 1b6ae2e004b7a7a76508e0da3c45eb0d851ed10c (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.h | 1 |
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 1e4f66091e3..4a591365c98 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; |