summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/transformfeedback.c
diff options
context:
space:
mode:
authorPaul Berry <[email protected]>2011-12-14 10:44:49 -0800
committerPaul Berry <[email protected]>2011-12-20 15:22:08 -0800
commit7d2ff0bf0b7422c34676c2f47dbe754f57edb51e (patch)
treea7b297b3b237d4b60b82301ef092c97b0e4a5059 /src/mesa/main/transformfeedback.c
parent21504b462acda4977c5fdfffc192e73273b8fb26 (diff)
i965 gen6: Implement rasterizer discard.
This patch enables rasterizer discard functionality (a part of transform feedback) in Gen6, by generating an alternate GS program when rasterizer discard is active. Instead of forwarding vertices down the pipeline, the alternate GS program uses a URB Write message to deallocate the URB entry that was allocated by FF sync and terminate the thread. Note: parts of the Sandy Bridge PRM seem to imply that we could do this more efficiently, by clearing the GEN6_GS_RENDERING_ENABLE bit, and not allocating a URB entry at all. However, it's not clear how we are supposed to terminate the thread if we do that. Volume 2 part 1, section 4.5.4, says "GS threads must terminate by sending a URB_WRITE message with the EOT and Complete bits set.", and my experiments so far confirm that. Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa/main/transformfeedback.c')
0 files changed, 0 insertions, 0 deletions