title: GCC -mthumb against -marm
body: <p>I am working on performance optimizations of ARM C/C++ code, compiled with GCC. CPU is Tegra 3.
  As I know flags <code>-mthumb</code> means generating old 16-bit Thumb instructions. On different tests, I have 10-15% performance increase with <code>-marm</code> against <code>-mthumb</code>.</p>
  
  <p>Is <code>-mthumb</code> used only for compatibility and for performance, while <code>-marm</code> is generally better?
  I am asking because android-cmake used <code>-mthumb</code> in Release mode and <code>-marm</code> in Debug. This is very confusing for me.</p>