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~

Reply via email to