unicorn/qemu
Roman Kapl 0e2dc93e5f
target/arm: Fix crash on conditional instruction in an IT block
If an instruction is conditional (like CBZ) and it is executed
conditionally (using the ITx instruction), a jump to an undefined
label is generated, and QEMU crashes.

CBZ in IT block is an UNPREDICTABLE behavior, but we should not
crash. Honouring the condition code is allowed by the spec in this
case (constrained unpredictable, ARMv8, section K1.1.7), and matches
what we do for other "UNPREDICTABLE inside an IT block" instructions.

Fix the 'skip on condition' code to create a new label only if it
does not already exist. Previously multiple labels were created, but
only the last one of them was set.

Backports commit c2d9644e6d517170bf6520f633628259a8460d48 from qemu
2018-08-22 12:27:45 -04:00
..
accel accel/tcg: Correct "is this a TLB miss" check in get_page_addr_code() 2018-07-03 19:23:25 -04:00
crypto
default-configs
docs
fpu softfloat: Fix missing inexact for floating-point add 2018-08-17 14:06:55 -04:00
hw Use cpu_create(type) instead of cpu_init(cpu_model) 2018-03-20 14:20:30 -04:00
include qstring: Fix qstring_from_substr() not to provoke int overflow 2018-08-02 21:21:51 -04:00
qapi qobject: Modify qobject_ref() to return obj 2018-05-04 10:24:10 -04:00
qobject qstring: Move qstring_from_substr()'s @end one to the right 2018-08-02 21:24:19 -04:00
qom qobject: Replace qobject_incref/QINCREF qobject_decref/QDECREF 2018-05-04 10:16:07 -04:00
scripts qapi: Fix some pycodestyle-3 complaints 2018-08-16 07:14:40 -04:00
target target/arm: Fix crash on conditional instruction in an IT block 2018-08-22 12:27:45 -04:00
tcg tcg/optimize: Do not skip default processing of dup_vec 2018-08-09 00:53:07 -04:00
util i386: Fix up the Node id for CPUID_8000_001E 2018-07-03 00:31:38 -04:00
aarch64.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
aarch64eb.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
accel.c
arm.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
armeb.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
CODING_STYLE
configure Revert "Makefile: Rename TARGET_DIRS to TARGET_LIST" 2018-07-05 17:40:24 -04:00
COPYING
COPYING.LIB
cpus.c
exec.c exec: Fix MAP_RAM for cached access 2018-07-03 01:11:12 -04:00
gen_all_header.sh
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 dot product (indexed) 2018-07-03 04:42:41 -04:00
ioport.c
LICENSE
m68k.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
Makefile Revert "Makefile: Rename TARGET_DIRS to TARGET_LIST" 2018-07-05 17:40:24 -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_ldst.inc.c exec: Fix MAP_RAM for cached access 2018-07-03 01:11:12 -04:00
memory_mapping.c
memory.c memory: Protect against use-after-free 2018-03-21 09:40:33 -04:00
mips64.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
mips64el.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
mips.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
mipsel.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
powerpc.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
qemu-timer.c
rules.mak
sparc64.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
sparc.h target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00
unicorn_common.h cpu: Convert cpu_index into a bitmap 2018-03-21 08:06:07 -04:00
VERSION Open 3.1 development tree 2018-08-16 06:33:25 -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 target/arm: Implement SVE dot product (indexed) 2018-07-03 04:42:41 -04:00