From: Matt Turner Date: Sun, 20 Oct 2013 18:32:01 +0000 (-0700) Subject: i965/fs: Add reads_flag() and writes_flag() to fs_inst. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=20d0297ff2d507aab42e59ebfde375d5205642cb;p=mesa.git i965/fs: Add reads_flag() and writes_flag() to fs_inst. Reviewed-by: Eric Anholt Reviewed-by: Paul Berry --- diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 69340f0bc9f..236e86c7cc2 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -732,6 +732,19 @@ fs_inst::regs_read(fs_visitor *v, int arg) return 1; } +bool +fs_inst::reads_flag() +{ + return predicate; +} + +bool +fs_inst::writes_flag() +{ + return (conditional_mod && opcode != BRW_OPCODE_SEL) || + opcode == FS_OPCODE_MOV_DISPATCH_TO_FLAGS; +} + /** * Returns how many MRFs an FS opcode will write over. * diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h index c9b0aa1773c..43e47617c17 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.h +++ b/src/mesa/drivers/dri/i965/brw_fs.h @@ -151,6 +151,9 @@ public: bool is_partial_write(); int regs_read(fs_visitor *v, int arg); + bool reads_flag(); + bool writes_flag(); + fs_reg dst; fs_reg src[3]; bool saturate;