Hi,
I think that compiler differences cannot be made on base of syntetic tests pefrormed on different (although similar) platforms. This is because each serious Cortex-M implementation has various speed-up techniquest (flash wait states, cach for flash, look-ahead jump buffers etc). Also compilers are constantly improving. That's why compiler vendors let you evaluate the compiler and you can see how code compiler by each compiler "behaves".
Since this topic evolved into JTAG tools capability, so let me address it.
On-bord JTAG tools are not designed to be high speed devices, but are designed to let you play with eval boards.
As far as JTAG emulation speed I've meansured the following using JTAGjet emulator on Kinetis K60 board.
Chameleon debugger was used to measure it, but similar performance may be achieved using drivers for other debuggers.
10MHz JTAG speed (default):
Write to ram : 522Kbytes/sec
Steps/second: 39
Flashing 512KB: 5.2sec (includes erasing)
30MHz JTAG speed (default):
Write to ram : 892Kbytes/sec
Steps/second: 47
Flashing 512KB: 4.8sec (includes erasing)
In addition to support for Cortex-M4, all iMX ARM-based processors are supported.
See here for list of supported CPUs:
www.signum.com/freescale.htm
Regards,
Robert