現在、DSP 関連のコードを Shark で最適化しようとしていますが、浮動小数点から整数への変換に多くの時間を費やしていることがわかりました。
SInt16 nextInt = nextFloat * 32768.0f + 0.5f;
iPhone には ARM11 FP コプロセッサが搭載されているように見えるので、コードを FTOSI 命令に置き換えることができないかと考えています。ARM Web サイトで入手できるドキュメントがいくつかありますが、手動で最適化されたアセンブリをインライン化した経験はありません。誰かが前にそれをしたことがありますか?
コードをインライン化できると思います
__asm__ volatile
しかし、指示が利用可能かどうかを確認するにはどうすればよいですか?
どうすれば自分の値を渡すことができますか?
EDIT1: Louis が既に指摘したように、「Compile for Thumb」をオフにしてコンパイルしていることを忘れていました。
EDIT2: float を unsigned Int ではなく signed Int16 に変換したいので、ARM 命令を FTOUI から FTOSI に変更しました。これは元の投稿の間違いでした。