Re: Bootstrapping Debian GNU/Linux distribution on SuperH
Thanks for your attention. I'd like to express my thanks to your
continuous efforts for Debian SuperH, too. The (cross) bootstrap of
Debian SuperH is dedicated to you. :-)
ISHIKAWA Mutsumi wrote:
> But ABI level incompatibility does exist between SH3 binary and SH4
> binary, so binary for SH3 can not run on SH4 binary environmet.
> Of cause little endien and big endian incompatibility does exists.
For endian, it is obvious that ABI is different.
For the difference between SH3 and SH4, it's somewhat complicated. I
thought that SH4's ABI were backward compatible. Actually, almost all
existing binaries for SH3 work fine on SH4. You know, you can run
current Debian "sh-linux" on SH4.
However, according to Hitachi, the ABI is different between SH3 and
SH4. Please check out programming manuals of SH3 and SH4.
Instruction set are backward compatible. However, some instructions
are allowed in delay-slot for SH3 but not for SH4. I mean, if someone
tunes a program for SH3 pipeline, it may not work on SH4. It's easy
to write such program, if people use assembler. Current GCC does not
emit such a code (this is the reason why almost all code work fine).
But it's free to do so in future GCC, because the definition of ABI is
SH4 kernel could emulate such cases, in theory. We've discussed this
issue, but it found that it's quite hard...
> So, 4 separated binary arcitecture tree?
> binary-sh3, binary-sh4, binary-sh3eb and binary-sh4eb
> Is it true?