aboutsummaryrefslogtreecommitdiffstats
path: root/src/panfrost/bifrost/bifrost_compile.c
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2020-03-09 14:09:04 -0400
committerMarge Bot <[email protected]>2020-03-10 19:25:59 +0000
commit795646d8f863ec2200fa8b92c036b0897f2bdd2b (patch)
treec30de085136ffe33d2c3479b945f7170e1a42da1 /src/panfrost/bifrost/bifrost_compile.c
parent9b8cb9f5aee3428e49d80b2154718cae6c29938c (diff)
pan/bi: Generalize swizzles to avoid extracts
We'd really rather not emit extracts. We are approaching on a vector IR anyway which is annoying but really necessary to handle I/O and fp16 correctly. So let's just go all the way and deal with swizzles and masks within reason; it'll still be somewhat saner in the long-term. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4139>
Diffstat (limited to 'src/panfrost/bifrost/bifrost_compile.c')
-rw-r--r--src/panfrost/bifrost/bifrost_compile.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/panfrost/bifrost/bifrost_compile.c b/src/panfrost/bifrost/bifrost_compile.c
index 1c3a0f09db3..79164ac79a7 100644
--- a/src/panfrost/bifrost/bifrost_compile.c
+++ b/src/panfrost/bifrost/bifrost_compile.c
@@ -106,6 +106,9 @@ bi_emit_frag_out(bi_context *ctx, nir_intrinsic_instr *instr)
.blend_location = nir_intrinsic_base(instr),
.src = {
bir_src_index(&instr->src[0])
+ },
+ .swizzle = {
+ { 0, 1, 2, 3 }
}
};
@@ -158,6 +161,9 @@ bi_emit_st_vary(bi_context *ctx, nir_intrinsic_instr *instr)
.src = {
address.dest,
bir_src_index(&instr->src[0])
+ },
+ .swizzle = {
+ { 0, 1, 2, 3 }
}
};