unicorn/qemu
Alex Bennée caba238b5a
tcg: enable MTTCG by default for ARM on x86 hosts
This enables the multi-threaded system emulation by default for ARMv7
and ARMv8 guests using the x86_64 TCG backend. This is because on the
guest side:

- The ARM translate.c/translate-64.c have been converted to
- use MTTCG safe atomic primitives
- emit the appropriate barrier ops
- The ARM machine has been updated to
- hold the BQL when modifying shared cross-vCPU state
- defer powerctl changes to async safe work

All the host backends support the barrier and atomic primitives but
need to provide same-or-better support for normal load/store
operations.

Backports commit ca759f9e387db87e1719911f019bc60c74be9ed8 from qemu
2018-03-02 10:32:47 -05:00
..
crypto
default-configs
docs
fpu softfloat: Add float128_to_uint32_round_to_zero() 2018-03-02 08:33:09 -05:00
hw i386: Remove AMD feature flag aliases from Opteron models 2018-03-01 23:49:04 -05:00
include cputlb and arm/sparc targets: convert mmuidx flushes from varg to bitmap 2018-03-02 10:12:40 -05:00
qapi
qobject util/cutils: Rename qemu_strtoll(), qemu_strtoull() 2018-03-02 08:39:45 -05:00
qom arm: Correctly handle watchpoints for BE32 CPUs 2018-03-02 00:24:33 -05:00
scripts
target tcg: enable MTTCG by default for ARM on x86 hosts 2018-03-02 10:32:47 -05:00
tcg tcg: enable MTTCG by default for ARM on x86 hosts 2018-03-02 10:32:47 -05:00
util util/cutils: Change qemu_strtosz*() from int64_t to uint64_t 2018-03-02 08:58:55 -05:00
aarch64.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
aarch64eb.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
accel.c
arm.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
armeb.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
atomic_template.h
CODING_STYLE
configure tcg: enable MTTCG by default for ARM on x86 hosts 2018-03-02 10:32:47 -05:00
COPYING
COPYING.LIB
cpu-exec-common.c
cpu-exec.c tcg: handle EXCP_ATOMIC exception for system emulation 2018-03-02 09:56:43 -05:00
cpus.c tcg: handle EXCP_ATOMIC exception for system emulation 2018-03-02 09:56:43 -05:00
cputlb.c cputlb: tweak qemu_ram_addr_from_host_nofail reporting 2018-03-02 10:24:03 -05:00
exec.c exec: make address_space_cache_destroy idempotent 2018-03-02 08:16:17 -05:00
gen_all_header.sh
glib_compat.c
HACKING
header_gen.py Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
ioport.c
LICENSE
m68k.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
Makefile
Makefile.objs
Makefile.target Move target-* CPU file into a target/ folder 2018-03-01 22:50:58 -05:00
memory_ldst.inc.c
memory_mapping.c
memory.c cputlb: drop flush_global flag from tlb_flush 2018-03-01 19:36:04 -05:00
mips64.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
mips64el.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
mips.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
mipsel.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
powerpc.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
qapi-schema.json
qemu-timer.c
rules.mak
softmmu_template.h
sparc64.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
sparc.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00
tcg-runtime.c tcg: Add opcode for ctpop 2018-03-01 18:26:41 -05:00
translate-all.c tcg: enable thread-per-vCPU 2018-03-02 09:43:14 -05:00
translate-all.h
translate-common.c
unicorn_common.h
VERSION
vl.c tcg: add options for enabling MTTCG 2018-03-02 09:25:01 -05:00
vl.h
x86_64.h Resolve symbol errors with softfloat 2018-03-02 09:25:05 -05:00