qemu-e2k/linux-user
Denis Drakhnia e404c06a2d e2k: Fix syscall restart.
We cannot just change the IP address in E2K to restart
the instruction because the same register can be read
and written in the same instruction (and many more
situations), but we can create a fake syscall instruction
and restart it.

Signed-off-by: Denis Drakhnya <numas13@gmail.com>
2022-06-10 11:48:19 +03:00
..
aarch64 linux-user/aarch64: Introduce sve_vq 2022-06-08 19:38:55 +01:00
alpha Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
arm target/arm: Change CPUArchState.thumb to bool 2022-04-22 14:44:54 +01:00
cris Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
e2k e2k: Fix syscall restart. 2022-06-10 11:48:19 +03:00
generic target: e2k: unpack long instructions. 2022-06-10 11:48:10 +03:00
hexagon Clean up decorations and whitespace around header guards 2022-05-11 16:50:32 +02:00
hppa linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h 2022-02-01 08:01:38 +01:00
i386 Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
include linux-user/host/s390: Treat EX and EXRL as writes 2022-05-23 22:54:02 +02:00
m68k target/m68k: Implement TRAPcc 2022-06-02 09:35:02 +02:00
microblaze Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
mips Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
mips64 linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h 2022-02-01 08:01:38 +01:00
nios2 linux-user/nios2: Handle various SIGILL exceptions 2022-04-26 08:17:05 -07:00
openrisc Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
ppc Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
riscv Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
s390x linux-user/s390x: Fix unwinding from signal handlers 2022-05-23 22:52:27 +02:00
sh4 Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
sparc Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
x86_64 linux-user: Move generic TARGET_RLIMIT* definitions to generic/target_resource.h 2022-02-01 08:01:38 +01:00
xtensa Replace TARGET_WORDS_BIGENDIAN 2022-04-06 10:50:37 +02:00
cpu_loop-common.h linux-user: Create special-errno.h 2021-12-19 20:47:33 -08:00
elfload.c e2k: Impl basic init thread support. 2022-06-10 11:48:18 +03:00
errnos.c.inc linux-user: Simplify host <-> target errno conversion using macros 2021-07-12 21:53:35 +02:00
exit.c linux-user: Don't include gdbstub.h in qemu.h 2021-09-13 20:35:45 +02:00
fd-trans.c linux-user: Fix inotify on aarch64 2022-01-27 16:58:33 +01:00
fd-trans.h fd-trans: Fix race condition on reallocation of the translation table. 2021-07-12 21:54:46 +02:00
flat.h linux-user/: fix some comment spelling errors 2020-09-17 20:39:22 +02:00
flatload.c linux-user: Split linux-user internals out of qemu.h 2021-09-13 20:35:45 +02:00
ioctls.h linux-user: implement more loop ioctls 2021-11-29 14:54:17 +01:00
linux_loop.h linux-user: implement more loop ioctls 2021-11-29 14:54:17 +01:00
linuxload.c linux-user: Clean up arg_start/arg_end confusion 2022-05-23 08:15:19 +02:00
loader.h linux-user: Split loader-related prototypes into loader.h 2021-09-13 20:35:44 +02:00
main.c linux-user: Clean up arg_start/arg_end confusion 2022-05-23 08:15:19 +02:00
meson.build user: move common-user includes to a subdirectory of {bsd,linux}-user/ 2022-01-12 14:08:29 +01:00
mmap.c linux-user: Expand log_page_dump inline 2022-04-20 10:51:11 -07:00
qemu.h linux-user: Clean up arg_start/arg_end confusion 2022-05-23 08:15:19 +02:00
semihost.c linux-user: Split linux-user internals out of qemu.h 2021-09-13 20:35:45 +02:00
signal-common.h linux-user: Split out helpers for sigsuspend 2022-03-22 13:06:21 +01:00
signal.c compiler.h: replace QEMU_NORETURN with G_NORETURN 2022-04-21 17:03:51 +04:00
socket.h Supply missing header guards 2019-06-12 13:20:21 +02:00
strace.c e2k: Impl e2k_longjmp2 syscall. 2022-06-10 11:48:16 +03:00
strace.h linux-user: Have do_syscall() use CPUArchState* instead of void* 2022-05-23 22:47:19 +02:00
strace.list e2k: Impl e2k_longjmp2 syscall. 2022-06-10 11:48:16 +03:00
syscall.c e2k: Delete top CRs from cpu state. 2022-06-10 11:48:19 +03:00
syscall_defs.h linux-user: e2k: add forgotten e2k-specific mmap flags, fix some definitions 2022-06-10 11:48:16 +03:00
syscall_types.h linux-user: implement more loop ioctls 2021-11-29 14:54:17 +01:00
target_flat.h Supply missing header guards 2019-06-12 13:20:21 +02:00
thunk.c linux-user: Move thunk.c from top-level 2021-12-20 10:12:29 -08:00
trace-events linux-user: Rename user_force_sig tracepoint to match function name 2022-01-18 12:41:42 +01:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
uaccess.c linux-user: Split linux-user internals out of qemu.h 2021-09-13 20:35:45 +02:00
uname.c linux-user: Remove pointless CPU{ARCH}State casts 2022-05-23 22:47:20 +02:00
uname.h linux-user: Have do_syscall() use CPUArchState* instead of void* 2022-05-23 22:47:19 +02:00
user-internals.h linux-user: Remove pointless CPU{ARCH}State casts 2022-05-23 22:47:20 +02:00
user-mmap.h linux-user: Split mmap prototypes into user-mmap.h 2021-09-13 20:35:45 +02:00
vm86.c linux-user: Split linux-user internals out of qemu.h 2021-09-13 20:35:45 +02:00