次のARMNEON組み込み関数テストコードをコンパイルしています(Android NDKを使用したEclipseで)。
void foo(uint64_t* Res)
{
uint64_t x = 0xff12aa8902acf78dULL;
uint64x1_t a,b;
a = vld1_u64 (&x);
b = vext_u64 (a, a, 3);
vst1_u64 (Res,b);
}
しかし、私は次のコンパイラエラーを受け取り続けます:
/home/developer/adt/ndk/ndk-build all
Install : libneon_test.so => libs/armeabi/libneon_test.so
Compile thumb : neon_test <= neon.c
jni/neon.c: In function 'foo':
jni/neon.c:17:1: error: constant out of range
make: *** [obj/local/armeabi-v7a/objs/neon_test/neon.o] Error 1`
17行目はの最後の}
中括弧ですfoo()
。
この奇妙なエラーの原因が何であるかを誰かが知っていますか?