[Mesa-dev] [PATCH 34/37] i965: Consider only the scissor rectangle for viewport 0 for clears

2014-01-17 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com

noop_scissor (correctly) only examines the scissor rectangle for
viewport 0.  Therefore, it should only be called when that scissor
rectangle is enabled.

Signed-off-by: Ian Romanick ian.d.roman...@intel.com
---
 src/mesa/drivers/dri/i965/brw_clear.c   | 2 +-
 src/mesa/drivers/dri/radeon/radeon_common.c | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_clear.c 
b/src/mesa/drivers/dri/i965/brw_clear.c
index 72950cb..659d339 100644
--- a/src/mesa/drivers/dri/i965/brw_clear.c
+++ b/src/mesa/drivers/dri/i965/brw_clear.c
@@ -121,7 +121,7 @@ brw_fast_clear_depth(struct gl_context *ctx)
 * a previous clear had happened at a different clear value and resolve it
 * first.
 */
-   if (ctx-Scissor.EnableFlags  !noop_scissor(ctx, fb)) {
+   if ((ctx-Scissor.EnableFlags  1)  !noop_scissor(ctx, fb)) {
   perf_debug(Failed to fast clear depth due to scissor being enabled.  
  Possible 5%% performance win if avoided.\n);
   return false;
diff --git a/src/mesa/drivers/dri/radeon/radeon_common.c 
b/src/mesa/drivers/dri/radeon/radeon_common.c
index e900bc5..d8839d1 100644
--- a/src/mesa/drivers/dri/radeon/radeon_common.c
+++ b/src/mesa/drivers/dri/radeon/radeon_common.c
@@ -400,8 +400,7 @@ void radeon_viewport(struct gl_context *ctx)
 {
radeonContextPtr radeon = RADEON_CONTEXT(ctx);
__DRIcontext *driContext = radeon-dri.context;
-   void (*old_viewport)(struct gl_context *ctx, GLint x, GLint y,
-GLsizei w, GLsizei h);
+   void (*old_viewport)(struct gl_context *ctx);
 
if (_mesa_is_winsys_fbo(ctx-DrawBuffer)) {
if (radeon-is_front_buffer_rendering) {
-- 
1.8.1.4

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH 34/37] i965: Consider only the scissor rectangle for viewport 0 for clears

2014-01-17 Thread Kenneth Graunke
On 01/17/2014 05:03 PM, Ian Romanick wrote:
 From: Ian Romanick ian.d.roman...@intel.com
 
 noop_scissor (correctly) only examines the scissor rectangle for
 viewport 0.  Therefore, it should only be called when that scissor
 rectangle is enabled.
 
 Signed-off-by: Ian Romanick ian.d.roman...@intel.com
 ---
  src/mesa/drivers/dri/i965/brw_clear.c   | 2 +-
  src/mesa/drivers/dri/radeon/radeon_common.c | 3 +--
  2 files changed, 2 insertions(+), 3 deletions(-)
 
 diff --git a/src/mesa/drivers/dri/i965/brw_clear.c 
 b/src/mesa/drivers/dri/i965/brw_clear.c
 index 72950cb..659d339 100644
 --- a/src/mesa/drivers/dri/i965/brw_clear.c
 +++ b/src/mesa/drivers/dri/i965/brw_clear.c
 @@ -121,7 +121,7 @@ brw_fast_clear_depth(struct gl_context *ctx)
  * a previous clear had happened at a different clear value and resolve it
  * first.
  */
 -   if (ctx-Scissor.EnableFlags  !noop_scissor(ctx, fb)) {
 +   if ((ctx-Scissor.EnableFlags  1)  !noop_scissor(ctx, fb)) {
perf_debug(Failed to fast clear depth due to scissor being enabled.  
   Possible 5%% performance win if avoided.\n);
return false;

This hunk is:
Reviewed-by: Kenneth Graunke kenn...@whitecape.org

But:

 diff --git a/src/mesa/drivers/dri/radeon/radeon_common.c 
 b/src/mesa/drivers/dri/radeon/radeon_common.c
 index e900bc5..d8839d1 100644
 --- a/src/mesa/drivers/dri/radeon/radeon_common.c
 +++ b/src/mesa/drivers/dri/radeon/radeon_common.c
 @@ -400,8 +400,7 @@ void radeon_viewport(struct gl_context *ctx)
  {
   radeonContextPtr radeon = RADEON_CONTEXT(ctx);
   __DRIcontext *driContext = radeon-dri.context;
 - void (*old_viewport)(struct gl_context *ctx, GLint x, GLint y,
 -  GLsizei w, GLsizei h);
 + void (*old_viewport)(struct gl_context *ctx);
  
   if (_mesa_is_winsys_fbo(ctx-DrawBuffer)) {
   if (radeon-is_front_buffer_rendering) {
 

This hunk clearly goes somewhere else.
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev