Fabian Schriever writes: > Add the missing mask for the decomposition of hi+lo which caused some > errors of 1-2 ULP. > - SET_FLOAT_WORD(t1,ha+0x00800000L); > + SET_FLOAT_WORD(t1,(ha+0x00800000L)&0xfffff000UL); Looks correct to me. I note that glibc has switched to using double for float paths, so there's no comparable code there. -- -keith