In armeabi-v7a, VM still expects JNI functions to follow soft-abi. Annotate it with __NDK_FPABI__ so compiler follows soft-abi in JNI functions regardless the presence of -mhard-float in command-line. It's up to developer to apply JNICALL consistently on JNI functions, ie. those functions whose first arg has type "JNIEnv*" is likely to be Change-Id: Ica7cca8ab9498ce00de6ffc7fff35f8cc13aedbf