qadd
コマンドを使用してインラインアセンブリをコンパイルしようとするとエラーが発生しました。
エラー:幅のサフィックスを尊重できません-`qadd r7、r7、r1 '
ARMv5TEqadd
でサポートされ ていることを知っています
これらのARM命令は、ARMv6以降、およびARMv5TのEバリアントで使用できます。
C / asmコード:
inline int __qadd(int a, int b) {
__asm__ (
"qadd %0, %1, %2" : "=r" (a) : "r" (a), "r" (b));
return a;
}
私のCPU機能は次のとおりです。
LOGI("__ARM_ARCH__='%d'", __ARM_ARCH__);
LOGI("__ARM_HAVE_5TE='%d'", __ARM_HAVE_5TE);
出力:
__ARM_ARCH __ = '5'
__ARM_HAVE_5TE = '1'
次のコンパイラフラグがあります:
LOCAL_CFLAGS + = -std = c99 -ffast-math -march = armv5te
その上、私はadd
代わりに置換を試みましたqadd
-うまく機能しますが、qadd
コードはコンパイルされません。
私が間違っているのは何ですか?アセンブリでqaddコマンドの実例を提供できるのは誰ですか?