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 docs/devel/memory.txt: Document _with_attrs accessors 2018-10-04 04:46:26 -04:00
fpu include/fpu/softfloat: Fix compilation with Clang on s390x 2019-01-24 18:37:51 -05:00
hw hw/mips/mips_r4k: Fix initialization of MIPS target CPUs 2018-09-03 17:40:08 -04:00
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 qstring: Move qstring_from_substr()'s @end one to the right 2018-08-02 21:24:19 -04:00
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 clean-up: removed duplicate #includes 2018-02-28 08:51:56 -05:00
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 Include qapi/error.h exactly where needed 2018-03-07 12:26:38 -05:00
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 HACKING: document preference for g_new instead of g_malloc 2018-05-22 00:30:50 -04:00
header_gen.py target/arm: Implement ARMv8.3-JSConv 2019-02-22 19:08:57 -05:00
ioport.c hw: remove pio_addr_t 2018-02-24 02:43:16 -05:00
LICENSE
m68k.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05: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 configure: Remove old -fno-gcse workaround for GCC 4.6.x and 4.7.[012] 2018-12-18 03:52:36 -05:00
memory.c memory: learn about non-volatile memory region 2018-11-11 08:50:39 -05:00
memory_ldst.inc.c exec: Fix MAP_RAM for cached access 2018-07-03 01:11:12 -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: Use vector operations for saturation 2019-02-15 18:14:09 -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
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 timer/cpus: fix some typos and update some comments 2018-02-25 23:21:57 -05:00
riscv32.h target/arm: Add v8M stack checks on ADD/SUB/MOV of SP 2018-10-08 14:15:15 -04:00
riscv64.h target/arm: Add v8M stack checks on ADD/SUB/MOV of SP 2018-10-08 14:15:15 -04:00
rules.mak build-sys: silence make by default or V=0 2018-03-06 08:58:03 -05:00
sparc.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
sparc64.h target/arm: Use vector operations for saturation 2019-02-15 18:14:09 -05:00
unicorn_common.h unicorn_common: Fix unicorn memory functions failing 2018-09-03 10:40:14 -04:00
VERSION Open 4.0 development tree 2018-12-11 20:33:45 -05: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: Use vector operations for saturation 2019-02-15 18:14:09 -05:00