qemu/linux-user/riscv
Kito Cheng 5836c3ecce
RISC-V: linux-user support for RVE ABI
This change checks elf_flags for EF_RISCV_RVE and if
present uses the RVE linux syscall ABI which uses t0
for the syscall number instead of a7.

Warn and exit if a non-RVE ABI binary is run on a
cpu with the RVE extension as it is incompatible.

Cc: Palmer Dabbelt <palmer@sifive.com>
Cc: Sagar Karandikar <sagark@eecs.berkeley.edu>
Cc: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
Cc: Alistair Francis <Alistair.Francis@wdc.com>
Co-authored-by: Kito Cheng <kito.cheng@gmail.com>
Co-authored-by: Michael Clark <mjc@sifive.com>
Signed-off-by: Michael Clark <mjc@sifive.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
2019-03-19 05:14:39 -07:00
..
cpu_loop.c RISC-V: linux-user support for RVE ABI 2019-03-19 05:14:39 -07:00
signal.c RISC-V: Use riscv prefix consistently on cpu helpers 2019-02-11 15:56:21 -08:00
sockbits.h linux-user: move socket.h generic definitions to generic/sockbits.h 2018-05-25 10:10:55 +02:00
syscall_nr.h RISC-V Linux User Emulation 2018-03-07 08:30:28 +13:00
target_cpu.h linux-user: move get_sp_from_cpustate() to target_cpu.h 2018-06-04 01:30:44 +02:00
target_elf.h RISC-V Linux User Emulation 2018-03-07 08:30:28 +13:00
target_fcntl.h linux-user: move generic fcntl definitions to generic/fcntl.h 2018-06-04 01:30:43 +02:00
target_signal.h linux-user: move generic signal definitions to generic/signal.h 2018-06-04 01:30:44 +02:00
target_structs.h RISC-V Linux User Emulation 2018-03-07 08:30:28 +13:00
target_syscall.h linux-user: set minimum uname for RISC-V 2018-04-30 09:47:46 +02:00
termbits.h RISC-V Linux User Emulation 2018-03-07 08:30:28 +13:00