summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_shader.h
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gmail.com>2015-10-02 20:30:41 -0700
committerMatt Turner <mattst88@gmail.com>2015-10-05 13:42:58 -0700
commit5a360dcad1fdb91f9129cb21775b9af60cbf57e4 (patch)
treeeda65805d4b38a8c4026322d6027b61bd8e4cb2c /src/mesa/drivers/dri/i965/brw_shader.h
parent4098a756b5590a460bdb0ee7d54cca81375f61e8 (diff)
downloadexternal_mesa3d-5a360dcad1fdb91f9129cb21775b9af60cbf57e4.zip
external_mesa3d-5a360dcad1fdb91f9129cb21775b9af60cbf57e4.tar.gz
external_mesa3d-5a360dcad1fdb91f9129cb21775b9af60cbf57e4.tar.bz2
i965: Generalize predicated break pass for use in vec4 backend.
instructions in affected programs: 44204 -> 43762 (-1.00%) helped: 221 Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_shader.h')
-rw-r--r--src/mesa/drivers/dri/i965/brw_shader.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_shader.h b/src/mesa/drivers/dri/i965/brw_shader.h
index fd96740..b6c070e 100644
--- a/src/mesa/drivers/dri/i965/brw_shader.h
+++ b/src/mesa/drivers/dri/i965/brw_shader.h
@@ -219,7 +219,7 @@ enum instruction_scheduler_mode {
SCHEDULE_POST,
};
-class backend_shader {
+struct backend_shader {
protected:
backend_shader(const struct brw_compiler *compiler,
@@ -273,6 +273,8 @@ void brw_setup_image_uniform_values(gl_shader_stage stage,
unsigned param_start_index,
const gl_uniform_storage *storage);
+#else
+struct backend_shader;
#endif /* __cplusplus */
enum brw_reg_type brw_type_for_base_type(const struct glsl_type *type);
@@ -283,6 +285,8 @@ bool brw_saturate_immediate(enum brw_reg_type type, struct brw_reg *reg);
bool brw_negate_immediate(enum brw_reg_type type, struct brw_reg *reg);
bool brw_abs_immediate(enum brw_reg_type type, struct brw_reg *reg);
+bool opt_predicated_break(struct backend_shader *s);
+
#ifdef __cplusplus
extern "C" {
#endif