On 06/09/2017 12:00 AM, Ian Romanick wrote:
Is there any particular application that these series should help? Was
a performance improvement measured?
This series doesn't target any particular applications. It can help apps
that update scissor boxes often because pipe_rasterizer is no longer
updated in this situation.
The main idea behind this is actually to reduce the number of st/mesa
changes and to not rely on the _NEW_xxx mesa flags in the state tracker.
On 06/06/2017 12:59 PM, Samuel Pitoiset wrote:
_NEW_SCISSOR mesa flag is set when a scissor test is enabled/disabled
or when a new rectangle is defined. However, it triggers too much
changes in the state tracker.
Actually, ST_NEW_RASTERIZER should only be called when a scissor
test is enabled/disabled, while ST_NEW_SCISSOR should be called
in both situations.
In other words, this will avoid to update the rasterizer every
time a new rectangle is defined using glScissor*().
Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com>
---
src/mesa/main/mtypes.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index 7ec012321f..5d327d0dc7 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -4402,6 +4402,12 @@ struct gl_driver_flags
* gl_context::Scissor::WindowRects
*/
uint64_t NewWindowRectangles;
+
+ /** gl_context::Scissor::EnableFlags */
+ uint64_t NewScissorTest;
+
+ /** gl_context::Scissor::ScissorArray */
+ uint64_t NewScissorRect;
};
struct gl_uniform_buffer_binding
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev