glibc/sysdeps/unix/sysv/linux/riscv
Adhemerval Zanella 74d9b0811e riscv: Avoid clobbering register parameters in syscall
The riscv INTERNAL_SYSCALL macro might clobber the register
parameter if the argument itself might clobber any register (a function
call for instance).

This patch fixes it by using temporary variables for the expressions
between the register assignments (as indicated by GCC documentation,
6.47.5.2 Specifying Registers for Local Variables).

It is similar to the fix done for MIPS (bug 25523).

Checked with riscv64-linux-gnu-rv64imafdc-lp64d build.

(cherry picked from commit be74b42ee2)
2020-02-16 15:16:50 +01:00
..
bits Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
rv64 nptl: Add POSIX-proposed pthread_mutex_clocklock 2019-07-12 13:36:25 +00:00
sys Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
Implies RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
Makefile RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
Versions RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
atomic-machine.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
clone.S RISC-V: Fix elfutils testsuite unwind failures. 2019-02-13 14:25:00 -08:00
configure RISC-V: Fix `test' operand error with soft-float ABI being configured 2019-03-30 01:11:31 +00:00
configure.ac RISC-V: Fix `test' operand error with soft-float ABI being configured 2019-03-30 01:11:31 +00:00
dl-cache.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
dl-static.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
flush-icache.c riscv: Do not use __has_include__ 2019-06-06 11:24:32 +02:00
getcontext.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
init-first.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ipc_priv.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
kernel-features.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ldconfig.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ldd-rewrite.sed RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
ldsodefs.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
libc-vdso.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
localplt.data RISC-V: Add ABI Lists 2018-01-29 10:37:28 -08:00
makecontext.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
profil-counter.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
readelflib.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
register-dump.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
setcontext.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
shlib-versions RISC-V: Build Infastructure 2018-01-29 10:43:15 -08:00
sigcontextinfo.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
swapcontext.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
syscall.c Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
sysdep.S Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
sysdep.h riscv: Avoid clobbering register parameters in syscall 2020-02-16 15:16:50 +01:00
ucontext-macros.h Update copyright dates with scripts/update-copyrights. 2019-01-01 00:11:28 +00:00
ucontext_i.sym RISC-V: Linux ABI 2018-01-29 10:37:27 -08:00
vfork.S Fix RISC-V vfork build with Linux 5.3 kernel headers. 2019-09-20 21:28:34 +02:00