Estoy trabajando en las optimizaciones del rendimiento del código ARM C/C++, compilado con GCC. La CPU es Tegra 3. Como sé banderas -mthumb significa generar viejas instrucciones de Thumb de 16 bits. En diferentes pruebas, tengo un 10-15% de aumento en el rendimiento con -marmo contra -mthumb.GCC -mthumb contra -marm
¿Se usa -mthumb solo para compatibilidad y rendimiento? ¿El mazo es mejor siempre? Lo estoy preguntando, porque android-cmake usó -mthumb en modo Release y -marm en Debug, eso es muy confuso para mí.
excelente respuesta. El Gameboy Advance tiene principalmente 16 bit, no cero estado de espera, los buses de datos y el rendimiento del pulgar era mucho mejor que ARM. el pulgar requiere más instrucciones que el brazo, por lo que es más lento en ese sentido. thumb2 es una extensión para pulgar, todavía tiene las instrucciones de pulgar, thumb2 utiliza las indefinidas anteriormente y muchas son instrucciones de 32 bits. –
Good nutshell Preguntas y respuestas – tniles09