As rob said, this is incorrect. The code is almost totally binary compatible. There are many ARMs apart from the StrongARM which are in the 200MHz area now (eg, ARM9 core based units).

We run the same binaries on ARMv4 (ARM7TDMI) CPUs as the strongarm; there are different optimisations you can do for each architecture, but the binaries run fine without modification.

The same is true for the Xscale (StrongARM2). It adds instructions which aren't backwards compatible, but if you're not using them the binaries will work (much the same as MMX extensions on x86). There are differences in CPU setup (caches, etc) but this is generally only at linux kernel level - user programs never get to see the differences.

Hugo