On Tue, 7 Apr 2020 at 12:40, Andre Vieira (lists) <andre.simoesdiasvie...@arm.com> wrote: > > Hi, > > This patch fixes v[id]wdup intrinsics. They had two issues: > 1) the predicated versions did not link the incoming inactive vector > parameter to the output > 2) The backend didn't enforce the wrap limit operand be in an odd register. > > 1) was fixed like we did for all other predicated intrinsics > 2) requires a temporary hack where we pass the value in the top end of > DImode operand. The proper fix would be to add a register CLASS but this > interacted badly with other existing targets codegen. We will look to > fix this properly in GCC 11. > > Regression tested on arm-none-eabi. >
Hi Andre, How did you find problem 1? I suspect you are using an internal simulator since qemu does not support MVE yet? And you probably have runtime tests to exhibit this failure? Thanks, Christophe > Is this OK for trunk? > > gcc/ChangeLog: > 2020-04-07 Andre Vieira <andre.simoesdiasvie...@arm.com> > > * config/arm/arm_mve.h: Fix v[id]wdup intrinsics. > * config/arm/mve/md: Fix v[id]wdup patterns. >