unicorn/qemu
Anton Nefedov 559833a0d4
qapi: allow empty branches in flat unions
It often happens that just a few discriminator values imply extra data in
a flat union. Existing checks did not make possible to leave other values
uncovered. Such cases had to be worked around by either stating a dummy
(empty) type or introducing another (subset) discriminator enumeration.

Both options create redundant entities in qapi files for little profit.

With this patch it is not necessary anymore to add designated union
fields for every possible value of a discriminator enumeration.

Backports commit 800877bb1639d38ffaebe312a37b61c66bb10c83 from qemu
2018-07-02 22:59:43 -04:00
..
accel cpu-defs.h: Document CPUIOTLBEntry 'addr' field 2018-06-15 12:07:39 -04:00
crypto crypto: Clean up includes 2018-02-19 00:47:40 -05:00
default-configs arm64eb: add support for ARM64 big endian. 2017-04-24 23:30:01 +08:00
docs docs: clarify memory region lifecycle 2018-02-12 15:11:21 -05:00
fpu fpu/softfloat: Define floatN_silence_nan in terms of parts_silence_nan 2018-05-20 00:13:42 -04:00
hw Use cpu_create(type) instead of cpu_init(cpu_model) 2018-03-20 14:20:30 -04:00
include bswap: Add new stn_*_p() and ldn_*_p() memory access functions 2018-06-15 12:17:21 -04:00
qapi qobject: Modify qobject_ref() to return obj 2018-05-04 10:24:10 -04:00
qobject qobject: Modify qobject_ref() to return obj 2018-05-04 10:24:10 -04:00
qom qobject: Replace qobject_incref/QINCREF qobject_decref/QDECREF 2018-05-04 10:16:07 -04:00
scripts qapi: allow empty branches in flat unions 2018-07-02 22:59:43 -04:00
target target/arm: Strict alignment for ARMv6-M and ARMv8-M Baseline 2018-06-29 14:15:33 -05:00
tcg tcg/i386: Use byte form of xgetbv instruction 2018-06-28 13:23:32 -05:00
util osdep: powerpc64 align memory to allow 2MB radix THP page tables 2018-06-15 11:53:55 -04:00
aarch64.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
aarch64eb.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
accel.c clean-up: removed duplicate #includes 2018-02-28 08:51:56 -05:00
arm.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
armeb.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
CODING_STYLE import 2015-08-21 15:04:50 +08:00
configure Makefile: Rename TARGET_DIRS to TARGET_LIST 2018-06-08 19:22:45 -04:00
COPYING import 2015-08-21 15:04:50 +08:00
COPYING.LIB import 2015-08-21 15:04:50 +08:00
cpus.c Include qapi/error.h exactly where needed 2018-03-07 12:26:38 -05:00
exec.c exec.c: Use stn_p() and ldn_p() instead of explicit switches 2018-06-15 12:20:59 -04:00
gen_all_header.sh arm64eb: add support for ARM64 big endian. 2017-04-24 23:30:01 +08:00
glib_compat.c Use cpu_create(type) instead of cpu_init(cpu_model) 2018-03-20 14:20:30 -04:00
HACKING HACKING: document preference for g_new instead of g_malloc 2018-05-22 00:30:50 -04:00
header_gen.py target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
ioport.c hw: remove pio_addr_t 2018-02-24 02:43:16 -05:00
LICENSE import 2015-08-21 15:04:50 +08:00
m68k.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
Makefile Makefile: Rename TARGET_DIRS to TARGET_LIST 2018-06-08 19:22:45 -04:00
Makefile.objs qapi: Move qapi-schema.json to qapi/, rename generated files 2018-03-09 11:35:11 -05:00
Makefile.target tcg: remove softfloat from --disable-tcg builds 2018-06-07 11:49:35 -04:00
memory.c memory: Protect against use-after-free 2018-03-21 09:40:33 -04:00
memory_ldst.inc.c exec: Drop unnecessary code for unicorn 2018-03-12 10:11:46 -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 target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
mips64.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
mips64el.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
mipsel.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
powerpc.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
qemu-timer.c timer/cpus: fix some typos and update some comments 2018-02-25 23:21:57 -05:00
rules.mak build-sys: silence make by default or V=0 2018-03-06 08:58:03 -05:00
sparc.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
sparc64.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00
unicorn_common.h cpu: Convert cpu_index into a bitmap 2018-03-21 08:06:07 -04:00
VERSION import 2015-08-21 15:04:50 +08:00
vl.c Use cpu_create(type) instead of cpu_init(cpu_model) 2018-03-20 14:20:30 -04:00
vl.h import 2015-08-21 15:04:50 +08:00
x86_64.h target/arm: Implement SVE Floating Point Arithmetic - Unpredicated Group 2018-06-15 14:10:16 -04:00