diff options
author | Kenneth Graunke <kenneth@whitecape.org> | 2012-11-20 16:21:27 -0800 |
---|---|---|
committer | Kenneth Graunke <kenneth@whitecape.org> | 2012-11-26 19:52:34 -0800 |
commit | 4d09fe938e72b26d814b6b52caee5112cf6f1103 (patch) | |
tree | 602a18cd2ab4f0fc2a841501494e9267f4b80c8a /src/mesa/drivers/dri/i965/brw_wm.h | |
parent | 3417b2f2b249d89fc71379bfc0eaa1055de365ba (diff) | |
download | external_mesa3d-4d09fe938e72b26d814b6b52caee5112cf6f1103.zip external_mesa3d-4d09fe938e72b26d814b6b52caee5112cf6f1103.tar.gz external_mesa3d-4d09fe938e72b26d814b6b52caee5112cf6f1103.tar.bz2 |
i965/fs: Move uses of brw_compile from do_wm_prog to brw_wm_fs_emit.
The brw_compile structure is closely tied to the Gen4-7 hardware
encoding. However, do_wm_prog is very generic: it just calls out to
get a compiled program and then uploads it.
This isn't ultimately where we want it, but it's a step in the right
direction: it's now closer to the code generator.
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_wm.h')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_wm.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_wm.h b/src/mesa/drivers/dri/i965/brw_wm.h index adc05a4..478be86 100644 --- a/src/mesa/drivers/dri/i965/brw_wm.h +++ b/src/mesa/drivers/dri/i965/brw_wm.h @@ -93,9 +93,16 @@ struct brw_wm_compile { GLuint last_scratch; }; -bool brw_wm_fs_emit(struct brw_context *brw, struct brw_wm_compile *c, - struct gl_fragment_program *fp, - struct gl_shader_program *prog); +/** + * Compile a fragment shader. + * + * Returns the final assembly and the program's size. + */ +const unsigned *brw_wm_fs_emit(struct brw_context *brw, + struct brw_wm_compile *c, + struct gl_fragment_program *fp, + struct gl_shader_program *prog, + unsigned *final_assembly_size); 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); |