I don't see why the requirement for a "native compiler" is anything
    stronger than "a binary that runs on this machine".

I "native" compiler is defined as one where host==target.  Anything else
is something we call a "cross-compiler".

    Only if you assume a "cross" compiler and a true native compiler
    generate different code. I certainly hope that isn't the case.

Why not?  It's a pretty strong statement to assume they generate *exactly* the
same code under all circumstances and it seems unnecessary.  All we require
is that they both generate *correct* code.  It's perfectly reasonable for the
optimizers to behave slightly differently in host and cross configurations,
such as in what they fold.  Clearly, it's advantageous to minimize these
differences, and we do that, but I think having to reduce them to zero
is too strong a requirement, especially since it's so easy to avoid
starting a bootstrap with a cross-compiler.

Reply via email to