[Mesa-dev] [PATCH 1/2] i965/fs: Add a new fs_inst::regs_written function.
Kenneth Graunke
kenneth at whitecape.org
Tue Feb 14 12:43:21 PST 2012
Certain instructions write more than one register. Texturing, for
example, returns 4 registers. (We set rlen to 4 even for TXS and float
shadow sampling.) Some math functions return 2. Most return 1.
The next commit introduces a use of this function.
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
---
src/mesa/drivers/dri/i965/brw_fs.h | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h
index 060aa36..0a37b39 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.h
+++ b/src/mesa/drivers/dri/i965/brw_fs.h
@@ -286,6 +286,18 @@ public:
offset == inst->offset);
}
+ int regs_written()
+ {
+ if (is_tex())
+ return 4;
+
+ /* The SINCOS and INT_DIV_QUOTIENT_AND_REMAINDER math functions return 2,
+ * but we don't currently use them...nor do we have an opcode for them.
+ */
+
+ return 1;
+ }
+
bool is_tex()
{
return (opcode == SHADER_OPCODE_TEX ||
--
1.7.9
More information about the mesa-dev
mailing list