Re: [Mesa-dev] [PATCH 2/7] i965: Remove the create_raw_surface vtbl hook.

2015-02-27 Thread Kristian Høgsberg
On Sat, Jan 17, 2015 at 3:04 PM, Francisco Jerez curroje...@riseup.net wrote:
 It's a wrapper around emit_buffer_surface_state with format=RAW, pitch=1,
 rw=true and the remaining arguments ordered differently.  There's no point in
 having a separate vtbl pointer for that.

Yeah, I agree, that can go.

Reviewed-by: Kristian Høgsberg k...@bitplanet.net

 ---
  src/mesa/drivers/dri/i965/brw_binding_tables.c|  8 +---
  src/mesa/drivers/dri/i965/brw_context.h   |  6 --
  src/mesa/drivers/dri/i965/brw_wm_surface_state.c  |  6 +++---
  src/mesa/drivers/dri/i965/gen7_wm_surface_state.c | 19 ---
  src/mesa/drivers/dri/i965/gen8_surface_state.c| 16 
  5 files changed, 8 insertions(+), 47 deletions(-)

 diff --git a/src/mesa/drivers/dri/i965/brw_binding_tables.c 
 b/src/mesa/drivers/dri/i965/brw_binding_tables.c
 index ea82e71..08e4191 100644
 --- a/src/mesa/drivers/dri/i965/brw_binding_tables.c
 +++ b/src/mesa/drivers/dri/i965/brw_binding_tables.c
 @@ -68,9 +68,11 @@ brw_upload_binding_table(struct brw_context *brw,
 } else {
/* Upload a new binding table. */
if (INTEL_DEBUG  DEBUG_SHADER_TIME) {
 - brw-vtbl.create_raw_surface(
 -brw, brw-shader_time.bo, 0, brw-shader_time.bo-size,
 -
 stage_state-surf_offset[prog_data-binding_table.shader_time_start], true);
 + brw-vtbl.emit_buffer_surface_state(
 +brw, stage_state-surf_offset[
 +prog_data-binding_table.shader_time_start],
 +brw-shader_time.bo, 0, BRW_SURFACEFORMAT_RAW,
 +brw-shader_time.bo-size, 1, true);
}

uint32_t *bind = brw_state_batch(brw, AUB_TRACE_BINDING_TABLE,
 diff --git a/src/mesa/drivers/dri/i965/brw_context.h 
 b/src/mesa/drivers/dri/i965/brw_context.h
 index 6195d3d..d21e175 100644
 --- a/src/mesa/drivers/dri/i965/brw_context.h
 +++ b/src/mesa/drivers/dri/i965/brw_context.h
 @@ -962,12 +962,6 @@ struct brw_context
void (*update_null_renderbuffer_surface)(struct brw_context *brw,
unsigned unit);

 -  void (*create_raw_surface)(struct brw_context *brw,
 - drm_intel_bo *bo,
 - uint32_t offset,
 - uint32_t size,
 - uint32_t *out_offset,
 - bool rw);
void (*emit_buffer_surface_state)(struct brw_context *brw,
  uint32_t *out_offset,
  drm_intel_bo *bo,
 diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c 
 b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
 index ece352b..e5f2058 100644
 --- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
 +++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
 @@ -920,9 +920,9 @@ brw_upload_abo_surfaces(struct brw_context *brw,
drm_intel_bo *bo = intel_bufferobj_buffer(
   brw, intel_bo, binding-Offset, intel_bo-Base.Size - 
 binding-Offset);

 -  brw-vtbl.create_raw_surface(brw, bo, binding-Offset,
 -   bo-size - binding-Offset,
 -   surf_offsets[i], true);
 +  brw-vtbl.emit_buffer_surface_state(brw, surf_offsets[i], bo,
 +  binding-Offset, 
 BRW_SURFACEFORMAT_RAW,
 +  bo-size - binding-Offset, 1, 
 true);
 }

 if (prog-NumAtomicBuffers)
 diff --git a/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c 
 b/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c
 index 24547d9..1421ac4 100644
 --- a/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c
 +++ b/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c
 @@ -370,24 +370,6 @@ gen7_update_texture_surface(struct gl_context *ctx,
  }

  /**
 - * Create a raw surface for untyped R/W access.
 - */
 -static void
 -gen7_create_raw_surface(struct brw_context *brw, drm_intel_bo *bo,
 -uint32_t offset, uint32_t size,
 -uint32_t *out_offset, bool rw)
 -{
 -   gen7_emit_buffer_surface_state(brw,
 -  out_offset,
 -  bo,
 -  offset,
 -  BRW_SURFACEFORMAT_RAW,
 -  size,
 -  1,
 -  true /* rw */);
 -}
 -
 -/**
   * Creates a null renderbuffer surface.
   *
   * This is used when the shader doesn't write to any color output.  An FB
 @@ -563,6 +545,5 @@ gen7_init_vtable_surface_functions(struct brw_context 
 *brw)
 brw-vtbl.update_renderbuffer_surface = gen7_update_renderbuffer_surface;
 brw-vtbl.update_null_renderbuffer_surface =
gen7_update_null_renderbuffer_surface;
 -   brw-vtbl.create_raw_surface = gen7_create_raw_surface;
 

[Mesa-dev] [PATCH 2/7] i965: Remove the create_raw_surface vtbl hook.

2015-01-17 Thread Francisco Jerez
It's a wrapper around emit_buffer_surface_state with format=RAW, pitch=1,
rw=true and the remaining arguments ordered differently.  There's no point in
having a separate vtbl pointer for that.
---
 src/mesa/drivers/dri/i965/brw_binding_tables.c|  8 +---
 src/mesa/drivers/dri/i965/brw_context.h   |  6 --
 src/mesa/drivers/dri/i965/brw_wm_surface_state.c  |  6 +++---
 src/mesa/drivers/dri/i965/gen7_wm_surface_state.c | 19 ---
 src/mesa/drivers/dri/i965/gen8_surface_state.c| 16 
 5 files changed, 8 insertions(+), 47 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_binding_tables.c 
b/src/mesa/drivers/dri/i965/brw_binding_tables.c
index ea82e71..08e4191 100644
--- a/src/mesa/drivers/dri/i965/brw_binding_tables.c
+++ b/src/mesa/drivers/dri/i965/brw_binding_tables.c
@@ -68,9 +68,11 @@ brw_upload_binding_table(struct brw_context *brw,
} else {
   /* Upload a new binding table. */
   if (INTEL_DEBUG  DEBUG_SHADER_TIME) {
- brw-vtbl.create_raw_surface(
-brw, brw-shader_time.bo, 0, brw-shader_time.bo-size,
-
stage_state-surf_offset[prog_data-binding_table.shader_time_start], true);
+ brw-vtbl.emit_buffer_surface_state(
+brw, stage_state-surf_offset[
+prog_data-binding_table.shader_time_start],
+brw-shader_time.bo, 0, BRW_SURFACEFORMAT_RAW,
+brw-shader_time.bo-size, 1, true);
   }
 
   uint32_t *bind = brw_state_batch(brw, AUB_TRACE_BINDING_TABLE,
diff --git a/src/mesa/drivers/dri/i965/brw_context.h 
b/src/mesa/drivers/dri/i965/brw_context.h
index 6195d3d..d21e175 100644
--- a/src/mesa/drivers/dri/i965/brw_context.h
+++ b/src/mesa/drivers/dri/i965/brw_context.h
@@ -962,12 +962,6 @@ struct brw_context
   void (*update_null_renderbuffer_surface)(struct brw_context *brw,
   unsigned unit);
 
-  void (*create_raw_surface)(struct brw_context *brw,
- drm_intel_bo *bo,
- uint32_t offset,
- uint32_t size,
- uint32_t *out_offset,
- bool rw);
   void (*emit_buffer_surface_state)(struct brw_context *brw,
 uint32_t *out_offset,
 drm_intel_bo *bo,
diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c 
b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
index ece352b..e5f2058 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
@@ -920,9 +920,9 @@ brw_upload_abo_surfaces(struct brw_context *brw,
   drm_intel_bo *bo = intel_bufferobj_buffer(
  brw, intel_bo, binding-Offset, intel_bo-Base.Size - 
binding-Offset);
 
-  brw-vtbl.create_raw_surface(brw, bo, binding-Offset,
-   bo-size - binding-Offset,
-   surf_offsets[i], true);
+  brw-vtbl.emit_buffer_surface_state(brw, surf_offsets[i], bo,
+  binding-Offset, 
BRW_SURFACEFORMAT_RAW,
+  bo-size - binding-Offset, 1, true);
}
 
if (prog-NumAtomicBuffers)
diff --git a/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c 
b/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c
index 24547d9..1421ac4 100644
--- a/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c
+++ b/src/mesa/drivers/dri/i965/gen7_wm_surface_state.c
@@ -370,24 +370,6 @@ gen7_update_texture_surface(struct gl_context *ctx,
 }
 
 /**
- * Create a raw surface for untyped R/W access.
- */
-static void
-gen7_create_raw_surface(struct brw_context *brw, drm_intel_bo *bo,
-uint32_t offset, uint32_t size,
-uint32_t *out_offset, bool rw)
-{
-   gen7_emit_buffer_surface_state(brw,
-  out_offset,
-  bo,
-  offset,
-  BRW_SURFACEFORMAT_RAW,
-  size,
-  1,
-  true /* rw */);
-}
-
-/**
  * Creates a null renderbuffer surface.
  *
  * This is used when the shader doesn't write to any color output.  An FB
@@ -563,6 +545,5 @@ gen7_init_vtable_surface_functions(struct brw_context *brw)
brw-vtbl.update_renderbuffer_surface = gen7_update_renderbuffer_surface;
brw-vtbl.update_null_renderbuffer_surface =
   gen7_update_null_renderbuffer_surface;
-   brw-vtbl.create_raw_surface = gen7_create_raw_surface;
brw-vtbl.emit_buffer_surface_state = gen7_emit_buffer_surface_state;
 }
diff --git a/src/mesa/drivers/dri/i965/gen8_surface_state.c 
b/src/mesa/drivers/dri/i965/gen8_surface_state.c
index 8d4e180..9ddbbad 100644
--- a/src/mesa/drivers/dri/i965/gen8_surface_state.c