qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 01/20] target-mips: add MSA defines and data str


From: James Hogan
Subject: Re: [Qemu-devel] [PATCH 01/20] target-mips: add MSA defines and data structure
Date: Wed, 22 Oct 2014 14:15:47 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.8.0

Hi,

On 14/07/14 10:55, Yongbok Kim wrote:
> +typedef struct CPUMIPSMSAContext CPUMIPSMSAContext;
> +struct CPUMIPSMSAContext {

> +    int32_t msair;

> +    int32_t msacsr;

> +    int32_t msaaccess;
> +    int32_t msasave;
> +    int32_t msamodify;
> +    int32_t msarequest;
> +    int32_t msamap;
> +    int32_t msaunmap;
> +
> +    float_status fp_status;
> +};
> +
>  typedef union fpr_t fpr_t;
>  union fpr_t {
>      float64  fd;   /* ieee double precision */
>      float32  fs[2];/* ieee single precision */
>      uint64_t d;    /* binary double fixed-point */
>      uint32_t w[2]; /* binary single fixed-point */
> +/* FPU/MSA register mapping is not tested on big-endian hosts. */
> +    wr_t     wr;   /* vector data */
>  };
>  /* define FP_ENDIAN_IDX to access the same location
>   * in the fpr_t union regardless of the host endianness
> @@ -175,6 +237,7 @@ typedef struct CPUMIPSState CPUMIPSState;
>  struct CPUMIPSState {
>      TCState active_tc;
>      CPUMIPSFPUContext active_fpu;
> +    CPUMIPSMSAContext active_msa;

According to the manual, only the msair register is shared between
thread contexts, each thread context has its own version of the rest of
the msa registers, so most of this should be TCState I think.

Cheers
James



reply via email to

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