[PATCH] gold: don't invoke IA32 syscall in x86_64 assembly testcase

Xi Ruoyao xry111@mengyan1223.wang
Thu Mar 31 10:21:16 GMT 2022


Ping?

On Sat, 2022-03-12 at 22:21 +0800, Xi Ruoyao wrote:
> pr17704a_test.s is a x86_64 assembly file, but it invokes IA32 exit
> syscall with "int 0x80".  This causes a segfault on kernels with
> CONFIG_IA32_EMULATION disabled.
> 
> gold/
> 
>         * testsuite/pr17704a_test.s (_start): Invoke x86_64 exit syscall
>         instead of its IA32 counterpart.
> ---
>  gold/testsuite/pr17704a_test.s | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/gold/testsuite/pr17704a_test.s b/gold/testsuite/pr17704a_test.s
> index 2b39e649f9e..8a645496faf 100644
> --- a/gold/testsuite/pr17704a_test.s
> +++ b/gold/testsuite/pr17704a_test.s
> @@ -14,10 +14,10 @@ _start:
>         leaq    bar(%rip), %rsi
>         testb   $1, %sil
>         je      .L9
> -       mov $1, %eax
> -       mov $1, %ebx
> -       int $0x80
> +       mov $60, %rax
> +       mov $1, %rdi
> +       syscall
>  .L9:
> -       mov $1, %eax
> -       mov $0, %ebx
> -       int $0x80
> +       mov $60, %rax
> +       mov $0, %rdi
> +       syscall

-- 
Xi Ruoyao <xry111@mengyan1223.wang>
School of Aerospace Science and Technology, Xidian University


More information about the Binutils mailing list