[Mesa-dev] [PATCH 2/5] i965: Make fs/vec4_visitor inherit from ir_visitor directly
Jason Ekstrand
jason at jlekstrand.net
Wed May 20 11:09:03 PDT 2015
This is using multiple inheritance in C++. However, ir_visitor is really
just an interface with no data so it shouldn't be so bad.
---
src/mesa/drivers/dri/i965/brw_fs.h | 2 +-
src/mesa/drivers/dri/i965/brw_shader.h | 2 +-
src/mesa/drivers/dri/i965/brw_vec4.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h
index f63b149..6f16c31 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.h
+++ b/src/mesa/drivers/dri/i965/brw_fs.h
@@ -66,7 +66,7 @@ namespace brw {
*
* Translates either GLSL IR or Mesa IR (for ARB_fragment_program) into FS IR.
*/
-class fs_visitor : public backend_shader
+class fs_visitor : public backend_shader, public ir_visitor
{
public:
const fs_reg reg_null_f;
diff --git a/src/mesa/drivers/dri/i965/brw_shader.h b/src/mesa/drivers/dri/i965/brw_shader.h
index ac9acfc..da01d2f 100644
--- a/src/mesa/drivers/dri/i965/brw_shader.h
+++ b/src/mesa/drivers/dri/i965/brw_shader.h
@@ -211,7 +211,7 @@ enum instruction_scheduler_mode {
SCHEDULE_POST,
};
-class backend_shader : public ir_visitor {
+class backend_shader {
protected:
backend_shader(struct brw_context *brw,
diff --git a/src/mesa/drivers/dri/i965/brw_vec4.h b/src/mesa/drivers/dri/i965/brw_vec4.h
index f781343..06a16a4 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4.h
+++ b/src/mesa/drivers/dri/i965/brw_vec4.h
@@ -73,7 +73,7 @@ class vec4_live_variables;
* Translates either GLSL IR or Mesa IR (for ARB_vertex_program and
* fixed-function) into VS IR.
*/
-class vec4_visitor : public backend_shader
+class vec4_visitor : public backend_shader, public ir_visitor
{
public:
vec4_visitor(struct brw_context *brw,
--
2.4.1
More information about the mesa-dev
mailing list