Mesa (master): i965/fs: Add and use an fs_inst copy constructor.

Matt Turner mattst88 at kemper.freedesktop.org
Sun Jun 1 20:26:20 UTC 2014


Module: Mesa
Branch: master
Commit: 6d3a15223aedaff26dd3aab900e02c8548956973
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6d3a15223aedaff26dd3aab900e02c8548956973

Author: Matt Turner <mattst88 at gmail.com>
Date:   Thu Feb 20 09:40:02 2014 -0800

i965/fs: Add and use an fs_inst copy constructor.

Will get more complicated when fs_reg src becomes a pointer.

Reviewed-by: Chris Forbes <chrisf at ijw.co.nz>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/drivers/dri/i965/brw_fs.cpp |    5 +++++
 src/mesa/drivers/dri/i965/brw_fs.h   |    1 +
 2 files changed, 6 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index 1a83c8c..af458ba 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -139,6 +139,11 @@ fs_inst::fs_inst(enum opcode opcode, fs_reg dst,
       assert(src[2].reg_offset >= 0);
 }
 
+fs_inst::fs_inst(const fs_inst &that)
+{
+   memcpy(this, &that, sizeof(that));
+}
+
 #define ALU1(op)                                                        \
    fs_inst *                                                            \
    fs_visitor::op(fs_reg dst, fs_reg src0)                              \
diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h
index 789f0b3..bda233c 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.h
+++ b/src/mesa/drivers/dri/i965/brw_fs.h
@@ -197,6 +197,7 @@ public:
    fs_inst(enum opcode opcode, fs_reg dst, fs_reg src0, fs_reg src1);
    fs_inst(enum opcode opcode, fs_reg dst,
            fs_reg src0, fs_reg src1,fs_reg src2);
+   fs_inst(const fs_inst &that);
 
    bool equals(fs_inst *inst) const;
    bool overwrites_reg(const fs_reg &reg) const;




More information about the mesa-commit mailing list