From ca11f9263e4dcd541faaf8f4760de712581b5a1b Mon Sep 17 00:00:00 2001 From: Rob Clark Date: Tue, 26 Feb 2019 14:46:45 -0500 Subject: freedreno/ir3/cp: fix ldib bug Something that we didn't hit earlier because of the extra shr.b Signed-off-by: Rob Clark Reviewed-by: Kristian H. Kristensen --- src/freedreno/ir3/ir3_cp.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src') diff --git a/src/freedreno/ir3/ir3_cp.c b/src/freedreno/ir3/ir3_cp.c index 76e13a05bf6..bbc85b12198 100644 --- a/src/freedreno/ir3/ir3_cp.c +++ b/src/freedreno/ir3/ir3_cp.c @@ -210,6 +210,12 @@ static bool valid_flags(struct ir3_instruction *instr, unsigned n, if (is_atomic(instr->opc) && !(instr->flags & IR3_INSTR_G)) return false; + + /* as with atomics, ldib on a6xx can only have immediate for + * SSBO slot argument + */ + if ((instr->opc == OPC_LDIB) && (n != 0)) + return false; } break; -- cgit v1.2.3