Re: [Mesa-dev] [PATCH] [RFC] r600g: enable SB backend by default

2013-08-23 Thread Christian König

Am 22.08.2013 18:20, schrieb Vadim Girlin:

Signed-off-by: Vadim Girlin vadimgir...@gmail.com


Sounds good if it's stable enough.

Reviewed-by: Christian König christian.koe...@amd.com


---
  src/gallium/drivers/r600/r600_asm.c| 3 ++-
  src/gallium/drivers/r600/r600_pipe.c   | 4 ++--
  src/gallium/drivers/r600/r600_pipe.h   | 2 +-
  src/gallium/drivers/r600/r600_shader.c | 2 +-
  4 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_asm.c 
b/src/gallium/drivers/r600/r600_asm.c
index b8eedae..a0492a6 100644
--- a/src/gallium/drivers/r600/r600_asm.c
+++ b/src/gallium/drivers/r600/r600_asm.c
@@ -2281,7 +2281,8 @@ void *r600_create_vertex_fetch_shader(struct pipe_context 
*ctx,
uint32_t *bytecode;
int i, j, r, fs_size;
struct r600_fetch_shader *shader;
-   unsigned sb_disasm = rctx-screen-debug_flags  (DBG_SB_DISASM | 
DBG_SB);
+   unsigned no_sb = rctx-screen-debug_flags  DBG_NO_SB;
+   unsigned sb_disasm = !no_sb || (rctx-screen-debug_flags  
DBG_SB_DISASM);
  
  	assert(count  32);
  
diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c

index 2be5910..edd50f0 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -67,8 +67,8 @@ static const struct debug_named_value debug_options[] = {
{ noinvalrange, DBG_NO_DISCARD_RANGE, Disable handling of 
INVALIDATE_RANGE map flags },
  
  	/* shader backend */

-   { sb, DBG_SB, Enable optimization of graphics shaders },
-   { sbcl, DBG_SB_CS, Enable optimization of compute shaders },
+   { nosb, DBG_NO_SB, Disable sb backend for graphics shaders },
+   { sbcl, DBG_SB_CS, Enable sb backend for compute shaders },
{ sbdry, DBG_SB_DRY_RUN, Don't use optimized bytecode (just print the 
dumps) },
{ sbstat, DBG_SB_STAT, Print optimization statistics for shaders },
{ sbdump, DBG_SB_DUMP, Print IR dumps after some optimization 
passes },
diff --git a/src/gallium/drivers/r600/r600_pipe.h 
b/src/gallium/drivers/r600/r600_pipe.h
index 21d68c9..398ac89 100644
--- a/src/gallium/drivers/r600/r600_pipe.h
+++ b/src/gallium/drivers/r600/r600_pipe.h
@@ -249,7 +249,7 @@ typedef boolean (*r600g_dma_blit_t)(struct pipe_context 
*ctx,
  #define DBG_NO_ASYNC_DMA  (1  19)
  #define DBG_NO_DISCARD_RANGE  (1  20)
  /* shader backend */
-#define DBG_SB (1  21)
+#define DBG_NO_SB  (1  21)
  #define DBG_SB_CS (1  22)
  #define DBG_SB_DRY_RUN(1  23)
  #define DBG_SB_STAT   (1  24)
diff --git a/src/gallium/drivers/r600/r600_shader.c 
b/src/gallium/drivers/r600/r600_shader.c
index fb766c4..1563430 100644
--- a/src/gallium/drivers/r600/r600_shader.c
+++ b/src/gallium/drivers/r600/r600_shader.c
@@ -140,7 +140,7 @@ int r600_pipe_shader_create(struct pipe_context *ctx,
int r, i;
uint32_t *ptr;
bool dump = r600_can_dump_shader(rctx-screen, 
tgsi_get_processor_type(sel-tokens));
-   unsigned use_sb = rctx-screen-debug_flags  DBG_SB;
+   unsigned use_sb = !(rctx-screen-debug_flags  DBG_NO_SB);
unsigned sb_disasm = use_sb || (rctx-screen-debug_flags  
DBG_SB_DISASM);
  
  	shader-shader.bc.isa = rctx-isa;


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


[Mesa-dev] [PATCH] [RFC] r600g: enable SB backend by default

2013-08-22 Thread Vadim Girlin
Signed-off-by: Vadim Girlin vadimgir...@gmail.com
---
 src/gallium/drivers/r600/r600_asm.c| 3 ++-
 src/gallium/drivers/r600/r600_pipe.c   | 4 ++--
 src/gallium/drivers/r600/r600_pipe.h   | 2 +-
 src/gallium/drivers/r600/r600_shader.c | 2 +-
 4 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_asm.c 
b/src/gallium/drivers/r600/r600_asm.c
index b8eedae..a0492a6 100644
--- a/src/gallium/drivers/r600/r600_asm.c
+++ b/src/gallium/drivers/r600/r600_asm.c
@@ -2281,7 +2281,8 @@ void *r600_create_vertex_fetch_shader(struct pipe_context 
*ctx,
uint32_t *bytecode;
int i, j, r, fs_size;
struct r600_fetch_shader *shader;
-   unsigned sb_disasm = rctx-screen-debug_flags  (DBG_SB_DISASM | 
DBG_SB);
+   unsigned no_sb = rctx-screen-debug_flags  DBG_NO_SB;
+   unsigned sb_disasm = !no_sb || (rctx-screen-debug_flags  
DBG_SB_DISASM);
 
assert(count  32);
 
diff --git a/src/gallium/drivers/r600/r600_pipe.c 
b/src/gallium/drivers/r600/r600_pipe.c
index 2be5910..edd50f0 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -67,8 +67,8 @@ static const struct debug_named_value debug_options[] = {
{ noinvalrange, DBG_NO_DISCARD_RANGE, Disable handling of 
INVALIDATE_RANGE map flags },
 
/* shader backend */
-   { sb, DBG_SB, Enable optimization of graphics shaders },
-   { sbcl, DBG_SB_CS, Enable optimization of compute shaders },
+   { nosb, DBG_NO_SB, Disable sb backend for graphics shaders },
+   { sbcl, DBG_SB_CS, Enable sb backend for compute shaders },
{ sbdry, DBG_SB_DRY_RUN, Don't use optimized bytecode (just print 
the dumps) },
{ sbstat, DBG_SB_STAT, Print optimization statistics for shaders },
{ sbdump, DBG_SB_DUMP, Print IR dumps after some optimization 
passes },
diff --git a/src/gallium/drivers/r600/r600_pipe.h 
b/src/gallium/drivers/r600/r600_pipe.h
index 21d68c9..398ac89 100644
--- a/src/gallium/drivers/r600/r600_pipe.h
+++ b/src/gallium/drivers/r600/r600_pipe.h
@@ -249,7 +249,7 @@ typedef boolean (*r600g_dma_blit_t)(struct pipe_context 
*ctx,
 #define DBG_NO_ASYNC_DMA   (1  19)
 #define DBG_NO_DISCARD_RANGE   (1  20)
 /* shader backend */
-#define DBG_SB (1  21)
+#define DBG_NO_SB  (1  21)
 #define DBG_SB_CS  (1  22)
 #define DBG_SB_DRY_RUN (1  23)
 #define DBG_SB_STAT(1  24)
diff --git a/src/gallium/drivers/r600/r600_shader.c 
b/src/gallium/drivers/r600/r600_shader.c
index fb766c4..1563430 100644
--- a/src/gallium/drivers/r600/r600_shader.c
+++ b/src/gallium/drivers/r600/r600_shader.c
@@ -140,7 +140,7 @@ int r600_pipe_shader_create(struct pipe_context *ctx,
int r, i;
uint32_t *ptr;
bool dump = r600_can_dump_shader(rctx-screen, 
tgsi_get_processor_type(sel-tokens));
-   unsigned use_sb = rctx-screen-debug_flags  DBG_SB;
+   unsigned use_sb = !(rctx-screen-debug_flags  DBG_NO_SB);
unsigned sb_disasm = use_sb || (rctx-screen-debug_flags  
DBG_SB_DISASM);
 
shader-shader.bc.isa = rctx-isa;
-- 
1.8.3.1

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


Re: [Mesa-dev] [PATCH] [RFC] r600g: enable SB backend by default

2013-08-22 Thread Marek Olšák
Reviewed-by: Marek Olšák mar...@gmail.com

Marek

On Thu, Aug 22, 2013 at 6:20 PM, Vadim Girlin vadimgir...@gmail.com wrote:
 Signed-off-by: Vadim Girlin vadimgir...@gmail.com
 ---
  src/gallium/drivers/r600/r600_asm.c| 3 ++-
  src/gallium/drivers/r600/r600_pipe.c   | 4 ++--
  src/gallium/drivers/r600/r600_pipe.h   | 2 +-
  src/gallium/drivers/r600/r600_shader.c | 2 +-
  4 files changed, 6 insertions(+), 5 deletions(-)

 diff --git a/src/gallium/drivers/r600/r600_asm.c 
 b/src/gallium/drivers/r600/r600_asm.c
 index b8eedae..a0492a6 100644
 --- a/src/gallium/drivers/r600/r600_asm.c
 +++ b/src/gallium/drivers/r600/r600_asm.c
 @@ -2281,7 +2281,8 @@ void *r600_create_vertex_fetch_shader(struct 
 pipe_context *ctx,
 uint32_t *bytecode;
 int i, j, r, fs_size;
 struct r600_fetch_shader *shader;
 -   unsigned sb_disasm = rctx-screen-debug_flags  (DBG_SB_DISASM | 
 DBG_SB);
 +   unsigned no_sb = rctx-screen-debug_flags  DBG_NO_SB;
 +   unsigned sb_disasm = !no_sb || (rctx-screen-debug_flags  
 DBG_SB_DISASM);

 assert(count  32);

 diff --git a/src/gallium/drivers/r600/r600_pipe.c 
 b/src/gallium/drivers/r600/r600_pipe.c
 index 2be5910..edd50f0 100644
 --- a/src/gallium/drivers/r600/r600_pipe.c
 +++ b/src/gallium/drivers/r600/r600_pipe.c
 @@ -67,8 +67,8 @@ static const struct debug_named_value debug_options[] = {
 { noinvalrange, DBG_NO_DISCARD_RANGE, Disable handling of 
 INVALIDATE_RANGE map flags },

 /* shader backend */
 -   { sb, DBG_SB, Enable optimization of graphics shaders },
 -   { sbcl, DBG_SB_CS, Enable optimization of compute shaders },
 +   { nosb, DBG_NO_SB, Disable sb backend for graphics shaders },
 +   { sbcl, DBG_SB_CS, Enable sb backend for compute shaders },
 { sbdry, DBG_SB_DRY_RUN, Don't use optimized bytecode (just print 
 the dumps) },
 { sbstat, DBG_SB_STAT, Print optimization statistics for shaders 
 },
 { sbdump, DBG_SB_DUMP, Print IR dumps after some optimization 
 passes },
 diff --git a/src/gallium/drivers/r600/r600_pipe.h 
 b/src/gallium/drivers/r600/r600_pipe.h
 index 21d68c9..398ac89 100644
 --- a/src/gallium/drivers/r600/r600_pipe.h
 +++ b/src/gallium/drivers/r600/r600_pipe.h
 @@ -249,7 +249,7 @@ typedef boolean (*r600g_dma_blit_t)(struct pipe_context 
 *ctx,
  #define DBG_NO_ASYNC_DMA   (1  19)
  #define DBG_NO_DISCARD_RANGE   (1  20)
  /* shader backend */
 -#define DBG_SB (1  21)
 +#define DBG_NO_SB  (1  21)
  #define DBG_SB_CS  (1  22)
  #define DBG_SB_DRY_RUN (1  23)
  #define DBG_SB_STAT(1  24)
 diff --git a/src/gallium/drivers/r600/r600_shader.c 
 b/src/gallium/drivers/r600/r600_shader.c
 index fb766c4..1563430 100644
 --- a/src/gallium/drivers/r600/r600_shader.c
 +++ b/src/gallium/drivers/r600/r600_shader.c
 @@ -140,7 +140,7 @@ int r600_pipe_shader_create(struct pipe_context *ctx,
 int r, i;
 uint32_t *ptr;
 bool dump = r600_can_dump_shader(rctx-screen, 
 tgsi_get_processor_type(sel-tokens));
 -   unsigned use_sb = rctx-screen-debug_flags  DBG_SB;
 +   unsigned use_sb = !(rctx-screen-debug_flags  DBG_NO_SB);
 unsigned sb_disasm = use_sb || (rctx-screen-debug_flags  
 DBG_SB_DISASM);

 shader-shader.bc.isa = rctx-isa;
 --
 1.8.3.1

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


Re: [Mesa-dev] [PATCH] [RFC] r600g: enable SB backend by default

2013-08-22 Thread Tom Stellard
On Thu, Aug 22, 2013 at 08:20:38PM +0400, Vadim Girlin wrote:
 Signed-off-by: Vadim Girlin vadimgir...@gmail.com

This is fine with me.  Nice work!

Reviewed-by: Tom Stellard thomas.stell...@amd.com

 ---
  src/gallium/drivers/r600/r600_asm.c| 3 ++-
  src/gallium/drivers/r600/r600_pipe.c   | 4 ++--
  src/gallium/drivers/r600/r600_pipe.h   | 2 +-
  src/gallium/drivers/r600/r600_shader.c | 2 +-
  4 files changed, 6 insertions(+), 5 deletions(-)
 
 diff --git a/src/gallium/drivers/r600/r600_asm.c 
 b/src/gallium/drivers/r600/r600_asm.c
 index b8eedae..a0492a6 100644
 --- a/src/gallium/drivers/r600/r600_asm.c
 +++ b/src/gallium/drivers/r600/r600_asm.c
 @@ -2281,7 +2281,8 @@ void *r600_create_vertex_fetch_shader(struct 
 pipe_context *ctx,
   uint32_t *bytecode;
   int i, j, r, fs_size;
   struct r600_fetch_shader *shader;
 - unsigned sb_disasm = rctx-screen-debug_flags  (DBG_SB_DISASM | 
 DBG_SB);
 + unsigned no_sb = rctx-screen-debug_flags  DBG_NO_SB;
 + unsigned sb_disasm = !no_sb || (rctx-screen-debug_flags  
 DBG_SB_DISASM);
  
   assert(count  32);
  
 diff --git a/src/gallium/drivers/r600/r600_pipe.c 
 b/src/gallium/drivers/r600/r600_pipe.c
 index 2be5910..edd50f0 100644
 --- a/src/gallium/drivers/r600/r600_pipe.c
 +++ b/src/gallium/drivers/r600/r600_pipe.c
 @@ -67,8 +67,8 @@ static const struct debug_named_value debug_options[] = {
   { noinvalrange, DBG_NO_DISCARD_RANGE, Disable handling of 
 INVALIDATE_RANGE map flags },
  
   /* shader backend */
 - { sb, DBG_SB, Enable optimization of graphics shaders },
 - { sbcl, DBG_SB_CS, Enable optimization of compute shaders },
 + { nosb, DBG_NO_SB, Disable sb backend for graphics shaders },
 + { sbcl, DBG_SB_CS, Enable sb backend for compute shaders },
   { sbdry, DBG_SB_DRY_RUN, Don't use optimized bytecode (just print 
 the dumps) },
   { sbstat, DBG_SB_STAT, Print optimization statistics for shaders },
   { sbdump, DBG_SB_DUMP, Print IR dumps after some optimization 
 passes },
 diff --git a/src/gallium/drivers/r600/r600_pipe.h 
 b/src/gallium/drivers/r600/r600_pipe.h
 index 21d68c9..398ac89 100644
 --- a/src/gallium/drivers/r600/r600_pipe.h
 +++ b/src/gallium/drivers/r600/r600_pipe.h
 @@ -249,7 +249,7 @@ typedef boolean (*r600g_dma_blit_t)(struct pipe_context 
 *ctx,
  #define DBG_NO_ASYNC_DMA (1  19)
  #define DBG_NO_DISCARD_RANGE (1  20)
  /* shader backend */
 -#define DBG_SB   (1  21)
 +#define DBG_NO_SB(1  21)
  #define DBG_SB_CS(1  22)
  #define DBG_SB_DRY_RUN   (1  23)
  #define DBG_SB_STAT  (1  24)
 diff --git a/src/gallium/drivers/r600/r600_shader.c 
 b/src/gallium/drivers/r600/r600_shader.c
 index fb766c4..1563430 100644
 --- a/src/gallium/drivers/r600/r600_shader.c
 +++ b/src/gallium/drivers/r600/r600_shader.c
 @@ -140,7 +140,7 @@ int r600_pipe_shader_create(struct pipe_context *ctx,
   int r, i;
   uint32_t *ptr;
   bool dump = r600_can_dump_shader(rctx-screen, 
 tgsi_get_processor_type(sel-tokens));
 - unsigned use_sb = rctx-screen-debug_flags  DBG_SB;
 + unsigned use_sb = !(rctx-screen-debug_flags  DBG_NO_SB);
   unsigned sb_disasm = use_sb || (rctx-screen-debug_flags  
 DBG_SB_DISASM);
  
   shader-shader.bc.isa = rctx-isa;
 -- 
 1.8.3.1
 
 ___
 mesa-dev mailing list
 mesa-dev@lists.freedesktop.org
 http://lists.freedesktop.org/mailman/listinfo/mesa-dev
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev