mirror of https://gitee.com/openkylin/qemu.git
linux-user: Fix register used for 6th and 7th syscall argument on aarch64
This unbreaks the testcase from http://lists.nongnu.org/archive/html/qemu-arm/2018-01/msg00514.html Thanks to Laurent Vivier for spotting the 7th one. Signed-off-by: Guido Günther <agx@sigxcpu.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Suggested-by: Laurent Vivier <laurent@vivier.eu> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <671eaa99f4e0bf3a58f76f9151f7cfa24662227f.1517565566.git.agx@sigxcpu.org> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
parent
2b74f621f1
commit
2c418853b9
|
@ -36,7 +36,7 @@ safe_syscall_base:
|
|||
* and return the result in x0
|
||||
* and the syscall instruction needs
|
||||
* x8 == syscall number
|
||||
* x0 ... x7 == syscall arguments
|
||||
* x0 ... x6 == syscall arguments
|
||||
* and returns the result in x0
|
||||
* Shuffle everything around appropriately.
|
||||
*/
|
||||
|
@ -47,8 +47,8 @@ safe_syscall_base:
|
|||
mov x2, x4
|
||||
mov x3, x5
|
||||
mov x4, x6
|
||||
mov x6, x7
|
||||
ldr x7, [sp]
|
||||
mov x5, x7
|
||||
ldr x6, [sp]
|
||||
|
||||
/* This next sequence of code works in conjunction with the
|
||||
* rewind_if_safe_syscall_function(). If a signal is taken
|
||||
|
|
Loading…
Reference in New Issue