Created attachment 125901 [details] test case With the attached test case I get: $ gcc -o mac mac.c && ./mac 4.99997e-41 4.99994e-321 It should print (approximately) 1e-40 and 1e-320, so these results are too small by a factor of two. I'm doing this on a Raspberry Pi with an old-ish kernel, but I believe the bug is still present in later kernel versions.
Created attachment 125911 [details] proposed fix
Created attachment 125921 [details] fixed test case