https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94646

            Bug ID: 94646
           Summary: [arm] invalid codegen for conversion from 64-bit int
                    to double hardfloat
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: bugdal at aerifal dot cx
  Target Milestone: ---

GCC emits a call to __aeabi_l2d to convert from long long to double. This is
invalid for hardfloat ABI because it does not honor rounding modes or raise
exception flags. That in turn causes the implementation of fma in musl libc to
produce wrong results for non-default rounding modes.

Reply via email to