unicorn/qemu
Peter Maydell 719231b4c0
target/arm: Activate M-profile floating point context when FPCCR.ASPEN is set
The M-profile FPCCR.ASPEN bit indicates that automatic floating-point
context preservation is enabled. Before executing any floating-point
instruction, if FPCCR.ASPEN is set and the CONTROL FPCA/SFPA bits
indicate that there is no active floating point context then we
must create a new context (by initializing FPSCR and setting
FPCA/SFPA to indicate that the context is now active). In the
pseudocode this is handled by ExecuteFPCheck().

Implement this with a new TB flag which tracks whether we
need to create a new FP context.

Backports commit 6000531e19964756673a5f4b694a649ef883605a from qemu
2019-04-30 10:51:31 -04:00
..
accel cputlb: Fix io_readx() to respect the access_type 2019-04-30 10:11:11 -04:00
crypto
default-configs target/riscv: Initial introduction of the RISC-V target 2019-03-08 21:46:10 -05:00
docs docs/devel/memory.txt: Document _with_attrs accessors 2018-10-04 04:46:26 -04:00
fpu qemu/fpu: Synchronize with Qemu 2019-03-09 18:27:31 -05:00
hw target/riscv: Initial introduction of the RISC-V target 2019-03-08 21:46:10 -05:00
include tcg: Hoist max_insns computation to tb_gen_code 2019-04-30 09:49:57 -04:00
qapi qapi: Rewrite string-input-visitor's integer and list parsing 2018-12-18 04:57:25 -05:00
qobject qstring: Move qstring_from_substr()'s @end one to the right 2018-08-02 21:24:19 -04:00
qom qom/cpu: Add cluster_index to CPUState 2019-01-30 12:59:59 -05:00
scripts decodetree: Properly diagnose fields overflowing an insn 2019-03-13 11:21:04 -04:00
target target/arm: Activate M-profile floating point context when FPCCR.ASPEN is set 2019-04-30 10:51:31 -04:00
tcg tcg/arm: Restrict constant pool displacement to 12 bits 2019-04-30 10:10:21 -04:00
util target/arm: Handle AArch32 CRC instructions 2019-04-27 10:50:25 -04:00
aarch64.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
aarch64eb.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
accel.c clean-up: removed duplicate #includes 2018-02-28 08:51:56 -05:00
arm.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
armeb.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
CODING_STYLE
configure configure: Disable W^X on OpenBSD 2019-03-11 16:46:52 -04:00
COPYING
COPYING.LIB
cpus.c Include qapi/error.h exactly where needed 2018-03-07 12:26:38 -05:00
exec.c exec.c: refactor function flatview_add_to_dispatch() 2019-03-11 17:00:46 -04:00
gen_all_header.sh
glib_compat.c target/arm/translate: Synchronize with Qemu 2019-04-27 10:13:01 -04:00
HACKING HACKING: document preference for g_new instead of g_malloc 2018-05-22 00:30:50 -04:00
header_gen.py tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
ioport.c hw: remove pio_addr_t 2018-02-24 02:43:16 -05:00
LICENSE
m68k.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
Makefile config-all-devices.mak: rebuild on reconfigure 2019-03-29 19:31:32 -04:00
Makefile.objs qapi: Move qapi-schema.json to qapi/, rename generated files 2018-03-09 11:35:11 -05:00
Makefile.target configure: Remove old -fno-gcse workaround for GCC 4.6.x and 4.7.[012] 2018-12-18 03:52:36 -05:00
memory.c cputlb: Synchronize with qemu 2019-04-26 15:48:45 -04:00
memory_ldst.inc.c exec: Fix MAP_RAM for cached access 2018-07-03 01:11:12 -04:00
memory_mapping.c include/qemu/osdep.h: Don't include qapi/error.h 2018-02-21 23:08:18 -05:00
mips.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
mips64.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
mips64el.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
mipsel.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
powerpc.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
qemu-timer.c timer/cpus: fix some typos and update some comments 2018-02-25 23:21:57 -05:00
riscv32.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
riscv64.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
rules.mak build-sys: silence make by default or V=0 2018-03-06 08:58:03 -05:00
sparc.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
sparc64.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00
unicorn_common.h unicorn_common: Fix unicorn memory functions failing 2018-09-03 10:40:14 -04:00
VERSION Open 4.1 development tree 2019-04-24 11:59:00 -04:00
vl.c Use cpu_create(type) instead of cpu_init(cpu_model) 2018-03-20 14:20:30 -04:00
vl.h
x86_64.h tcg: Implement tcg_gen_extract2_{i32,i64} 2019-04-30 09:20:45 -04:00