summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h
index e5202f0850b..57c5dc3fe47 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.h
+++ b/src/mesa/drivers/dri/i965/brw_fs.h
@@ -162,6 +162,16 @@ offset(fs_reg reg, unsigned delta)
return reg;
}
+static inline fs_reg
+component(fs_reg reg, unsigned idx)
+{
+ assert(reg.subreg_offset == 0);
+ assert(idx < reg.width);
+ reg.subreg_offset = idx * type_sz(reg.type);
+ reg.width = 1;
+ return reg;
+}
+
/**
* Get either of the 8-component halves of a 16-component register.
*