Ensuring that emms is issued before every single libc function call is likely problematic. What if we simply document the requirement that C standard library functions are assumed to not modify the x87 FPU state unless specifically designated to handle floating-point numbers?