diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2020-02-10 10:32:14 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2020-02-14 21:09:12 -0300 |
commit | be74b42ee2a97009a6cd4fc90126add4a41c583b (patch) | |
tree | abd877a414bb54d794737f7a55bd8270b07ee83b /sysdeps/unix/sysv/linux/microblaze/sys | |
parent | 6cc8fc7c1506e8084d65b078ff5b05a92e17a28a (diff) | |
download | glibc-be74b42ee2a97009a6cd4fc90126add4a41c583b.tar.gz glibc-be74b42ee2a97009a6cd4fc90126add4a41c583b.tar.xz glibc-be74b42ee2a97009a6cd4fc90126add4a41c583b.zip |
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.
Diffstat (limited to 'sysdeps/unix/sysv/linux/microblaze/sys')
0 files changed, 0 insertions, 0 deletions