unicorn/qemu
David Hildenbrand 8583c8f1f6
include/exec/helper-head.h: support "const void *" in helper calls
Especially when dealing with out-of-line gvec helpers, it is often
helpful to specify some vector pointers as constant. E.g. when
we have two inputs and one output, marking the two inputs as consts
pointers helps to avoid bugs.

Const pointers can be specified via "cptr", however behave in TCG just
like ordinary pointers. We can specify helpers like:

DEF_HELPER_FLAGS_4(gvec_vbperm, TCG_CALL_NO_RWG, void, ptr, cptr, cptr, i32)

void HELPER(gvec_vbperm)(void *v1, const void *v2, const void *v3,
uint32_t desc)

And make sure that here, only v1 will be written (as long as const is
not casted away, of course).

Backports commit 8c6edfdd90522caa4fc429144d393aba5b99f584 from qemu
2019-02-22 19:12:09 -05:00
..
accel cputlb: update TLB entry/index after tlb_fill 2019-02-12 11:48:48 -05:00
crypto
default-configs
docs
fpu include/fpu/softfloat: Fix compilation with Clang on s390x 2019-01-24 18:37:51 -05:00
hw
include include/exec/helper-head.h: support "const void *" in helper calls 2019-02-22 19:12:09 -05:00
qapi qapi: Rewrite string-input-visitor's integer and list parsing 2018-12-18 04:57:25 -05:00
qobject
qom qom/cpu: Add cluster_index to CPUState 2019-01-30 12:59:59 -05:00
scripts qapi: Prepare for system modules other than 'builtin' 2019-02-21 09:58:54 -05:00
target target/arm: Implement ARMv8.3-JSConv 2019-02-22 19:08:57 -05:00
tcg tcg: Remove TODO file 2019-02-22 19:10:26 -05:00
util mmap-alloc: fix hugetlbfs misaligned length in ppc64 2019-02-05 16:52:39 -05:00
aarch64.h target/arm: Implement ARMv8.3-JSConv 2019-02-22 19:08:57 -05:00
aarch64eb.h target/arm: Implement ARMv8.3-JSConv 2019-02-22 19:08:57 -05:00
accel.c
arm.h target/arm: Implement ARMv8.3-JSConv 2019-02-22 19:08:57 -05:00
armeb.h target/arm: Implement ARMv8.3-JSConv 2019-02-22 19:08:57 -05:00
CODING_STYLE
configure configure: Force the C standard to gnu99 2019-01-22 20:18:58 -05:00
COPYING
COPYING.LIB
cpus.c
exec.c exec.c: Use correct attrs in cpu_memory_rw_debug() 2019-01-29 17:05:50 -05:00
gen_all_header.sh
glib_compat.c target/arm: expose remaining CPUID registers as RAZ 2019-02-15 17:48:37 -05:00
HACKING
header_gen.py target/arm: Implement ARMv8.3-JSConv 2019-02-22 19:08:57 -05:00
ioport.c
LICENSE
m68k.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
Makefile
Makefile.objs
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_ldst.inc.c
memory_mapping.c
memory.c memory: learn about non-volatile memory region 2018-11-11 08:50:39 -05:00
mips64.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
mips64el.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
mips.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
mipsel.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
powerpc.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
qemu-timer.c
riscv32.h
riscv64.h
rules.mak
sparc64.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
sparc.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
unicorn_common.h
VERSION Open 4.0 development tree 2018-12-11 20:33:45 -05:00
vl.c
vl.h
x86_64.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00