> So my next question is what support is there in the various formats, > technologies and runtime libraries to provide a backwards compatible > solution, such that a binary from one system when put on another can > have any hardware incompatibilities detected at the soonest opportunity, > for example upon execution, soon after execution, during DSO loading:
You can configure GCC to default to whatever ISA you like. Unless you (the person building GCC) specified otherwise, it will usually choose something fairly conservative. If you have been given a toolchain or binaries that is not suitable for you system, then that is something you should probably take up with whoever supplied them. My understanding is that glibc has limited facilites for picking different set of libraries at runtime, but will not disgnose mismatches in a graceful fasion. Either way this is probably an assembler/linker problem rather than a compiler problem. GNU as/ld do support thin kind of object file annotation, though the level of support varies between targets. Paul