Peter Maydell <peter.mayd...@linaro.org> writes: > On 30 May 2017 at 16:39, Peter Maydell <peter.mayd...@linaro.org> wrote: >> On 30 May 2017 at 16:26, Nikunj A Dadhania <nik...@linux.vnet.ibm.com> wrote: >>> Sandipan Das <sandipandas1...@gmail.com> writes: >>> >>>> The patterns for the following instructions are fixed: >>>> * Rotate Left Doubleword then Clear Right (rldcr[.]) >>>> * Rotate Left Doubleword Immediate then Clear Right (rldicr[.]) >>>> * Rotate Left Doubleword Immediate then Mask Insert (rldimi[.]) >>>> >>>> The first instruction has a typo. For the other two instructions, >>>> the extended opcodes are incorrect and the shift field 'sha' is >>>> absent. Also, the shift field 'sh' should be used in place of the >>>> register field 'rb'. >>>> >>>> Signed-off-by: Sandipan Das <sandipandas1...@gmail.com> >>> >>> Reviewed-by: Nikunj A Dadhania <nik...@linux.vnet.ibm.com> >> >> Thanks; applied to risu master. > > ...but I foolishly didn't run build-all-archs first, which > points out that there's a bug:
Ouch :( > Syntax error detected evaluating RLDIMId PPC64LE constraints string: ] > { $rs != 1 && $ra != 1 && $rb != 1 && $rs != 13 && $ra != 13 && $rb != 13; } > Global symbol "$rb" requires explicit package name (did you forget to > declare "my $rb"?) at (eval 429) line 1. > Global symbol "$rb" requires explicit package name (did you forget to > declare "my $rb"?) at (eval 429) line 1. > > You forgot to update the constraints when you changed the > field names... I think that the constraints on $rb should > be removed rather than just changed to use $sh because this > field is an immediate, not a register number, so we don't need > to make it avoid 1 and 13. This would bring them into line with > the other rotate-immediates. I'll post a patch in a second. Regards Nikunj