Cross-Compiler ProblemsContents|Index|Previous|Next Cross-compiler
problems You may run into problems
with cross compilation on certain machines, for several reasons.
Cross compilation can run into
trouble for certain machines because some assemblers on some target machines
require floating point numbers to be written as integer constants
in certain contexts.
The compiler writes these integer
constants by examining the floating point value as an integer and printing
that integer, because this is simple to write and independent of the details
of the floating point representation. But this does not work if the compiler
is running on a different machine with an incompatible floating point format,
or even a different byte-ordering.
In addition, correct constant
folding of floating point values requires representing them in the target
machine’s format. (The C standard does not quite require this, but in practice
it is the only way to win.)