unicorn/qemu/include/exec
Richard Henderson 2a4a7b9391
tcg: Use tlb_fill probe from tlb_vaddr_to_host
Most of the existing users would continue around a loop which
would fault the tlb entry in via a normal load/store.

But for AArch64 SVE we have an existing emulation bug wherein we
would mark the first element of a no-fault vector load as faulted
(within the FFR, not via exception) just because we did not have
its address in the TLB. Now we can properly only mark it as faulted
if there really is no valid, readable translation, while still not
raising an exception. (Note that beyond the first element of the
vector, the hardware may report a fault for any reason whatsoever;
with at least one element loaded, forward progress is guaranteed.)

Backports commit 4811e9095c0491bc6f5450e5012c9c4796b9e59d from qemu
2019-05-16 18:27:03 -04: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 cpu_ldst.h, cpu-all.h, bswap.h: Update documentation on ld/st accessors 2019-04-22 07:39:13 -04: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 cputlb: Synchronize with qemu 2019-04-26 15:48:45 -04:00
cpu_ldst.h tcg: Use tlb_fill probe from tlb_vaddr_to_host 2019-05-16 18:27:03 -04:00
cpu_ldst_template.h cpu_ldst_template.h: Drop unused cpu_ldfq/stfq/ldfl/stfl accessors 2019-04-22 07:21:03 -04:00
cpu_ldst_useronly_template.h cpu_ldst.h: Use inline functions for usermode cpu_ld/st accessors 2019-04-22 07:08:39 -04:00
cputlb.h exec: Drop unnecessary code for unicorn 2018-03-12 10:11:46 -04:00
exec-all.h tcg: Use CPUClass::tlb_fill in cputlb.c 2019-05-16 17:35:37 -04:00
gen-icount.h gen-icount: Use tcg_ctx where applicable in commented out code 2019-04-22 06:17:10 -04:00
helper-gen.h target/arm: Implement SVE Integer Multiply-Add Group 2018-05-20 04:35:36 -04:00
helper-head.h exec/helper-*: Synchronize with qemu 2019-04-22 08:22:49 -04:00
helper-proto.h tcg: Allow 6 arguments to TCG helpers 2018-03-17 18:29:04 -04:00
helper-tcg.h exec/helper-*: Synchronize with qemu 2019-04-22 08:22:49 -04: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 tcg: define CF_PARALLEL and use it for TB hashing along with CF_COUNT_MASK 2019-05-04 22:22:06 -04:00
tb-lookup.h tcg: define CF_PARALLEL and use it for TB hashing along with CF_COUNT_MASK 2019-05-04 22:22:06 -04:00
translator.h tcg: Hoist max_insns computation to tb_gen_code 2019-04-30 09:49:57 -04:00