https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107370
--- Comment #3 from jacob navia <jacob at jacob dot remcomp.fr> --- 1 trunk gcc: 2 .LC1: 3 .word 325511829 # 0x1366EA95 <<<--- SHOULD BE 325508205 4 .word -922176773 # 0xC908B2FB OK 5 .word -429395012 # 0xE667F3BC OK 6 .word 1073703433 # 0x3FFF6A09 OK This data is wrong, I repeat, the first number (line 3) should be 325508205 or 0x1366DC6D. It CAN'T be a printf issue because when you use my "nsqrt" function IT PRINTS CORRECTLY. THEN printf is able to print correctly when the input is correct. The sqrtl function under ARM 64 bits produces only double precision, instead of quadruple precision. That's all I am saying. And the intention here (from my side) is to help you correct this problem, not to minimize the quality of gcc, a great software! jacob