target/loongarch: fix ASXE flag conflict
HW_FLAGS_EUEN_ASXE acccidentally conflicts with HW_FLAGS_CRMD_PG, enabling LASX instructions even when CSR_EUEN.ASXE=0. Closes: https://gitlab.com/qemu-project/qemu/-/issues/1907 Signed-off-by: Jiajie Chen <c@jia.je> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Song Gao <gaosong@loongson.cn> Message-Id: <20230930112837.1871691-1-c@jia.je> Signed-off-by: Song Gao <gaosong@loongson.cn>
This commit is contained in:
parent
63011373ad
commit
32f4916cfb
@ -458,11 +458,11 @@ static inline void set_pc(CPULoongArchState *env, uint64_t value)
|
||||
* LoongArch CPUs hardware flags.
|
||||
*/
|
||||
#define HW_FLAGS_PLV_MASK R_CSR_CRMD_PLV_MASK /* 0x03 */
|
||||
#define HW_FLAGS_CRMD_PG R_CSR_CRMD_PG_MASK /* 0x10 */
|
||||
#define HW_FLAGS_EUEN_FPE 0x04
|
||||
#define HW_FLAGS_EUEN_SXE 0x08
|
||||
#define HW_FLAGS_EUEN_ASXE 0x10
|
||||
#define HW_FLAGS_CRMD_PG R_CSR_CRMD_PG_MASK /* 0x10 */
|
||||
#define HW_FLAGS_VA32 0x20
|
||||
#define HW_FLAGS_EUEN_ASXE 0x40
|
||||
|
||||
static inline void cpu_get_tb_cpu_state(CPULoongArchState *env, vaddr *pc,
|
||||
uint64_t *cs_base, uint32_t *flags)
|
||||
|
Loading…
Reference in New Issue
Block a user