summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_vec4_live_variables.h
diff options
context:
space:
mode:
authorFrancisco Jerez <currojerez@riseup.net>2015-03-18 20:17:23 +0200
committerFrancisco Jerez <currojerez@riseup.net>2015-03-23 14:13:05 +0200
commiteddb87402ea7ce68357a3d93b0dbb41857be27f6 (patch)
tree27a6d8bf546a6e5e658e82cbb3082e7facef9b06 /src/mesa/drivers/dri/i965/brw_vec4_live_variables.h
parentce030a63993f7192c6aa4c5b9180f9543a6a76bc (diff)
downloadexternal_mesa3d-eddb87402ea7ce68357a3d93b0dbb41857be27f6.zip
external_mesa3d-eddb87402ea7ce68357a3d93b0dbb41857be27f6.tar.gz
external_mesa3d-eddb87402ea7ce68357a3d93b0dbb41857be27f6.tar.bz2
i965/vec4: Define helper functions to convert a register to a variable index.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vec4_live_variables.h')
-rw-r--r--src/mesa/drivers/dri/i965/brw_vec4_live_variables.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_live_variables.h b/src/mesa/drivers/dri/i965/brw_vec4_live_variables.h
index c5c6ff3..cef55f7 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_live_variables.h
+++ b/src/mesa/drivers/dri/i965/brw_vec4_live_variables.h
@@ -78,4 +78,20 @@ protected:
void *mem_ctx;
};
+inline unsigned
+var_from_reg(const simple_allocator &alloc, const src_reg &reg,
+ unsigned c = 0)
+{
+ assert(reg.file == GRF && reg.reg < alloc.count && c < 4);
+ return 4 * reg.reg + BRW_GET_SWZ(reg.swizzle, c);
+}
+
+inline unsigned
+var_from_reg(const simple_allocator &alloc, const dst_reg &reg,
+ unsigned c = 0)
+{
+ assert(reg.file == GRF && reg.reg < alloc.count && c < 4);
+ return 4 * reg.reg + c;
+}
+
} /* namespace brw */