|
From: Paul F. <pa...@so...> - 2025-11-05 08:21:54
|
https://sourceware.org/cgit/valgrind/commit/?id=9d9a20925bf33157025aaca5ac048ac6adf3761f commit 9d9a20925bf33157025aaca5ac048ac6adf3761f Author: Paul Floyd <pj...@wa...> Date: Wed Nov 5 09:20:44 2025 +0100 FreeBSD arm64: reverse normal syscall and syscall syscall args Copied and pasted in the wrong order. Diff: --- coregrind/m_syswrap/syswrap-main.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/coregrind/m_syswrap/syswrap-main.c b/coregrind/m_syswrap/syswrap-main.c index ac2f161ec9..45ece95cbf 100644 --- a/coregrind/m_syswrap/syswrap-main.c +++ b/coregrind/m_syswrap/syswrap-main.c @@ -1923,6 +1923,17 @@ void getSyscallArgLayout ( /*OUT*/SyscallArgLayout* layout, /*IN*/Bool syscall_s #elif defined(VGP_arm64_freebsd) if (syscall_syscall) + { + layout->o_sysno = OFFSET_arm64_X0; + layout->o_arg1 = OFFSET_arm64_X1; + layout->o_arg2 = OFFSET_arm64_X2; + layout->o_arg3 = OFFSET_arm64_X3; + layout->o_arg4 = OFFSET_arm64_X4; + layout->o_arg5 = OFFSET_arm64_X5; + layout->o_arg6 = OFFSET_arm64_X6; + layout->o_arg7 = OFFSET_arm64_X7; + } + else { layout->o_sysno = OFFSET_arm64_X8; layout->o_arg1 = OFFSET_arm64_X0; @@ -1934,17 +1945,6 @@ void getSyscallArgLayout ( /*OUT*/SyscallArgLayout* layout, /*IN*/Bool syscall_s layout->o_arg7 = OFFSET_arm64_X6; layout->o_arg8 = OFFSET_arm64_X7; } - else - { - layout->o_sysno = OFFSET_arm64_X0; - layout->o_arg1 = OFFSET_arm64_X1; - layout->o_arg2 = OFFSET_arm64_X2; - layout->o_arg3 = OFFSET_arm64_X3; - layout->o_arg4 = OFFSET_arm64_X4; - layout->o_arg5 = OFFSET_arm64_X5; - layout->o_arg6 = OFFSET_arm64_X6; - layout->o_arg7 = OFFSET_arm64_X7; - } #elif defined(VGP_arm_linux) layout->o_sysno = OFFSET_arm_R7; |