On 4/30/20 11:09 AM, Peter Maydell wrote: > Add the infrastructure for building and invoking a decodetree decoder > for the AArch32 Neon encodings. At the moment the new decoder covers > nothing, so we always fall back to the existing hand-written decode. > > We follow the same pattern we did for the VFP decodetree conversion > (commit 78e138bc1f672c145ef6ace74617d and following): code that deals > with Neon will be moving gradually out to translate-neon.vfp.inc, > which we #include into translate.c. > > In order to share the decode files between A32 and T32, we > split Neon into 3 parts: > * data-processing > * load-store > * 'shared' encodings > > The first two groups of instructions have similar but not identical > A32 and T32 encodings, so we need to manually transform the T32 > encoding into the A32 one before calling the decoder; the third group > covers the Neon instructions which are identical in A32 and T32. > > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > --- > target/arm/Makefile.objs | 18 +++++++++++++++++ > target/arm/translate-neon.inc.c | 32 +++++++++++++++++++++++++++++ > target/arm/translate.c | 36 +++++++++++++++++++++++++++++++-- > target/arm/neon-dp.decode | 29 ++++++++++++++++++++++++++ > target/arm/neon-ls.decode | 29 ++++++++++++++++++++++++++ > target/arm/neon-shared.decode | 27 +++++++++++++++++++++++++ > 6 files changed, 169 insertions(+), 2 deletions(-) > create mode 100644 target/arm/translate-neon.inc.c > create mode 100644 target/arm/neon-dp.decode > create mode 100644 target/arm/neon-ls.decode > create mode 100644 target/arm/neon-shared.decode
Reviewed-by: Richard Henderson <richard.hender...@linaro.org> r~