unicorn/qemu
Joseph Myers ddb2f1d4dd target/i386: reimplement fyl2x using floatx80 operations
The x87 fyl2x emulation is currently based around conversion to
double. This is inherently unsuitable for a good emulation of any
floatx80 operation. Reimplement using the soft-float operations,
building on top of the reimplementation of fyl2xp1 and factoring out
code to be shared between the two instructions.

The included test assumes that the result in round-to-nearest mode
should always be one of the two closest floating-point numbers to the
mathematically exact result (including that it should be exact, in the
exact cases which cover more cases than for fyl2xp1).

Backports commit 1f18a1e6ab8368a4eab2d22894d3b2ae75250cd3 from qemu
2021-02-25 13:46:29 -05:00
..
accel unicorn: fix uc_emu_start until if end instruction is in another tlb 2020-08-05 03:18:51 +09:00
crypto
default-configs
docs
fpu softfloat: return low bits of quotient from floatx80_modrem 2021-02-25 13:39:10 -05:00
hw Expose different 32-bit ARM CPU models to users via UC_MODE flags (#1165) 2020-01-14 09:37:21 -05:00
include softfloat: return low bits of quotient from floatx80_modrem 2021-02-25 13:39:10 -05:00
qapi
qobject
qom cpu: Move icount_decr to CPUNegativeOffsetState 2019-06-13 15:34:28 -04:00
scripts decodetree: Multi-cleanup 2020-06-15 12:49:02 -04:00
target target/i386: reimplement fyl2x using floatx80 operations 2021-02-25 13:46:29 -05:00
tcg tcg: Improve move ops in liveness_pass_2 2020-06-14 22:13:04 -04:00
util util/cutils: Turn FIXME comment into QEMU_BUILD_BUG_ON() 2020-01-14 08:04:30 -05:00
aarch64.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
aarch64eb.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
accel.c
arm.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
armeb.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
CODING_STYLE.rst docs: split the CODING_STYLE doc into distinct groups 2019-11-28 02:54:44 -05:00
configure configure: Support -static-pie if requested 2020-04-30 07:09:34 -04:00
COPYING
COPYING.LIB
cpus.c
exec.c Memory: Enable writeback for given memory region 2020-01-14 07:44:24 -05:00
gen_all_header.sh
glib_compat.c target/arm: Add VHE system register redirection and aliasing 2020-03-21 15:57:03 -04:00
header_gen.py softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
ioport.c
LICENSE
m68k.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
Makefile Makefile: Rename targets for make recursion 2019-08-08 17:26:49 -04:00
Makefile.objs
Makefile.target
memory.c Memory: Enable writeback for given memory region 2020-01-14 07:44:24 -05:00
memory_ldst.inc.c memory: Single byte swap along the I/O path 2020-01-07 19:12:04 -05:00
memory_mapping.c
mips.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
mips64.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
mips64el.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
mipsel.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
powerpc.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
qemu-timer.c
riscv32.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
riscv64.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
rules.mak
sparc.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
sparc64.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00
unicorn_common.h
VERSION Open 5.1 development tree 2020-04-30 07:30:38 -04:00
vl.c
vl.h
x86_64.h softfloat: merge floatx80_mod and floatx80_rem 2021-02-25 13:34:05 -05:00