• arm64, valgrind floating point instruction produces different result

    From =?UTF-8?Q?Bernhard_=C3=9Cbelacker?=@21:1/5 to All on Wed Jun 26 21:10:01 2024
    Hello list,
    I was trying to do some debugging in bug [1071656].

    But for some reason I receive with arm64
    in a process running with valgrind
    and one without valgrind different results
    from the following floating point instruction:

    => 0xaaaaaaaa4948 <ConvertToRational+104>: fcvtas w5, d8


    With plain GDB:
    (gdb) print $w5
    $2 = 323


    With valgrind+GDB:
    (gdb) print $w5
    $2 = 322


    And therefore the CI run fails and led to this bug [1071656] (at least with arm64).
    I was trying this first in a qemu arm64 VM on amd64,
    but could observe this on real arm64 hardware too.

    Is there some knowledge about such an issue, or how to avoid this?


    Kind regards,
    Bernhard

    [1071656] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1071656

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)