[Bug target/91970] arm: 64bit int to double conversion does not respect rounding mode

joseph at codesourcery dot com gcc-bugzilla@gcc.gnu.org
Mon Oct 7 21:52:00 GMT 2019


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

--- Comment #8 from joseph at codesourcery dot com <joseph at codesourcery dot com> ---
The code snippet you posted looks like exactly what libgcc2.c would 
typically do for __floatundidf.  Given that, I'd prefer building the 
relevant function from libgcc2.c rather than having an Arm-specific 
duplicate.

  /* When the word size is small, we never get any rounding error.  */
  FSTYPE f = (UWtype) (u >> W_TYPE_SIZE);
  f *= Wtype_MAXp1_F;
  f += (UWtype)u;
  return f;


More information about the Gcc-bugs mailing list