Sir, My name is Ajmal A. I was compiling a program with neon intrinsics for arm cortex A-8. When I examined the output code, I observed that, among the available 32 d-registers of neon, the program uses only those from d16 (either if it's used as double word registers or quad word registers). And another problem is with the vld instructions. For vld instruction, it always uses the registers d16, d17, .... Even if there are free registers like d26,d27, etc it pushes the contents of the registers d16, d17,... to the stack. I am using gcc 4.4.0, compiled using android-ndk-r4. For compiling I used the following command: /home/master/ajmal/ndk/build/ prebuilt/linux-x86/arm-eabi-4.4.0/bin/arm-eabi-gcc -I/home/master/ajmal/ndk/build/platforms/android-3/arch-arm/usr/include -fpic -mthumb-interwork -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -Wno-psabi -march=armv7-a -mfloat-abi=softfp -mthumb -Os -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -mfpu=neon -I/home/master/ajmal/ndk/sources/cpufeatures -I/home/master/ajmal/ndk/samples/hello-neon/jni -DANDROID -DHAVE_NEON=1 -Wa,--noexecstack -O3 -DNDEBUG -g -c -MMD -MP -MF /home/master/ajmal/ndk/samples/hello-neon/bin/ndk/local/armeabi-v7a/objs/helloneon/$1.o.d /home/master/ajmal/ndk/samples/hello-neon/jni/$1.c -o /home/master/ajmal/ndk/samples/hello-neon/bin/ndk/local/armeabi-v7a/objs/helloneon/$1.o where $1 is the filename without the extension. I have tried the latest version of gcc (4.5.0) also, with no better results. Can you please tell me if there is a special reason for not using the other d registers, or for the stack operations. I have gone through the gcc manuals and some files gcc sources, but I couldn't clarify the doubt. (My language proficiency is not so good, and this is the first time I am writing an e-mail for such an authority. I am sorry for any mistakes due to them). Thank you in advance. Ajmal. A