Was sind die Unterschiede zwischen dem ARM Compiler und dem GCC?

ARM Compiler: Durch die Kombination von mikroarchitektur-spezifischer Befehlsplanung, Optimierungsstrategien für das gesamte Programm und fein abgestimmten Bibliotheken beschleunigt der Arm Compiler die Ausführungszeit bei einer Vielzahl von Workloads erheblich. In einigen großen industriellen und automobilen Codestrukturen beträgt der Leistungszuwachs gegenüber der vorherigen Generation sogar mehr als 30 Prozent. Dies ist das Ergebnis unserer umfassenden Optimierungsinvestitionen, die auf komplexen und realistischen eingebetteten Code abzielen, im Gegensatz zur Konzentration auf einen einzigen kleinen CPU-Benchmark.

Bei den GNU-Compilern handelt es sich um hochgradig optimierende Compiler, die sowohl die Sprachen C als auch C++ unterstützen. Der GNU C Compiler (gcc) unterstützt die Sprache C, während der GNU C++ Compiler (G++) die Sprache C++ unterstützt. Es gibt also eigentlich zwei GNU-Compiler in der Toolchain, nicht nur einen. Die GNU C/C++ Compiler verfügen über eine Reihe von Erweiterungen, die sie für die Entwicklung eingebetteter Systeme besonders geeignet machen. Dazu gehören die feinkörnige Steuerung über viele Befehlszeilenoptionen, Inline-Assembler und Compiler #pragmas, mit denen das Verhalten des Compilers sehr detailliert gesteuert werden kann. Darüber hinaus bieten die GNU-Compiler umfangreiche Unterstützung für eine große Anzahl von Zielprozessoren und Sprachdialektstandards.