aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_fs_builder.h
diff options
context:
space:
mode:
authorFrancisco Jerez <[email protected]>2016-05-27 23:29:14 -0700
committerFrancisco Jerez <[email protected]>2016-05-31 15:57:41 -0700
commitc1107cec44ab030c7fcc97c67baa12df1cc9d7b5 (patch)
treea4a5cd95074d3e50eaffdbc4c1bca8560264702f /src/mesa/drivers/dri/i965/brw_fs_builder.h
parent06d8765bc09ecd8ff73fff424c8cfec645cb0ded (diff)
i965/fs: Allow scalar source regions on SNB math instructions.
I haven't found any evidence that this isn't supported by the hardware, in fact according to the SNB hardware spec: "The supported regioning modes for math instructions are align16, align1 with the following restrictions: - Scalar source is supported. [...] - Source and destination offset must be the same, except the case of scalar source." Cc: "12.0" <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Reviewed-by: Matt Turner <[email protected]>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_fs_builder.h')
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs_builder.h10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_fs_builder.h b/src/mesa/drivers/dri/i965/brw_fs_builder.h
index f22903e5234..aef35f33239 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_builder.h
+++ b/src/mesa/drivers/dri/i965/brw_fs_builder.h
@@ -621,20 +621,14 @@ namespace brw {
src_reg
fix_math_operand(const src_reg &src) const
{
- /* Can't do hstride == 0 args on gen6 math, so expand it out. We
- * might be able to do better by doing execsize = 1 math and then
- * expanding that result out, but we would need to be careful with
- * masking.
- *
- * Gen6 hardware ignores source modifiers (negate and abs) on math
+ /* Gen6 hardware ignores source modifiers (negate and abs) on math
* instructions, so we also move to a temp to set those up.
*
* Gen7 relaxes most of the above restrictions, but still can't use IMM
* operands to math
*/
if ((shader->devinfo->gen == 6 &&
- (src.file == IMM || src.file == UNIFORM ||
- src.abs || src.negate)) ||
+ (src.file == IMM || src.abs || src.negate)) ||
(shader->devinfo->gen == 7 && src.file == IMM)) {
const dst_reg tmp = vgrf(src.type);
MOV(tmp, src);