1

Xcode で、呼び出した NEON 命令ごとに「bad instruction」というエラーが発生するコード ベースがあります。基本的にNEONは検出されないようです。

静的ライブラリを構築しようとしています。新しいプロジェクトに移動し、Cocoa Touch Static Library を選択して、既存のファイルを追加しました。

私が読んでいるものはすべて、NEONがすでに有効になっている必要があることを示しています。armv6 への参照をすべて削除し、iOS 5.1 をターゲットにしています

また、問題のコードはすべて、「.s」ファイルで定義されたルーチン (純粋なアセンブリ) として含まれています。組み込みメソッド呼び出しを使用していません。これは、コードを実行しようとするたびに発生するエラーです。

unknown directive .fpu neon
Command /Applications/Xcode.app/Contents/Developer/Toolchains/
XcodeDefault.xctoolchain /usr/bin/clang failed with exit code 1

また、コードから .fpu ネオン コマンドを削除すると、コンパイルされて .o ファイルが取得されますが、コード ファイルで定義されたプログラムをまだ使用できないため、リンクに失敗します。

4

1 に答える 1

0

私の同様の質問の答えを試してください https://stackoverflow.com/a/10507325/571778

私の場合、並べ替えの答えは、別のコンパイラからアセンブリを移植していたということでした。いくつかのポイント:

  • Xcode にはすべて小文字の命令が必要です
  • 疑似操作は異なります ( http://www.shervinemami.info/armAssembly.html#templateを試してください)
  • アセンブリ関数名は「_」で始める必要があります。これは、リンカーがそれらを見つける方法だからです (C では「foo()」を呼び出しますが、ASM では関数に「_foo」という名前を付けます)。
于 2012-12-17T07:03:03.920 に答える