mirror of https://github.com/xemu-project/xemu.git
target/riscv: rvv-1.0: floating-point compare instructions
Signed-off-by: Frank Chang <frank.chang@sifive.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20211210075704.23951-49-frank.chang@sifive.com> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
parent
063f8bbca0
commit
e70aa16e5e
|
@ -3710,8 +3710,6 @@ void HELPER(NAME)(void *vd, void *v0, void *vs1, void *vs2, \
|
||||||
{ \
|
{ \
|
||||||
uint32_t vm = vext_vm(desc); \
|
uint32_t vm = vext_vm(desc); \
|
||||||
uint32_t vl = env->vl; \
|
uint32_t vl = env->vl; \
|
||||||
uint32_t vlmax = vext_max_elems(desc, \
|
|
||||||
ctzl(sizeof(ETYPE))); \
|
|
||||||
uint32_t i; \
|
uint32_t i; \
|
||||||
\
|
\
|
||||||
for (i = 0; i < vl; i++) { \
|
for (i = 0; i < vl; i++) { \
|
||||||
|
@ -3723,9 +3721,6 @@ void HELPER(NAME)(void *vd, void *v0, void *vs1, void *vs2, \
|
||||||
vext_set_elem_mask(vd, i, \
|
vext_set_elem_mask(vd, i, \
|
||||||
DO_OP(s2, s1, &env->fp_status)); \
|
DO_OP(s2, s1, &env->fp_status)); \
|
||||||
} \
|
} \
|
||||||
for (; i < vlmax; i++) { \
|
|
||||||
vext_set_elem_mask(vd, i, 0); \
|
|
||||||
} \
|
|
||||||
}
|
}
|
||||||
|
|
||||||
GEN_VEXT_CMP_VV_ENV(vmfeq_vv_h, uint16_t, H2, float16_eq_quiet)
|
GEN_VEXT_CMP_VV_ENV(vmfeq_vv_h, uint16_t, H2, float16_eq_quiet)
|
||||||
|
@ -3738,7 +3733,6 @@ void HELPER(NAME)(void *vd, void *v0, uint64_t s1, void *vs2, \
|
||||||
{ \
|
{ \
|
||||||
uint32_t vm = vext_vm(desc); \
|
uint32_t vm = vext_vm(desc); \
|
||||||
uint32_t vl = env->vl; \
|
uint32_t vl = env->vl; \
|
||||||
uint32_t vlmax = vext_max_elems(desc, ctzl(sizeof(ETYPE))); \
|
|
||||||
uint32_t i; \
|
uint32_t i; \
|
||||||
\
|
\
|
||||||
for (i = 0; i < vl; i++) { \
|
for (i = 0; i < vl; i++) { \
|
||||||
|
@ -3749,9 +3743,6 @@ void HELPER(NAME)(void *vd, void *v0, uint64_t s1, void *vs2, \
|
||||||
vext_set_elem_mask(vd, i, \
|
vext_set_elem_mask(vd, i, \
|
||||||
DO_OP(s2, (ETYPE)s1, &env->fp_status)); \
|
DO_OP(s2, (ETYPE)s1, &env->fp_status)); \
|
||||||
} \
|
} \
|
||||||
for (; i < vlmax; i++) { \
|
|
||||||
vext_set_elem_mask(vd, i, 0); \
|
|
||||||
} \
|
|
||||||
}
|
}
|
||||||
|
|
||||||
GEN_VEXT_CMP_VF(vmfeq_vf_h, uint16_t, H2, float16_eq_quiet)
|
GEN_VEXT_CMP_VF(vmfeq_vf_h, uint16_t, H2, float16_eq_quiet)
|
||||||
|
|
Loading…
Reference in New Issue