Zhou Zhifa
|
10400e30ba
|
mips: Fix argument passing for inlined syscalls on Linux [BZ #25523]
According to [gcc documentation][1], temporary variables must be used for
the desired content to not be call-clobbered.
Fix the Linux inline syscall templates by adding temporary variables,
much like what x86 did before
(commit 381a0c26d73e0f074c962e0ab53b99a6c327066d).
[1]: https://gcc.gnu.org/onlinedocs/gcc/Local-Register-Variables.html
Reference:
https://savannah.gnu.org/bugs/index.php?57781
https://bugs.gentoo.org/708758
https://sourceware.org/bugzilla/show_bug.cgi?id=25523
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4fbba6fe904d0094ddc4284066b3860d119cbd4a
https://sourceware.org/legacy-ml/libc-alpha/2020-02/msg00206.html
https://gcc.gnu.org/onlinedocs/gcc/Local-Register-Variables.html
Signed-off-by: Zhou Zhifa <zhou.zhifa@h3c.com>
|
2023-07-17 08:22:58 +00:00 |
|