Во-первых, совет не компилировать для набора команд Thumb для улучшения производительности с плавающей запятой действительно применим только к старым устройствам ARMv6.
Аппаратное обеспечение ARMv7 (iPhone 3G S и новее, включая все iPad) использует более эффективный набор команд Thumb-2, который не страдает от такого же замедления с плавающей запятой. Для сборок ARMv7 рекомендуется почти во всех случаях, которые вы собираете для Thumb. Я предоставлю немного больше информации об этом в моем ответе здесь .
Возможно, именно поэтому этот параметр компилятора более не представлен как общий вариант, поскольку устройства ARMv7 составляют подавляющее большинство устройств iOS.
Если вы хотите сделать это только для ваших сборок ARMv6, вы можете перейти к настройкам сборки и навести курсор мыши на опцию «Другие флаги C». Нажмите на маленькую кнопку с плюсом, которая появляется справа от этой опции, и добавьте условие для архитектуры ARMv6. Сделайте это снова, чтобы создать один для архитектуры ARMv7. Под архитектурой ARMv6 добавьте дополнительный флаг компилятора -mno-thumb
(как предлагает Кевин).
В итоге вы должны получить что-то похожее на следующее:
Я делаю это в одном из моих приложений, потому что я видел повышение производительности на старых устройствах ARMv6 с этим. Однако, другое из моих приложений было медленнее, когда не собиралось для Thumb на ARMv6, так что вам нужно сначала профилировать это.
Кроме того, в настоящее время есть ошибка в LLVM Compiler 3.0, которая поставляется с Xcode 4.2 (который с тех пор был исправлен в 4.2.1, насколько я слышал), где вычисления с плавающей запятой компилируются неправильно в Большой палец для ARMv6. Если вы используете именно эту версию XCode, вам нужно сделать это для правильного поведения на старых устройствах.