From: Emil Velikov <emil.veli...@collabora.co.uk> As of last commit one can easily the whole brw_reg as two unsigned values. Lets use that and avoid the nastylooking memcmp + casts.
XXX: reladdr looks a bit strange. we tend to do dst_reg<>src_reg and in some cases this might cause someheadaches. should we zero it in the respective ctors ? Signed-off-by: Emil Velikov <emil.veli...@collabora.co.uk> --- src/mesa/drivers/dri/i965/brw_fs.cpp | 3 ++- src/mesa/drivers/dri/i965/brw_vec4.cpp | 10 ++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 46941ae..0ee6ffc 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -391,7 +391,8 @@ fs_reg::fs_reg(struct brw_reg reg) : bool fs_reg::equals(const fs_reg &r) const { - return (memcmp((brw_reg *)this, (brw_reg *)&r, sizeof(brw_reg)) == 0 && + return (v == r.v && + d == r.d && reg_offset == r.reg_offset && subreg_offset == r.subreg_offset && !reladdr && !r.reladdr && diff --git a/src/mesa/drivers/dri/i965/brw_vec4.cpp b/src/mesa/drivers/dri/i965/brw_vec4.cpp index e348f17..db662d3 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4.cpp @@ -128,7 +128,8 @@ dst_reg::dst_reg(const src_reg ®) : bool dst_reg::equals(const dst_reg &r) const { - return (memcmp((brw_reg *)this, (brw_reg *)&r, sizeof(brw_reg)) == 0 && + return (v == r.v && + d == r.d && reg_offset == r.reg_offset && (reladdr == r.reladdr || (reladdr && r.reladdr && reladdr->equals(*r.reladdr)))); @@ -265,9 +266,10 @@ vec4_visitor::implied_mrf_writes(vec4_instruction *inst) bool src_reg::equals(const src_reg &r) const { - return (memcmp((brw_reg *)this, (brw_reg *)&r, sizeof(brw_reg)) == 0 && - reg_offset == r.reg_offset && - !reladdr && !r.reladdr); + return (v == r.v && + d == r.d && + reg_offset == r.reg_offset && + !reladdr && !r.reladdr); } bool -- 2.6.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev