unicorn/qemu
James Hogan e71d19df81
tcg/mips: Support r6 multiply/divide encodings
MIPSr6 adds several new integer multiply, divide, and modulo
instructions, and removes several pre-r6 encodings, along with the HI/LO
registers which were the implicit operands of some of those
instructions. Update TCG to use the new instructions when built for r6.

The new instructions actually map much more directly to the TCG ops, as
they only provide a single 32-bit half of the result and in a normal
general purpose register instead of HI or LO.

The mulu2_i32 and muls2_i32 operations are no longer appropriate for r6,
so they are removed from the TCG opcode table. This is because they
would need to emit two separate host instructions anyway (for the high
and low half of the result), which TCG can arrange automatically for us
in the absense of mulu2_i32/muls2_i32 by splitting it into mul_i32 and
mul*h_i32 TCG ops.

Backports commit bc6d0c22b09a72897d9db4482076f89e7de97400 from qemu
2018-02-17 15:24:04 -05:00
..
crypto
default-configs
docs
fpu
hw
include exec: factor out duplicate mmap code 2018-02-17 15:24:03 -05:00
qapi
qobject
qom
scripts
target-arm target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
target-i386 tcg: Remove gen_intermediate_code_pc 2018-02-17 15:23:59 -05:00
target-m68k target-m68k: Silence unused variable warning 2018-02-17 15:24:00 -05:00
target-mips tcg: Remove gen_intermediate_code_pc 2018-02-17 15:23:59 -05:00
target-sparc tcg: Remove gen_intermediate_code_pc 2018-02-17 15:23:59 -05:00
tcg tcg/mips: Support r6 multiply/divide encodings 2018-02-17 15:24:04 -05:00
util exec: factor out duplicate mmap code 2018-02-17 15:24:03 -05:00
aarch64.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
aarch64eb.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
accel.c
arm.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
armeb.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
CODING_STYLE
configure
COPYING
COPYING.LIB
cpu-exec-common.c
cpu-exec.c
cpus.c
cputlb.c
exec.c exec: factor out duplicate mmap code 2018-02-17 15:24:03 -05:00
gen_all_header.sh
glib_compat.c
HACKING
header_gen.py target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
ioport.c
LICENSE
m68k.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
Makefile
Makefile.objs
Makefile.target
memory.c
memory_mapping.c
mips.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
mips64.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
mips64el.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
mipsel.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
powerpc.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
qapi-schema.json
qemu-log.c
qemu-timer.c
rules.mak
softmmu_template.h
sparc.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
sparc64.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00
tcg-runtime.c
translate-all.c tcg/ppc: Revise goto_tb implementation 2018-02-17 15:24:03 -05:00
translate-all.h
translate-common.c
unicorn_common.h
VERSION
vl.c
vl.h
x86_64.h target-arm: Fix CPU breakpoint handling 2018-02-17 15:24:02 -05:00