I have been excited by this post: https://stackoverflow.com/a/57674631/2492801 and I consider using -fno-math-errno
. But I would like to be sure that I do not harm the behaviour of the software I am working on.
Therefore I have checked the (rather large) codebase to see where errno
is being used and I wanted to decide whether these usages interfere with -fno-math-errno
. But how to do that? The documentation says:
-fno-math-errno
Do not set errno after calling math functions that are executed with a single instruction, e.g., sqrt...
But how can I know which math functions are executed with a single instruction? Is this documented somewhere? Where?
It seems as if the codebase I use relies on errno
especially when calling strtol
and when working with streams. I guess that strtol
is not executed with a single instruction. Is it considered to be a math function at all? How can I be sure?