unicorn/qemu/include/exec
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
..
address-spaces.h Clean up header guards that don't match their file name 2018-02-25 04:18:42 -05:00
cpu-all.h tcg: Support MMU protection regions smaller than TARGET_PAGE_SIZE 2018-11-16 21:35:54 -05:00
cpu-common.h cpu: Introduce a wrapper for tlb_flush() that can be used in common code 2018-03-03 21:24:55 -05:00
cpu-defs.h cpu-defs.h: Document CPUIOTLBEntry 'addr' field 2018-06-15 12:07:39 -04:00
cpu_ldst.h cputlb: read CPUTLBEntry.addr_write atomically 2018-10-23 15:37:43 -04:00
cpu_ldst_template.h cputlb: read CPUTLBEntry.addr_write atomically 2018-10-23 15:37:43 -04:00
cputlb.h exec: Drop unnecessary code for unicorn 2018-03-12 10:11:46 -04:00
exec-all.h exec-all: document that tlb_fill can trigger a TLB resize 2019-02-12 11:38:28 -05:00
gen-icount.h tcg: Pass tb and index to tcg_gen_exit_tb separately 2018-06-07 11:56:32 -04:00
helper-gen.h target/arm: Implement SVE Integer Multiply-Add Group 2018-05-20 04:35:36 -04:00
helper-head.h include/exec/helper-head.h: support "const void *" in helper calls 2019-02-22 19:12:09 -05:00
helper-proto.h tcg: Allow 6 arguments to TCG helpers 2018-03-17 18:29:04 -04:00
helper-tcg.h tcg: Add TCG_CALL_NO_RETURN 2019-01-05 06:35:21 -05:00
hwaddr.h qemu-common: push cpu.h inclusion out of qemu-common.h 2018-02-24 01:50:56 -05:00
ioport.h hw: remove pio_addr_t 2018-02-24 02:43:16 -05:00
memattrs.h exec: Add target-specific tlb bits to MemTxAttrs 2019-02-05 17:00:56 -05:00
memory-internal.h memory: Rename mem_begin/mem_commit/mem_add helpers 2018-03-11 21:36:50 -04:00
memory.h target: Resolve repeated typedef warnings 2019-01-22 20:27:35 -05:00
ram_addr.h exec: Drop unnecessary code for unicorn 2018-03-12 10:11:46 -04:00
ramlist.h memory: RCU ram_list.dirty_memory[] for safe RAM hotplug 2018-02-22 15:38:03 -05:00
semihost.h exec: Add semihosting stubs 2018-02-17 15:23:33 -05:00
tb-context.h tcg: allocate TB structs before the corresponding translated code 2018-03-03 17:05:49 -05:00
tb-hash.h include: move exec/tb-hash-xx.h to qemu/xxhash.h 2018-12-18 06:07:55 -05:00
tb-lookup.h exec-all: bring tb->invalid into tb->cflags 2018-03-05 02:46:21 -05:00
translator.h translator: merge max_insns into DisasContextBase 2018-05-11 13:59:17 -04:00