[Mesa-dev] [PATCH] nir: In prog->nir, don't wrap dot products with ptn_channel(..., X).
Kenneth Graunke
kenneth at whitecape.org
Mon Mar 30 18:06:08 PDT 2015
ptn_move_dest and nir_fadd already take care of replicating the last
channel out, so we can just use a scalar and skip splatting it.
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
---
src/mesa/program/prog_to_nir.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/mesa/program/prog_to_nir.c b/src/mesa/program/prog_to_nir.c
index d0e6110..4e210d1 100644
--- a/src/mesa/program/prog_to_nir.c
+++ b/src/mesa/program/prog_to_nir.c
@@ -499,25 +499,25 @@ ptn_xpd(nir_builder *b, nir_alu_dest dest, nir_ssa_def **src)
static void
ptn_dp2(nir_builder *b, nir_alu_dest dest, nir_ssa_def **src)
{
- ptn_move_dest(b, dest, ptn_channel(b, nir_fdot2(b, src[0], src[1]), X));
+ ptn_move_dest(b, dest, nir_fdot2(b, src[0], src[1]));
}
static void
ptn_dp3(nir_builder *b, nir_alu_dest dest, nir_ssa_def **src)
{
- ptn_move_dest(b, dest, ptn_channel(b, nir_fdot3(b, src[0], src[1]), X));
+ ptn_move_dest(b, dest, nir_fdot3(b, src[0], src[1]));
}
static void
ptn_dp4(nir_builder *b, nir_alu_dest dest, nir_ssa_def **src)
{
- ptn_move_dest(b, dest, ptn_channel(b, nir_fdot4(b, src[0], src[1]), X));
+ ptn_move_dest(b, dest, nir_fdot4(b, src[0], src[1]));
}
static void
ptn_dph(nir_builder *b, nir_alu_dest dest, nir_ssa_def **src)
{
- nir_ssa_def *dp3 = ptn_channel(b, nir_fdot3(b, src[0], src[1]), X);
+ nir_ssa_def *dp3 = nir_fdot3(b, src[0], src[1]);
ptn_move_dest(b, dest, nir_fadd(b, dp3, ptn_channel(b, src[1], W)));
}
--
2.3.4
More information about the mesa-dev
mailing list