summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers
diff options
context:
space:
mode:
authorCarl Worth <[email protected]>2015-03-20 12:10:49 -0700
committerCarl Worth <[email protected]>2015-04-02 22:15:45 -0700
commitb9b66985c3d33fa0db2b49c0e0231aa6d341e183 (patch)
tree029763e47818919dc76b1a98a9d9f2a7bb816ca6 /src/mesa/drivers
parenta57672f18deca3060eab129a77cf84f5e420bac8 (diff)
i965: Rename do_<stage>_prog to brw_compile_<stage>_prog (and export)
This is in preparation for these functions to be called from other files. This commit is intended to have no functional change. It exists in preparation for some upcoming code movement in preparation for the shader cache. Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r--src/mesa/drivers/dri/i965/brw_ff_gs.c7
-rw-r--r--src/mesa/drivers/dri/i965/brw_ff_gs.h4
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs.cpp2
-rw-r--r--src/mesa/drivers/dri/i965/brw_gs.c18
-rw-r--r--src/mesa/drivers/dri/i965/brw_gs.h7
-rw-r--r--src/mesa/drivers/dri/i965/brw_vs.c18
-rw-r--r--src/mesa/drivers/dri/i965/brw_vs.h6
-rw-r--r--src/mesa/drivers/dri/i965/brw_wm.c13
-rw-r--r--src/mesa/drivers/dri/i965/brw_wm.h8
9 files changed, 51 insertions, 32 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_ff_gs.c b/src/mesa/drivers/dri/i965/brw_ff_gs.c
index b3cbbe8b919..e6f837cd041 100644
--- a/src/mesa/drivers/dri/i965/brw_ff_gs.c
+++ b/src/mesa/drivers/dri/i965/brw_ff_gs.c
@@ -45,8 +45,9 @@
#include "util/ralloc.h"
-static void compile_ff_gs_prog(struct brw_context *brw,
- struct brw_ff_gs_prog_key *key)
+void
+brw_compile_ff_gs_prog(struct brw_context *brw,
+ struct brw_ff_gs_prog_key *key)
{
struct brw_ff_gs_compile c;
const GLuint *program;
@@ -253,7 +254,7 @@ brw_upload_ff_gs_prog(struct brw_context *brw)
if (!brw_search_cache(&brw->cache, BRW_CACHE_FF_GS_PROG,
&key, sizeof(key),
&brw->ff_gs.prog_offset, &brw->ff_gs.prog_data)) {
- compile_ff_gs_prog( brw, &key );
+ brw_compile_ff_gs_prog(brw, &key);
}
}
}
diff --git a/src/mesa/drivers/dri/i965/brw_ff_gs.h b/src/mesa/drivers/dri/i965/brw_ff_gs.h
index e4afdab6599..3dd045f1a54 100644
--- a/src/mesa/drivers/dri/i965/brw_ff_gs.h
+++ b/src/mesa/drivers/dri/i965/brw_ff_gs.h
@@ -115,4 +115,8 @@ void gen6_brw_upload_ff_gs_prog(struct brw_context *brw);
void
brw_upload_ff_gs_prog(struct brw_context *brw);
+void
+brw_compile_ff_gs_prog(struct brw_context *brw,
+ struct brw_ff_gs_prog_key *key);
+
#endif
diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index 9c2ccce11b2..f30176c0541 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -4152,7 +4152,7 @@ brw_fs_precompile(struct gl_context *ctx,
uint32_t old_prog_offset = brw->wm.base.prog_offset;
struct brw_wm_prog_data *old_prog_data = brw->wm.prog_data;
- bool success = do_wm_prog(brw, shader_prog, bfp, &key);
+ bool success = brw_compile_wm_prog(brw, shader_prog, bfp, &key);
brw->wm.base.prog_offset = old_prog_offset;
brw->wm.prog_data = old_prog_data;
diff --git a/src/mesa/drivers/dri/i965/brw_gs.c b/src/mesa/drivers/dri/i965/brw_gs.c
index 6f7f1298e47..bea90d8d607 100644
--- a/src/mesa/drivers/dri/i965/brw_gs.c
+++ b/src/mesa/drivers/dri/i965/brw_gs.c
@@ -34,11 +34,11 @@
#include "brw_ff_gs.h"
-static bool
-do_gs_prog(struct brw_context *brw,
- struct gl_shader_program *prog,
- struct brw_geometry_program *gp,
- struct brw_gs_prog_key *key)
+bool
+brw_compile_gs_prog(struct brw_context *brw,
+ struct gl_shader_program *prog,
+ struct brw_geometry_program *gp,
+ struct brw_gs_prog_key *key)
{
struct brw_stage_state *stage_state = &brw->gs.base;
struct brw_gs_compile c;
@@ -326,6 +326,7 @@ void
brw_upload_gs_prog(struct brw_context *brw)
{
struct gl_context *ctx = &brw->ctx;
+ struct gl_shader_program **current = ctx->_Shader->CurrentProgram;
struct brw_stage_state *stage_state = &brw->gs.base;
struct brw_gs_prog_key key;
/* BRW_NEW_GEOMETRY_PROGRAM */
@@ -362,9 +363,8 @@ brw_upload_gs_prog(struct brw_context *brw)
if (!brw_search_cache(&brw->cache, BRW_CACHE_GS_PROG,
&key, sizeof(key),
&stage_state->prog_offset, &brw->gs.prog_data)) {
- bool success =
- do_gs_prog(brw, ctx->_Shader->CurrentProgram[MESA_SHADER_GEOMETRY], gp,
- &key);
+ bool success = brw_compile_gs_prog(brw, current[MESA_SHADER_GEOMETRY],
+ gp, &key);
assert(success);
(void)success;
}
@@ -400,7 +400,7 @@ brw_gs_precompile(struct gl_context *ctx,
*/
key.input_varyings = gp->Base.InputsRead;
- success = do_gs_prog(brw, shader_prog, bgp, &key);
+ success = brw_compile_gs_prog(brw, shader_prog, bgp, &key);
brw->gs.base.prog_offset = old_prog_offset;
brw->gs.prog_data = old_prog_data;
diff --git a/src/mesa/drivers/dri/i965/brw_gs.h b/src/mesa/drivers/dri/i965/brw_gs.h
index 5f7c437b311..16dafcc3532 100644
--- a/src/mesa/drivers/dri/i965/brw_gs.h
+++ b/src/mesa/drivers/dri/i965/brw_gs.h
@@ -27,6 +27,7 @@
#include <stdbool.h>
#include "brw_context.h"
+#include "brw_program.h"
#ifdef __cplusplus
extern "C" {
@@ -41,6 +42,12 @@ bool brw_gs_prog_data_compare(const void *a, const void *b);
void
brw_upload_gs_prog(struct brw_context *brw);
+bool
+brw_compile_gs_prog(struct brw_context *brw,
+ struct gl_shader_program *prog,
+ struct brw_geometry_program *gp,
+ struct brw_gs_prog_key *key);
+
#ifdef __cplusplus
} /* extern "C" */
#endif
diff --git a/src/mesa/drivers/dri/i965/brw_vs.c b/src/mesa/drivers/dri/i965/brw_vs.c
index 2846ff69be5..dabff43a6ee 100644
--- a/src/mesa/drivers/dri/i965/brw_vs.c
+++ b/src/mesa/drivers/dri/i965/brw_vs.c
@@ -187,11 +187,11 @@ brw_vs_prog_data_compare(const void *in_a, const void *in_b)
return true;
}
-static bool
-do_vs_prog(struct brw_context *brw,
- struct gl_shader_program *prog,
- struct brw_vertex_program *vp,
- struct brw_vs_prog_key *key)
+bool
+brw_compile_vs_prog(struct brw_context *brw,
+ struct gl_shader_program *prog,
+ struct brw_vertex_program *vp,
+ struct brw_vs_prog_key *key)
{
GLuint program_size;
const GLuint *program;
@@ -468,6 +468,7 @@ void
brw_upload_vs_prog(struct brw_context *brw)
{
struct gl_context *ctx = &brw->ctx;
+ struct gl_shader_program **current = ctx->_Shader->CurrentProgram;
struct brw_vs_prog_key key;
/* BRW_NEW_VERTEX_PROGRAM */
struct brw_vertex_program *vp =
@@ -481,9 +482,8 @@ brw_upload_vs_prog(struct brw_context *brw)
if (!brw_search_cache(&brw->cache, BRW_CACHE_VS_PROG,
&key, sizeof(key),
&brw->vs.base.prog_offset, &brw->vs.prog_data)) {
- bool success =
- do_vs_prog(brw, ctx->_Shader->CurrentProgram[MESA_SHADER_VERTEX], vp,
- &key);
+ bool success = brw_compile_vs_prog(brw, current[MESA_SHADER_VERTEX],
+ vp, &key);
(void) success;
assert(success);
}
@@ -524,7 +524,7 @@ brw_vs_precompile(struct gl_context *ctx,
(prog->OutputsWritten & (VARYING_BIT_COL0 | VARYING_BIT_COL1 |
VARYING_BIT_BFC0 | VARYING_BIT_BFC1));
- success = do_vs_prog(brw, shader_prog, bvp, &key);
+ success = brw_compile_vs_prog(brw, shader_prog, bvp, &key);
brw->vs.base.prog_offset = old_prog_offset;
brw->vs.prog_data = old_prog_data;
diff --git a/src/mesa/drivers/dri/i965/brw_vs.h b/src/mesa/drivers/dri/i965/brw_vs.h
index bad0f070236..f47ecaa2cfe 100644
--- a/src/mesa/drivers/dri/i965/brw_vs.h
+++ b/src/mesa/drivers/dri/i965/brw_vs.h
@@ -75,6 +75,12 @@ bool brw_vs_prog_data_compare(const void *a, const void *b);
void
brw_upload_vs_prog(struct brw_context *brw);
+bool
+brw_compile_vs_prog(struct brw_context *brw,
+ struct gl_shader_program *prog,
+ struct brw_vertex_program *vp,
+ struct brw_vs_prog_key *key);
+
#ifdef __cplusplus
} /* extern "C" */
diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c
index b85f236b8ea..308eebe9def 100644
--- a/src/mesa/drivers/dri/i965/brw_wm.c
+++ b/src/mesa/drivers/dri/i965/brw_wm.c
@@ -159,10 +159,11 @@ brw_wm_prog_data_compare(const void *in_a, const void *in_b)
* Depending on the instructions used (i.e. flow control instructions)
* we'll use one of two code generators.
*/
-bool do_wm_prog(struct brw_context *brw,
- struct gl_shader_program *prog,
- struct brw_fragment_program *fp,
- struct brw_wm_prog_key *key)
+bool
+brw_compile_wm_prog(struct brw_context *brw,
+ struct gl_shader_program *prog,
+ struct brw_fragment_program *fp,
+ struct brw_wm_prog_key *key)
{
struct gl_context *ctx = &brw->ctx;
void *mem_ctx = ralloc_context(NULL);
@@ -607,6 +608,7 @@ void
brw_upload_wm_prog(struct brw_context *brw)
{
struct gl_context *ctx = &brw->ctx;
+ struct gl_shader_program *current = ctx->_Shader->_CurrentFragmentProgram;
struct brw_wm_prog_key key;
struct brw_fragment_program *fp = (struct brw_fragment_program *)
brw->fragment_program;
@@ -619,8 +621,7 @@ brw_upload_wm_prog(struct brw_context *brw)
if (!brw_search_cache(&brw->cache, BRW_CACHE_FS_PROG,
&key, sizeof(key),
&brw->wm.base.prog_offset, &brw->wm.prog_data)) {
- bool success = do_wm_prog(brw, ctx->_Shader->_CurrentFragmentProgram, fp,
- &key);
+ bool success = brw_compile_wm_prog(brw, current, fp, &key);
(void) success;
assert(success);
}
diff --git a/src/mesa/drivers/dri/i965/brw_wm.h b/src/mesa/drivers/dri/i965/brw_wm.h
index 32d1ce369d4..45fbb75e752 100644
--- a/src/mesa/drivers/dri/i965/brw_wm.h
+++ b/src/mesa/drivers/dri/i965/brw_wm.h
@@ -78,10 +78,10 @@ GLboolean brw_link_shader(struct gl_context *ctx, struct gl_shader_program *prog
struct gl_shader *brw_new_shader(struct gl_context *ctx, GLuint name, GLuint type);
bool brw_color_buffer_write_enabled(struct brw_context *brw);
-bool do_wm_prog(struct brw_context *brw,
- struct gl_shader_program *prog,
- struct brw_fragment_program *fp,
- struct brw_wm_prog_key *key);
+bool brw_compile_wm_prog(struct brw_context *brw,
+ struct gl_shader_program *prog,
+ struct brw_fragment_program *fp,
+ struct brw_wm_prog_key *key);
void brw_wm_debug_recompile(struct brw_context *brw,
struct gl_shader_program *prog,
const struct brw_wm_prog_key *key);