qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 18/26] target/mips: Extract Loongson SIMD translation routine


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH 18/26] target/mips: Extract Loongson SIMD translation routines
Date: Sat, 21 Nov 2020 15:30:57 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.4.0

On 11/20/20 10:08 PM, Philippe Mathieu-Daudé wrote:
> LoongSIMD (formerly LoongMMI in Loongson 2E/F) is the
> 128-bit SIMD extension from the LoongISA.
> 
> Extract 600 lines of translation routines to
> 'vendor-loong-simd_translate.c.inc'.
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>  target/mips/translate.c                       | 598 +----------------
>  target/mips/vendor-loong-simd_translate.c.inc | 611 ++++++++++++++++++
>  2 files changed, 612 insertions(+), 597 deletions(-)
>  create mode 100644 target/mips/vendor-loong-simd_translate.c.inc
> 
> diff --git a/target/mips/translate.c b/target/mips/translate.c
> index b01a16e9da4..105a104bb0c 100644
> --- a/target/mips/translate.c
> +++ b/target/mips/translate.c
> @@ -330,19 +330,6 @@ enum {
>      OPC_MUL      = 0x02 | OPC_SPECIAL2,
>      OPC_MSUB     = 0x04 | OPC_SPECIAL2,
>      OPC_MSUBU    = 0x05 | OPC_SPECIAL2,
> -    /* Loongson 2F */
> -    OPC_MULT_G_2F   = 0x10 | OPC_SPECIAL2,
> -    OPC_DMULT_G_2F  = 0x11 | OPC_SPECIAL2,
> -    OPC_MULTU_G_2F  = 0x12 | OPC_SPECIAL2,
> -    OPC_DMULTU_G_2F = 0x13 | OPC_SPECIAL2,
> -    OPC_DIV_G_2F    = 0x14 | OPC_SPECIAL2,
> -    OPC_DDIV_G_2F   = 0x15 | OPC_SPECIAL2,
> -    OPC_DIVU_G_2F   = 0x16 | OPC_SPECIAL2,
> -    OPC_DDIVU_G_2F  = 0x17 | OPC_SPECIAL2,
> -    OPC_MOD_G_2F    = 0x1c | OPC_SPECIAL2,
> -    OPC_DMOD_G_2F   = 0x1d | OPC_SPECIAL2,
> -    OPC_MODU_G_2F   = 0x1e | OPC_SPECIAL2,
> -    OPC_DMODU_G_2F  = 0x1f | OPC_SPECIAL2,
>      /* Misc */
>      OPC_CLZ      = 0x20 | OPC_SPECIAL2,
>      OPC_CLO      = 0x21 | OPC_SPECIAL2,
> @@ -4569,590 +4556,6 @@ static void gen_cl(DisasContext *ctx, uint32_t opc,
>      }
>  }
>  
> -/* Godson integer instructions */
> -static void gen_loongson_integer(DisasContext *ctx, uint32_t opc,
> -                                 int rd, int rs, int rt)
> -{

This isn't part of the LoongSIMD ...

[...]
> -}
> -
> -/* Loongson multimedia instructions */
> -static void gen_loongson_multimedia(DisasContext *ctx, int rd, int rs, int 
> rt)
> -{
[...]

... but this part is.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]