qemu-e2k/include/exec
Richard Henderson 50b107c5d6 cputlb: Handle watchpoints via TLB_WATCHPOINT
The raising of exceptions from check_watchpoint, buried inside
of the I/O subsystem, is fundamentally broken.  We do not have
the helper return address with which we can unwind guest state.

Replace PHYS_SECTION_WATCH and io_mem_watch with TLB_WATCHPOINT.
Move the call to cpu_check_watchpoint into the cputlb helpers
where we do have the helper return address.

This allows watchpoints on RAM to bypass the full i/o access path.

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2019-09-03 08:30:39 -07:00
..
user include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
address-spaces.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
cpu_ldst_template.h cpu: Replace ENV_GET_CPU with env_cpu 2019-06-10 07:03:34 -07:00
cpu_ldst_useronly_template.h tcg: Release mmap_lock on translation fault 2019-07-14 12:19:01 +02:00
cpu_ldst.h linux-user: check valid address in access_ok() 2019-07-18 13:57:28 +02:00
cpu-all.h cputlb: Handle watchpoints via TLB_WATCHPOINT 2019-09-03 08:30:39 -07:00
cpu-common.h Header cleanups 2019-05-03 13:03:04 +02:00
cpu-defs.h hw/core: Move cpu.c, cpu.h from qom/ to hw/core/ 2019-08-21 13:24:01 +02:00
cputlb.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
exec-all.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
gdbstub.h gdbstub: Clarify what gdb_handlesig() is doing 2018-05-25 10:10:55 +02:00
gen-icount.h icount: remove unnecessary gen_io_end calls 2019-08-20 17:26:22 +02:00
helper-gen.h tcg: Allow 6 arguments to TCG helpers 2017-12-29 12:43:40 -08:00
helper-head.h include/exec/helper-head.h: support "const void *" in helper calls 2019-02-21 10:22:24 -08:00
helper-proto.h tcg: Allow 6 arguments to TCG helpers 2017-12-29 12:43:40 -08:00
helper-tcg.h tcg: Add TCG_CALL_NO_RETURN 2018-12-26 06:40:24 +11:00
hwaddr.h hw: Clean up includes 2016-06-07 18:19:23 +03:00
ioport.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
log.h hw/core: Move cpu.c, cpu.h from qom/ to hw/core/ 2019-08-21 13:24:01 +02:00
memattrs.h cputlb: Byte swap memory transaction attribute 2019-09-03 08:30:39 -07:00
memop.h cputlb: Replace size and endian operands for MemOp 2019-09-03 08:30:39 -07:00
memory_ldst_cached.inc.h exec: reintroduce MemoryRegion caching 2018-05-09 00:13:38 +02:00
memory_ldst_phys.inc.h exec: move memory access declarations to a common header, inline *_phys functions 2018-05-09 00:13:38 +02:00
memory_ldst.inc.h exec: move memory access declarations to a common header, inline *_phys functions 2018-05-09 00:13:38 +02:00
memory-internal.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
memory.h memory: Access MemoryRegion with endianness 2019-09-03 08:30:39 -07:00
poison.h configure: Define target access alignment in configure 2019-08-20 17:26:19 +02:00
ram_addr.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
ramlist.h migration: Poison ramblock loops in migration 2018-06-15 14:40:56 +01:00
softmmu-semi.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
target_page.h migration: Make savevm.c target independent 2017-05-18 19:21:00 +02:00
tb-context.h tcg: remove tb_lock 2018-06-15 08:18:48 -10:00
tb-hash.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
tb-lookup.h accel/tcg: Consider cluster index in tb_lookup__cpu_state() 2019-02-06 03:39:24 +00:00
translator.h Clean up decorations and whitespace around header guards 2019-05-13 08:58:55 +02:00