有効な NEON コンパイラライセンスに基づいて、RVCT 3.1 以降および ARM コンパイラ 4.1 を使用する必要があります。ARM コンパイラ 5.01 以降では、別の NEON コンパイラライセンスは必要ありません。
C または C++ コードから NEON 命令を生成するには、以下のコンパイラオプションを指定する必要があります。
-
--cpu
。NEON に対応するターゲットを示します(たとえば、Cortex-A7、Cortex-A8、Cortex-A9、Cortex-A12、または Cortex-A15)。
-
--vectorize
。NEON ベクトル化を有効にします。
-
-O2
(デフォルト)または -O3
。最適化レベルを示します。
-
-Otime
。コードサイズの代わりにパフォーマンスを最適化します。
また、--diag_warning=optimizations
を使用して、最適化またはベクトル化できた(またはできなかった)部分に関する診断をコンパイラから取得できます。以下に例を示します。
armcc --cpu Cortex-A8 --vectorize -O3 -Otime --diag_warning=optimizations source.c
注
NEON 命令を含んでいるコードを実行するには、FPU および NEON の両方を有効にする必要があります。