This change causes slighlty better performance of emulation of fp
comparison instructions via better compiler optimization of refactored
code. The functionality is otherwise unchanged.
Signed-off-by: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
---
target/mips/fpu_helper.c | 56 +++++++++++++++++++++++++++---------------------
1 file changed, 32 insertions(+), 24 deletions(-)
/*
@@ -2080,12 +2088,12 @@ uint64_t helper_r6_cmp_d_ ## op(CPUMIPSState *env,
uint64_t fdt0, \
{ \
uint64_t c; \
c = cond; \
- update_fcr31(env, GETPC()); \
if (c) { \
return -1; \
} else { \
return 0; \
} \
+ update_fcr31(env, GETPC()); \
}
/*
@@ -2175,12 +2183,12 @@ uint32_t helper_r6_cmp_s_ ## op(CPUMIPSState *env,
uint32_t fst0, \
{ \
uint64_t c; \
c = cond; \
- update_fcr31(env, GETPC()); \
if (c) { \
return -1; \
} else { \
return 0; \
} \
+ update_fcr31(env, GETPC()); \