2
プロジェクトの1つでは、NEONを使用して計算を最適化するファイルをARMアセンブリで作成しています。私はまた、現在、私はちょうどアセンブリで定義されているC関数をコメントアウトし、ちょうどCファイルにiOSデバイスの場合はARMアセンブリファイルをコンパイルするか、iOSシミュレータの場合は通常のCを使用するかを選択する方法
extern void myFunction();
を追加し、それがCで書かれていることを除いてまったく同じことを行い、ファイルを持っています。私は何をしたいのはCファイルに
#ifdef device
extern void myFunction();
#else
void myFunction() {
/* code here */
}
#endif
これを持っている私はまた、ARMアセンブリにプリプロセッサディレクティブを行う方法がわからないのアセンブリファイル内で似たようなしかし、イムが必要になります。
これをすべてまとめて、私がどのデバイスをビルドしているか、そしてプリプロセッサディレクティブをアセンブリで使用する方法を教えてくれるプリプロセッサ定義を探しています。あなたのアセンブリファイルで
#if defined __arm__
extern void myFunction();
#else
void myFunction() {
/* code here */
}
#endif
:
#if defined __arm__
/* code here */
#endif
(Xcodeのは、同様にファイルを.SするためにCプリプロセッサを適用する)あなたのCファイルで
ありがとうございました!前と同じようなことがありましたが、プリプロセッサの定義TARGET_IPHONE_SIMULATORはアセンブリファイルでは使用できませんでしたが、__arm__はそのために破棄されました。 –