Giter VIP home page Giter VIP logo

ne10's Introduction

README

What’s Ne10?

Ne10 is a library of common, useful functions that have been heavily optimised for ARM-based CPUs equipped with NEON SIMD capabilities. It provides consistent, well-tested behaviour, allowing for painless integration into a wide variety of applications. The library currently focuses primarily around math, signal processing, image processing, and physics functions.

Building CircleCI

Out of the box, Ne10 supports the Linux, Android, and iOS platforms. For instructions on building Ne10 for these platforms, please consult the build instructions in building.md. It is possible to use the library on other platforms (or, indeed, “without a platform”), however you may have to fiddle with some of the build configuration files.

Once Ne10 has been built, it can be linked against just like any other C library. To link C code against Ne10, for instance, the compiler must first be aware of Ne10's library and header files — those within build/modules/ and inc/. To do this, these files can be copied to the standard directories used by compilation tools by running make install, or by installing Ne10 from a package manager. Following this, you can simply include Ne10.h in your C code, and ask the compiler to link against the NE10 library (e.g. with -lNE10).

Documentation

Ne10’s official documentation is generated from doxygen annotations in the source code. As such, these documents can be generated locally from the codebase by running doxygen within the doc directory (producing results in doc/html), or viewed remotely as hosted copies available over the Internet.

We also have a handful of carefully prepared sample code snippets in the samples/ directory that outline how Ne10 can be used to accomplish a number of common tasks. These include example programs to perform the FFT, FIR, and matrix multiply operations.

Contributing

Ne10 welcomes and encourages external contributions of any and all forms. If you’ve found a bug or have a suggestion, please don’t hesitate to detail these in the official issue tracker. For those looking to get their hands dirty and contribute code (the best kind of contribution!), please see CONTRIBUTING.md for more details.

Quick Links

Call for Use Cases

Find Project Ne10 useful? You can help us justify spending more engineering resources on the project! Please email us, outlining how you are using the project in your applications.

Want us to help cross-promote your product using Ne10 at developer events? We’re also looking for Ne10 use cases to show at conferences and meetups.

ne10's People

Contributors

davidcunado-arm avatar dbutcher-arm avatar fangbao00 avatar giuliomoro avatar h6ah4i avatar hoijui avatar joesavage avatar kpet avatar kraj avatar matt68000 avatar mdupuy avatar phillip-wang avatar thughes avatar yangzhang avatar zhongweiy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ne10's Issues

Building on Eclipse

It would make life easier for Eclipse building, if assembler source files were all .S rather than .s

Programming on a PC

I'm still very new to programming for the Android. I'm on a PC and want to cross-compile (is that the right term?) the Ne10 library for use on my Nexus tablet. I have the Android SDK and NDK downloaded, and have built and ran simple "Hello world" type applications using C and NEON. Now, I want to use Ne10 to simplify building basic image processing apps in the Android SDK.

I'm so new to all this I can't figure out for the life of me how make a "toolchain" or a "config.cmake" file, or if I can even compile the library on a PC. Any help would be appreciated!

Tests missing?

cd build;

cmake -DGNULINUX_PLATFORM=ON -DCMAKE_INSTALL_PREFIX:PATH=/mnt/us/extensions/ne10/ -DNE10_BUILD_SHARED=ON -DNE10_BUILD_UNIT_TEST=on -DNE10_SMOKE_TEST=on -DNE10_REGRESSION_TEST=on -DNE10_PERFORMANCE_TEST=on ..

-- Warning: Did not find file Compiler/-ASM
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:

NE10_PERFORMANCE_TEST
NE10_REGRESSION_TEST

-- Build files have been written to: /usr/local/src/Ne10

I think I did that by the numbers... ???

Am I missing something or are the variables not being serviced?

PC as target platform

Hello, I was wondering if there is a straight forward way to compile Ne10 to work on x86 machines. I understand that neon instructions won't work but I'm guessing the C part should? We have our own minimalist math library (C++ vector and matrix classes) and we thought we could replace some parts entirely with functions from Ne10, rather than keeping our code for x86 and using Ne10 for Arms.

NE10.h include errors

Hello,

I'm trying to integrate NE10 into an application for Android. The version I downloaded was projectNe10-Ne10-v1.1.2-0-g75740a7.zip from the project ne10 website. I followed the instructions to create libNE10.a but am getting lots of errors when adding an #lnclude "NE10.h" to my code. From the release notes it says my version was LAST UPDATED ON: 9 / JAN / 2014. Are there some gcc flags I need to add for my project to allow this to compile? Or something wrong with the headers in the version I downloaded?

Here are the errors I get :
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 87 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 566 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1080 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 99 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1109 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 542 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1058 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 554 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1069 C/C++ Problem
expected declaration specifiers before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 75 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1170 C/C++ Problem
storage class specified for parameter 'ne10_abs_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1162 C/C++ Problem
storage class specified for parameter 'ne10_add_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 138 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 137 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1161 C/C++ Problem
storage class specified for parameter 'ne10_abs_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1160 C/C++ Problem
storage class specified for parameter 'ne10_add_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 136 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1181 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1173 C/C++ Problem
storage class specified for parameter 'ne10_add_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 150 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 149 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 654 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1172 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1171 C/C++ Problem
storage class specified for parameter 'ne10_add_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 148 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_physics.h /test/jni/test-jni/projectNE10/include line 113 C/C++ Problem
storage class specified for parameter 'ne10_add_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 123 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_physics.h /test/jni/test-jni/projectNE10/include line 104 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 111 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1120 C/C++ Problem
storage class specified for parameter 'ne10_abs_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 1159 C/C++ Problem
storage class specified for parameter 'ne10_add_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 135 C/C++ Problem
storage class specified for parameter 'ne10_add_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 126 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 125 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1131 C/C++ Problem
storage class specified for parameter 'ne10_add_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 124 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 690 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1223 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 720 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1235 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1192 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1184 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 161 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 666 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1183 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1182 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1195 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 678 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1194 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1193 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 775 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1307 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 787 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1318 C/C++ Problem
old-style parameter declarations in prototyped function definition NE10_math.h /test/jni/test-jni/projectNE10/include line 75 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 733 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1247 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 746 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1278 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 319 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1368 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 331 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1379 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 295 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 799 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1329 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 307 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1357 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 890 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1429 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 902 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1456 C/C++ Problem
make.exe: *** [obj/local/armeabi/objs/test-jni/Platform.o] Error 1 test C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1407 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 878 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1418 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 956 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 968 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 914 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1466 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 944 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1476 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 530 C/C++ Problem
storage class specified for parameter 'ne10_len_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1067 C/C++ Problem
storage class specified for parameter 'ne10_len_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1059 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1058 C/C++ Problem
storage class specified for parameter 'ne10_len_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1057 C/C++ Problem
storage class specified for parameter 'ne10_len_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1078 C/C++ Problem
storage class specified for parameter 'ne10_len_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1070 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1069 C/C++ Problem
storage class specified for parameter 'ne10_len_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1068 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1028 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1020 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec3f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 1019 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1018 C/C++ Problem
storage class specified for parameter 'ne10_len_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1056 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1031 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec4f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 1030 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1029 C/C++ Problem
storage class specified for parameter 'ne10_normalize_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1129 C/C++ Problem
storage class specified for parameter 'ne10_normalize_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1121 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1120 C/C++ Problem
storage class specified for parameter 'ne10_normalize_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1119 C/C++ Problem
storage class specified for parameter 'ne10_abs_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 1159 C/C++ Problem
storage class specified for parameter 'ne10_normalize_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1132 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1131 C/C++ Problem
storage class specified for parameter 'ne10_normalize_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1130 C/C++ Problem
storage class specified for parameter 'ne10_normalize_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1107 C/C++ Problem
storage class specified for parameter 'ne10_len_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1081 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1080 C/C++ Problem
storage class specified for parameter 'ne10_len_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1079 C/C++ Problem
storage class specified for parameter 'ne10_normalize_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1118 C/C++ Problem
storage class specified for parameter 'ne10_normalize_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1110 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1109 C/C++ Problem
storage class specified for parameter 'ne10_normalize_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1108 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1192 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1184 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1183 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1182 C/C++ Problem
storage class specified for parameter 'ne10_dot_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1221 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1195 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1194 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1193 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1170 C/C++ Problem
storage class specified for parameter 'ne10_abs_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1162 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1161 C/C++ Problem
storage class specified for parameter 'ne10_abs_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1160 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1181 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1173 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1172 C/C++ Problem
storage class specified for parameter 'ne10_abs_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1171 C/C++ Problem
storage class specified for parameter 'ne10_cross_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1276 C/C++ Problem
storage class specified for parameter 'ne10_dot_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1248 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1247 C/C++ Problem
storage class specified for parameter 'ne10_dot_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1246 C/C++ Problem
storage class specified for parameter 'ne10_detmat_4x4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1305 C/C++ Problem
storage class specified for parameter 'ne10_cross_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1279 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1278 C/C++ Problem
storage class specified for parameter 'ne10_cross_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1277 C/C++ Problem
storage class specified for parameter 'ne10_dot_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1233 C/C++ Problem
storage class specified for parameter 'ne10_dot_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1224 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1223 C/C++ Problem
storage class specified for parameter 'ne10_dot_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1222 C/C++ Problem
storage class specified for parameter 'ne10_dot_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1245 C/C++ Problem
storage class specified for parameter 'ne10_dot_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1236 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1235 C/C++ Problem
storage class specified for parameter 'ne10_dot_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1234 C/C++ Problem
storage class specified for parameter 'ne10_divc_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 828 C/C++ Problem
storage class specified for parameter 'ne10_mulcmatvec_cm2x2f_v2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 800 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 799 C/C++ Problem
storage class specified for parameter 'ne10_mulcmatvec_cm2x2f_v2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 798 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 840 C/C++ Problem
storage class specified for parameter 'ne10_divc_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 831 C/C++ Problem
storage class specified for parameter 'ne10_divc_float_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 830 C/C++ Problem
storage class specified for parameter 'ne10_divc_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 829 C/C++ Problem
storage class specified for parameter 'ne10_mulcmatvec_cm3x3f_v3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 785 C/C++ Problem
storage class specified for parameter 'ne10_mulcmatvec_cm4x4f_v4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 776 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 775 C/C++ Problem
storage class specified for parameter 'ne10_mulcmatvec_cm4x4f_v4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 774 C/C++ Problem
storage class specified for parameter 'ne10_mulcmatvec_cm2x2f_v2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 797 C/C++ Problem
storage class specified for parameter 'ne10_mulcmatvec_cm3x3f_v3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 788 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 787 C/C++ Problem
storage class specified for parameter 'ne10_mulcmatvec_cm3x3f_v3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 786 C/C++ Problem
storage class specified for parameter 'ne10_div_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 876 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 867 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec4f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 866 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 865 C/C++ Problem
storage class specified for parameter 'ne10_vdiv_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 888 C/C++ Problem
storage class specified for parameter 'ne10_div_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 879 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 878 C/C++ Problem
storage class specified for parameter 'ne10_div_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 877 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 852 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 843 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec2f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 842 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 841 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 864 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 855 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec3f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 854 C/C++ Problem
storage class specified for parameter 'ne10_divc_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 853 C/C++ Problem
storage class specified for parameter 'ne10_divmat_4x4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 942 C/C++ Problem
storage class specified for parameter 'ne10_vdiv_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 915 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 914 C/C++ Problem
storage class specified for parameter 'ne10_vdiv_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 913 C/C++ Problem
storage class specified for parameter 'ne10_divmat_3x3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 954 C/C++ Problem
storage class specified for parameter 'ne10_divmat_4x4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 945 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 944 C/C++ Problem
storage class specified for parameter 'ne10_divmat_4x4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 943 C/C++ Problem
storage class specified for parameter 'ne10_vdiv_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 900 C/C++ Problem
storage class specified for parameter 'ne10_vdiv_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 891 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 890 C/C++ Problem
storage class specified for parameter 'ne10_vdiv_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 889 C/C++ Problem
storage class specified for parameter 'ne10_vdiv_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 912 C/C++ Problem
storage class specified for parameter 'ne10_vdiv_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 903 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 902 C/C++ Problem
storage class specified for parameter 'ne10_vdiv_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 901 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1006 C/C++ Problem
storage class specified for parameter 'ne10_setc_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 998 C/C++ Problem
storage class specified for parameter 'ne10_setc_float_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 997 C/C++ Problem
storage class specified for parameter 'ne10_setc_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 996 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1017 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1009 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec2f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 1008 C/C++ Problem
storage class specified for parameter 'ne10_setc_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1007 C/C++ Problem
storage class specified for parameter 'ne10_divmat_2x2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 966 C/C++ Problem
storage class specified for parameter 'ne10_divmat_3x3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 957 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 956 C/C++ Problem
storage class specified for parameter 'ne10_divmat_3x3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 955 C/C++ Problem
storage class specified for parameter 'ne10_setc_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 995 C/C++ Problem
storage class specified for parameter 'ne10_divmat_2x2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 969 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 968 C/C++ Problem
storage class specified for parameter 'ne10_divmat_2x2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 967 C/C++ Problem
storage class specified for parameter 'ne10_invmat_4x4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1355 C/C++ Problem
storage class specified for parameter 'ne10_detmat_2x2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1330 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1329 C/C++ Problem
storage class specified for parameter 'ne10_detmat_2x2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1328 C/C++ Problem
storage class specified for parameter 'ne10_invmat_3x3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1366 C/C++ Problem
storage class specified for parameter 'ne10_invmat_4x4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1358 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1357 C/C++ Problem
storage class specified for parameter 'ne10_invmat_4x4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1356 C/C++ Problem
storage class specified for parameter 'ne10_detmat_3x3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1316 C/C++ Problem
storage class specified for parameter 'ne10_detmat_4x4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1308 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1307 C/C++ Problem
storage class specified for parameter 'ne10_detmat_4x4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1306 C/C++ Problem
storage class specified for parameter 'ne10_detmat_2x2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1327 C/C++ Problem
storage class specified for parameter 'ne10_detmat_3x3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1319 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1318 C/C++ Problem
storage class specified for parameter 'ne10_detmat_3x3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1317 C/C++ Problem
storage class specified for parameter 'ne10_transmat_3x3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1416 C/C++ Problem
storage class specified for parameter 'ne10_transmat_4x4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1408 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1407 C/C++ Problem
storage class specified for parameter 'ne10_transmat_4x4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1406 C/C++ Problem
storage class specified for parameter 'ne10_transmat_2x2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1427 C/C++ Problem
storage class specified for parameter 'ne10_transmat_3x3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1419 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1418 C/C++ Problem
storage class specified for parameter 'ne10_transmat_3x3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1417 C/C++ Problem
storage class specified for parameter 'ne10_invmat_2x2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1377 C/C++ Problem
storage class specified for parameter 'ne10_invmat_3x3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1369 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1368 C/C++ Problem
storage class specified for parameter 'ne10_invmat_3x3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1367 C/C++ Problem
storage class specified for parameter 'ne10_transmat_4x4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1405 C/C++ Problem
storage class specified for parameter 'ne10_invmat_2x2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1380 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1379 C/C++ Problem
storage class specified for parameter 'ne10_invmat_2x2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1378 C/C++ Problem
storage class specified for parameter 'ne10_identitymat_2x2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1474 C/C++ Problem
storage class specified for parameter 'ne10_identitymat_3x3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1467 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1466 C/C++ Problem
storage class specified for parameter 'ne10_identitymat_3x3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1465 C/C++ Problem
storage class specified for parameter 'ne10_identity_mat2x2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1477 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1476 C/C++ Problem
storage class specified for parameter 'ne10_identitymat_2x2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1475 C/C++ Problem
storage class specified for parameter 'ne10_identitymat_4x4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1454 C/C++ Problem
storage class specified for parameter 'ne10_trans_mat2x2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1430 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1429 C/C++ Problem
storage class specified for parameter 'ne10_transmat_2x2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1428 C/C++ Problem
storage class specified for parameter 'ne10_identitymat_3x3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 1464 C/C++ Problem
storage class specified for parameter 'ne10_identitymat_4x4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1457 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 1456 C/C++ Problem
storage class specified for parameter 'ne10_identitymat_4x4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 1455 C/C++ Problem
storage class specified for parameter 'ne10_addc_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 85 C/C++ Problem
storage class specified for parameter 'ne10_addc_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 76 C/C++ Problem
expected declaration specifiers before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 75 C/C++ Problem
storage class specified for parameter 'ne10_add_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 123 C/C++ Problem
storage class specified for parameter 'ne10_addc_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 112 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 111 C/C++ Problem
storage class specified for parameter 'ne10_addc_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 110 C/C++ Problem
storage class specified for parameter 'ne10_add_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 135 C/C++ Problem
storage class specified for parameter 'ne10_add_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 126 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 125 C/C++ Problem
storage class specified for parameter 'ne10_add_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 124 C/C++ Problem
storage class specified for parameter 'ne10_addc_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 97 C/C++ Problem
storage class specified for parameter 'ne10_addc_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 88 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 87 C/C++ Problem
storage class specified for parameter 'ne10_addc_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 86 C/C++ Problem
storage class specified for parameter 'ne10_addc_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 109 C/C++ Problem
storage class specified for parameter 'ne10_addc_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 100 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 99 C/C++ Problem
storage class specified for parameter 'ne10_addc_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 98 C/C++ Problem
storage class specified for parameter 'ne10_addmat_4x4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 189 C/C++ Problem
storage class specified for parameter 'ne10_add_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 162 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 161 C/C++ Problem
storage class specified for parameter 'ne10_add_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 160 C/C++ Problem
storage class specified for parameter 'ne10_addmat_3x3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 201 C/C++ Problem
storage class specified for parameter 'ne10_addmat_4x4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 192 C/C++ Problem
storage class specified for parameter 'ne10_addmat_4x4f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 191 C/C++ Problem
storage class specified for parameter 'ne10_addmat_4x4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 190 C/C++ Problem
storage class specified for parameter 'ne10_add_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 147 C/C++ Problem
storage class specified for parameter 'ne10_add_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 138 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 137 C/C++ Problem
storage class specified for parameter 'ne10_add_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 136 C/C++ Problem
storage class specified for parameter 'ne10_add_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 159 C/C++ Problem
storage class specified for parameter 'ne10_add_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 150 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 149 C/C++ Problem
storage class specified for parameter 'ne10_add_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 148 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 256 C/C++ Problem
storage class specified for parameter 'ne10_subc_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 247 C/C++ Problem
storage class specified for parameter 'ne10_subc_float_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 246 C/C++ Problem
storage class specified for parameter 'ne10_subc_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 245 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 268 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 259 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec2f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 258 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 257 C/C++ Problem
storage class specified for parameter 'ne10_addmat_2x2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 213 C/C++ Problem
storage class specified for parameter 'ne10_addmat_3x3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 204 C/C++ Problem
storage class specified for parameter 'ne10_addmat_3x3f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 203 C/C++ Problem
storage class specified for parameter 'ne10_addmat_3x3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 202 C/C++ Problem
storage class specified for parameter 'ne10_subc_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 244 C/C++ Problem
storage class specified for parameter 'ne10_addmat_2x2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 216 C/C++ Problem
storage class specified for parameter 'ne10_addmat_2x2f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 215 C/C++ Problem
storage class specified for parameter 'ne10_addmat_2x2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 214 C/C++ Problem
make.exe: *** [obj/local/armeabi/objs/test-jni/Platform.o] Error 1 test C/C++ Problem
storage class specified for parameter 'ne10_vmul_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 552 C/C++ Problem
storage class specified for parameter 'ne10_vmul_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 543 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 542 C/C++ Problem
storage class specified for parameter 'ne10_vmul_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 541 C/C++ Problem
storage class specified for parameter 'ne10_vmul_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 564 C/C++ Problem
storage class specified for parameter 'ne10_vmul_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 555 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 554 C/C++ Problem
storage class specified for parameter 'ne10_vmul_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 553 C/C++ Problem
storage class specified for parameter 'ne10_mul_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 528 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 518 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec4f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 517 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 516 C/C++ Problem
storage class specified for parameter 'ne10_vmul_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 540 C/C++ Problem
storage class specified for parameter 'ne10_mul_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 531 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 530 C/C++ Problem
storage class specified for parameter 'ne10_mul_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 529 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 624 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 613 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec2f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 612 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 611 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 638 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 627 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec3f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 626 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 625 C/C++ Problem
storage class specified for parameter 'ne10_mlac_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 596 C/C++ Problem
storage class specified for parameter 'ne10_vmul_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 567 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 566 C/C++ Problem
storage class specified for parameter 'ne10_vmul_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 565 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 610 C/C++ Problem
storage class specified for parameter 'ne10_mlac_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 599 C/C++ Problem
storage class specified for parameter 'ne10_mlac_float_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 598 C/C++ Problem
storage class specified for parameter 'ne10_mlac_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 597 C/C++ Problem
storage class specified for parameter 'ne10_fft_r2c_1d_float32_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 109 C/C++ Problem
storage class specified for parameter 'ne10_vmla_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 676 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2c_1d_float32_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 104 C/C++ Problem
storage class specified for parameter 'ne10_vmla_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 667 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 666 C/C++ Problem
storage class specified for parameter 'ne10_fft_alloc_r2c_int16' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 101 C/C++ Problem
storage class specified for parameter 'ne10_fft_alloc_r2c_int32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 100 C/C++ Problem
storage class specified for parameter 'ne10_vmla_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 665 C/C++ Problem
storage class specified for parameter 'ne10_fft_alloc_r2c_float32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 99 C/C++ Problem
storage class specified for parameter 'ne10_vmla_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 688 C/C++ Problem
storage class specified for parameter 'ne10_fft_alloc_c2c_int16' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 97 C/C++ Problem
storage class specified for parameter 'ne10_vmla_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 679 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 678 C/C++ Problem
storage class specified for parameter 'ne10_fft_alloc_c2c_int32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 96 C/C++ Problem
storage class specified for parameter 'ne10_fft_alloc_c2c_float32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 95 C/C++ Problem
storage class specified for parameter 'ne10_vmla_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 677 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2c_1d_float32_neon' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 151 C/C++ Problem
storage class specified for parameter 'ne10_mla_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 652 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2r_1d_int16_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 144 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 641 C/C++ Problem
storage class specified for parameter 'ne10_fft_r2c_1d_int16_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 139 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec4f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 640 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2c_1d_int16_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 133 C/C++ Problem
storage class specified for parameter 'ne10_mlac_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 639 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2r_1d_int32_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 128 C/C++ Problem
storage class specified for parameter 'ne10_vmla_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 664 C/C++ Problem
storage class specified for parameter 'ne10_fft_r2c_1d_int32_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 123 C/C++ Problem
storage class specified for parameter 'ne10_mla_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 655 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 654 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2c_1d_int32_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 117 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2r_1d_float32_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 113 C/C++ Problem
storage class specified for parameter 'ne10_mla_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 653 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2c_1d_float32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 49 C/C++ Problem
storage class specified for parameter 'ne10_mulmat_2x2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 744 C/C++ Problem
storage class specified for parameter 'ne10_mulmat_3x3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 734 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 733 C/C++ Problem
storage class specified for parameter 'ne10_mulmat_3x3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 732 C/C++ Problem
storage class specified for parameter 'ne10_mulcmatvec_cm4x4f_v4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 773 C/C++ Problem
storage class specified for parameter 'ne10_mulmat_2x2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 747 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 746 C/C++ Problem
storage class specified for parameter 'ne10_mulmat_2x2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 745 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2r_1d_int16' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 89 C/C++ Problem
storage class specified for parameter 'ne10_mulmat_4x4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 718 C/C++ Problem
storage class specified for parameter 'ne10_fft_r2c_1d_int16' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 84 C/C++ Problem
storage class specified for parameter 'ne10_vmla_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 691 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 690 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2c_1d_int16' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 78 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2r_1d_int32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 73 C/C++ Problem
storage class specified for parameter 'ne10_vmla_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 689 C/C++ Problem
storage class specified for parameter 'ne10_fft_r2c_1d_int32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 68 C/C++ Problem
storage class specified for parameter 'ne10_mulmat_3x3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 731 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2c_1d_int32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 62 C/C++ Problem
storage class specified for parameter 'ne10_mulmat_4x4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 721 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 720 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2r_1d_float32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 58 C/C++ Problem
storage class specified for parameter 'ne10_fft_r2c_1d_float32' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 54 C/C++ Problem
storage class specified for parameter 'ne10_mulmat_4x4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 719 C/C++ Problem
storage class specified for parameter 'ne10_sub_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 305 C/C++ Problem
storage class specified for parameter 'ne10_sub_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 296 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 295 C/C++ Problem
storage class specified for parameter 'ne10_sub_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 294 C/C++ Problem
storage class specified for parameter 'ne10_sub_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 317 C/C++ Problem
storage class specified for parameter 'ne10_sub_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 308 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 307 C/C++ Problem
storage class specified for parameter 'ne10_sub_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 306 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 280 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 271 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec3f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 270 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 269 C/C++ Problem
storage class specified for parameter 'ne10_sub_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 293 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 283 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec4f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 282 C/C++ Problem
storage class specified for parameter 'ne10_subc_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 281 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 370 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 361 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_float_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 360 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 359 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 382 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 373 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec2f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 372 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 371 C/C++ Problem
storage class specified for parameter 'ne10_sub_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 329 C/C++ Problem
storage class specified for parameter 'ne10_sub_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 320 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 319 C/C++ Problem
storage class specified for parameter 'ne10_sub_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 318 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 358 C/C++ Problem
storage class specified for parameter 'ne10_sub_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 332 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 331 C/C++ Problem
storage class specified for parameter 'ne10_sub_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 330 C/C++ Problem
storage class specified for parameter 'ne10_submat_3x3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 436 C/C++ Problem
storage class specified for parameter 'ne10_submat_4x4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 426 C/C++ Problem
storage class specified for parameter 'ne10_submat_4x4f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 425 C/C++ Problem
storage class specified for parameter 'ne10_submat_4x4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 424 C/C++ Problem
storage class specified for parameter 'ne10_submat_2x2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 449 C/C++ Problem
storage class specified for parameter 'ne10_submat_3x3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 439 C/C++ Problem
storage class specified for parameter 'ne10_submat_3x3f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 438 C/C++ Problem
storage class specified for parameter 'ne10_submat_3x3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 437 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 394 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 385 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec3f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 384 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 383 C/C++ Problem
storage class specified for parameter 'ne10_submat_4x4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 423 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec4f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 397 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec4f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 396 C/C++ Problem
storage class specified for parameter 'ne10_rsbc_vec4f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 395 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec3f' NE10_math.h /test/jni/test-jni/projectNE10/include line 503 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 494 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec2f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 493 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 492 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec4f' NE10_math.h /test/jni/test-jni/projectNE10/include line 515 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec3f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 506 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec3f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 505 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec3f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 504 C/C++ Problem
storage class specified for parameter 'ne10_mulc_float' NE10_math.h /test/jni/test-jni/projectNE10/include line 479 C/C++ Problem
storage class specified for parameter 'ne10_submat_2x2f_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 452 C/C++ Problem
storage class specified for parameter 'ne10_submat_2x2f_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 451 C/C++ Problem
storage class specified for parameter 'ne10_submat_2x2f_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 450 C/C++ Problem
storage class specified for parameter 'ne10_mulc_vec2f' NE10_math.h /test/jni/test-jni/projectNE10/include line 491 C/C++ Problem
storage class specified for parameter 'ne10_mulc_float_asm' NE10_math.h /test/jni/test-jni/projectNE10/include line 482 C/C++ Problem
storage class specified for parameter 'ne10_mulc_float_neon' NE10_math.h /test/jni/test-jni/projectNE10/include line 481 C/C++ Problem
storage class specified for parameter 'ne10_mulc_float_c' NE10_math.h /test/jni/test-jni/projectNE10/include line 480 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 298 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_imgproc.h /test/jni/test-jni/projectNE10/include line 73 C/C++ Problem
storage class specified for parameter 'ne10_fir_sparse_float_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 281 C/C++ Problem
storage class specified for parameter 'ne10_img_rotate_rgba' NE10_imgproc.h /test/jni/test-jni/projectNE10/include line 77 C/C++ Problem
storage class specified for parameter 'ne10_fir_lattice_float_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 276 C/C++ Problem
storage class specified for parameter 'ne10_img_resize_bilinear_rgba' NE10_imgproc.h /test/jni/test-jni/projectNE10/include line 50 C/C++ Problem
storage class specified for parameter 'ne10_fir_interpolate_float_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 271 C/C++ Problem
storage class specified for parameter 'ne10_img_resize_bilinear_rgba_c' NE10_imgproc.h /test/jni/test-jni/projectNE10/include line 58 C/C++ Problem
storage class specified for parameter 'ne10_fir_decimate_float_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 266 C/C++ Problem
storage class specified for parameter 'ne10_img_boxfilter_rgba8888' NE10_imgproc.h /test/jni/test-jni/projectNE10/include line 104 C/C++ Problem
storage class specified for parameter 'ne10_fir_float_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 261 C/C++ Problem
storage class specified for parameter 'ne10_img_boxfilter_rgba8888_c' NE10_imgproc.h /test/jni/test-jni/projectNE10/include line 111 C/C++ Problem
storage class specified for parameter 'ne10_fir_sparse_init_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 252 C/C++ Problem
storage class specified for parameter 'ne10_img_rotate_rgba_c' NE10_imgproc.h /test/jni/test-jni/projectNE10/include line 85 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_imgproc.h /test/jni/test-jni/projectNE10/include line 100 C/C++ Problem
storage class specified for parameter 'ne10_fir_lattice_init_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 247 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 376 C/C++ Problem
storage class specified for parameter 'ne10_iir_lattice_float_c' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 362 C/C++ Problem
storage class specified for parameter 'ne10_iir_lattice_init_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 353 C/C++ Problem
storage class specified for parameter 'ne10_img_boxfilter_rgba8888_neon' NE10_imgproc.h /test/jni/test-jni/projectNE10/include line 118 C/C++ Problem
storage class specified for parameter 'ne10_iir_lattice_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 347 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 340 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 328 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 318 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 308 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2r_1d_int16_neon' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 191 C/C++ Problem
storage class specified for parameter 'ne10_fft_r2c_1d_int16_neon' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 186 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2c_1d_int16_neon' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 180 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2r_1d_int32_neon' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 175 C/C++ Problem
storage class specified for parameter 'ne10_fft_r2c_1d_int32_neon' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 170 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2c_1d_int32_neon' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 164 C/C++ Problem
storage class specified for parameter 'ne10_fft_c2r_1d_float32_neon' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 160 C/C++ Problem
storage class specified for parameter 'ne10_fft_r2c_1d_float32_neon' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 156 C/C++ Problem
storage class specified for parameter 'ne10_fir_interpolate_init_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 240 C/C++ Problem
storage class specified for parameter 'ne10_fir_decimate_init_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 233 C/C++ Problem
storage class specified for parameter 'ne10_fir_init_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 227 C/C++ Problem
storage class specified for parameter 'ne10_fir_sparse_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 219 C/C++ Problem
storage class specified for parameter 'ne10_fir_lattice_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 214 C/C++ Problem
storage class specified for parameter 'ne10_fir_interpolate_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 209 C/C++ Problem
storage class specified for parameter 'ne10_fir_decimate_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 204 C/C++ Problem
storage class specified for parameter 'ne10_fir_float' NE10_dsp.h /test/jni/test-jni/projectNE10/include line 199 C/C++ Problem
storage class specified for parameter 'ne10_physics_compute_aabb_vec2f' NE10_physics.h /test/jni/test-jni/projectNE10/include line 47 C/C++ Problem
storage class specified for parameter 'ne10_physics_apply_impulse_vec2f' NE10_physics.h /test/jni/test-jni/projectNE10/include line 58 C/C++ Problem
storage class specified for parameter 'ne10_physics_relative_v_vec2f' NE10_physics.h /test/jni/test-jni/projectNE10/include line 52 C/C++ Problem
storage class specified for parameter 'ne10_physics_relative_v_vec2f_c' NE10_physics.h /test/jni/test-jni/projectNE10/include line 73 C/C++ Problem
storage class specified for parameter 'ne10_physics_compute_aabb_vec2f_c' NE10_physics.h /test/jni/test-jni/projectNE10/include line 68 C/C++ Problem
storage class specified for parameter 'ne10_physics_compute_aabb_vec2f_neon' NE10_physics.h /test/jni/test-jni/projectNE10/include line 93 C/C++ Problem
storage class specified for parameter 'ne10_physics_apply_impulse_vec2f_c' NE10_physics.h /test/jni/test-jni/projectNE10/include line 79 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_physics.h /test/jni/test-jni/projectNE10/include line 113 C/C++ Problem
expected '=', ',', ';', 'asm' or 'attribute' before 'asm' NE10_physics.h /test/jni/test-jni/projectNE10/include line 104 C/C++ Problem
old-style parameter declarations in prototyped function definition NE10_math.h /test/jni/test-jni/projectNE10/include line 75 C/C++ Problem

RIFFT not working properly and output validity

Hi,

I calculated the fft of input using the configuration in the RIFFT test suite.
static test_config_rfft CONFIG_RFFT[] =
{
{128, 0, 1, &testInput_f32[0]},
};

I fed back the output to the function using the configuration

static test_config_rfft CONFIG_RFFT[] =
{
{128, 1, 1, &testInput_f32[0]},
};

The entire output array is filled zero whatsoever config I try. I did not see inverse FFT being used in the testbench also.

Is there any reference output available to check the output, I am currently working on checking the output validity of functions in NE10. I am working with GNU octave to check input and output.
Is the output-input correspondence already checked by the team?
I did some preliminary analysis on FFT and here are the results.
https://docs.google.com/file/d/0B318pI7x2QVccXhNUWdiYlhmUWs/edit Please Comment.

My Fir filter after many trials ended up like this....
https://docs.google.com/document/d/1c5ktcQ6VYlK2im3P2yGNNxRAZonssCApdLS7qkQwq6M/edit
Please tell if anyone has checked the real working of code other than simulations with random numbers.
Thanks

missing NEON version of mulc

I can't find any *.s which implements mulc_float_neon, mulc_vec2f_neon, mulc_vec3f_neon and mulc_vec4f_neon.
Is this normal?

compilng Ne10 on Exynos4412 A9

Hi,
gcc 4.6.3, linuc linsto unbuntu 3.0.63
gcc: internal compiler error: Segmentation fault ( program as)
I'm trying to native compile Ne10, and I get segmentation fault, in modules/cmakefiles/Ne10.dir/math/NE10_mulcmatvec.neon.so.o] Error 4

Double precision support

Hi there,

I am successfully using the Ne10 library for an audio processing project inside the android ndk.
The library works fine and has great performance on the devices I tested so far.

An important feature for me would be that the library supports double precision as well.
Could someone tell me if double support is planed to be released?
If yes, any idea when the release might be expected?

I'm looking forward to the next release of this very useful library.
Would be great if we could have complex format support, convolution and fft as well.

Thanks a lot for the reply.
Best regards,
Mat

Build for Android in Mac Fail

I changed something in android-config.cmake like this

set(ANDROID_TOOLCHAIN_PATH "/Users/James/Work/adt-bundle-mac-x86_64- 20130717/android-ndk-r9/toolchains/arm-linux-androideabi-4.6/prebuilt/ darwin-x86_64/arm-linux-androideabi/bin") set(CMAKE_C_COMPILER ${ANDROID_TOOLCHAIN_PATH}/gcc) set(CMAKE_CXX_COMPILER ${ANDROID_TOOLCHAIN_PATH}/g++) set(CMAKE_ASM_COMPILER ${ANDROID_TOOLCHAIN_PATH}/as)

then after make got an error:

James-AirtekiMacBook-Air:build James$ cmake -DCMAKE_TOOLCHAIN_FILE=/Users/James/Work/Ne10-master/
android/android_config.cmake ..
-- The C compiler identification is unknown
-- The ASM compiler identification is GNU
-- Found assembler: /Users/James/Work/adt-bundle-mac-x86_64-20130717/
android-ndk-r9/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86_64/
arm-linux-androideabi/bin/as
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - failed
loaded toolchain:
OFF/arm-linux-androideabi-gcc
OFF/arm-linux-androideabi-g++
OFF/arm-linux-androideabi-as
OFF/arm-linux-androideabi-ar
OFF/arm-linux-androideabi-ranlib
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/James/Work/Ne10-master/build
James-AirtekiMacBook-Air:build James$ make
Scanning dependencies of target NE10
[ 1%] Building C object modules/CMakeFiles/NE10.dir/math/NE10_abs.c.o
gcc: error trying to exec 'cc1': execvp: No such file or directory

make[2]: *** [modules/CMakeFiles/NE10.dir/math/NE10_abs.c.o] Error 1
make[1]: *** [modules/CMakeFiles/NE10.dir/all] Error 2
make: *** [all] Error 2
James-AirtekiMacBook-Air:build James$

smoke test on a kindle Paperwhite I (That's a cortex a8 freescale)

math_unit:

------ /usr/local/src/Ne10/modules/math/test/test_suite_math.c -------
---------- test_abs_case0 start
---------- test_abs_case0 end
---------- test_addc_case0 start
---------- test_addc_case0 end
---------- test_add_case0 start
---------- test_add_case0 end
---------- test_cross_case0 start
---------- test_cross_case0 end
---------- test_divc_case0 start
test_divc_case0 Line 538 Expected 1.431880e+37 (0x7D2C5B38) but was inf (0x7F800000) at vector->0
test_divc_case0 Line 538 Expected 1.431880e+37 (0x7D2C5B38) but was inf (0x7F800000) at vector->0
test_divc_case0 Line 538 Expected -2.724085e+05 (0xC8850311) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected 1.431880e+37 (0x7D2C5B38) but was inf (0x7F800000) at vector->0
test_divc_case0 Line 538 Expected -2.724085e+05 (0xC8850311) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -4.744250e+29 (0xF0BF9E66) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected 1.431880e+37 (0x7D2C5B38) but was inf (0x7F800000) at vector->0
test_divc_case0 Line 538 Expected -2.724085e+05 (0xC8850311) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -4.744250e+29 (0xF0BF9E66) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected 1.431880e+37 (0x7D2C5B38) but was inf (0x7F800000) at vector->0
test_divc_case0 Line 538 Expected -2.724085e+05 (0xC8850311) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -4.744250e+29 (0xF0BF9E66) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected 1.431880e+37 (0x7D2C5B38) but was inf (0x7F800000) at vector->0
test_divc_case0 Line 538 Expected -2.724085e+05 (0xC8850311) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -4.744250e+29 (0xF0BF9E66) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected 1.431880e+37 (0x7D2C5B38) but was inf (0x7F800000) at vector->0
test_divc_case0 Line 538 Expected -2.724085e+05 (0xC8850311) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -4.744250e+29 (0xF0BF9E66) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -8.932120e+10 (0xD1A65FAB) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected 1.431880e+37 (0x7D2C5B38) but was inf (0x7F800000) at vector->0
test_divc_case0 Line 538 Expected -2.724085e+05 (0xC8850311) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -4.744250e+29 (0xF0BF9E66) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -8.932120e+10 (0xD1A65FAB) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -1.202955e+23 (0xE5CBC9DE) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected 1.431880e+37 (0x7D2C5B38) but was inf (0x7F800000) at vector->0
test_divc_case0 Line 538 Expected -2.724085e+05 (0xC8850311) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -4.744250e+29 (0xF0BF9E66) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -8.932120e+10 (0xD1A65FAB) but was -inf (0xFF800000) at vector->0
test_divc_case0 Line 538 Expected -1.202955e+23 (0xE5CBC9DE) but was -inf (0xFF800000) at vector->0
---------- test_divc_case0 end
---------- test_div_case0 start
---------- test_div_case0 end
---------- test_dot_case0 start
---------- test_dot_case0 end
---------- test_len_case0 start
---------- test_len_case0 end
---------- test_mlac_case0 start
---------- test_mlac_case0 end
---------- test_mla_case0 start
---------- test_mla_case0 end
---------- test_mulc_case0 start
test_mulc_case0 Line 1151 Expected -6.028377e-36 (0x8500359B) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected -6.028377e-36 (0x8500359B) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected -6.028377e-36 (0x8500359B) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected -6.028377e-36 (0x8500359B) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected 5.370568e-29 (0x108828FB) but was 0.000000e+00 (0x0000) at vector->0
test_mulc_case0 Line 1151 Expected -6.028377e-36 (0x8500359B) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected 5.370568e-29 (0x108828FB) but was 0.000000e+00 (0x0000) at vector->0
test_mulc_case0 Line 1151 Expected -6.028377e-36 (0x8500359B) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected 5.370568e-29 (0x108828FB) but was 0.000000e+00 (0x0000) at vector->0
test_mulc_case0 Line 1151 Expected -1.168471e-37 (0x821F0B47) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected -6.028377e-36 (0x8500359B) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected 5.370568e-29 (0x108828FB) but was 0.000000e+00 (0x0000) at vector->0
test_mulc_case0 Line 1151 Expected -1.168471e-37 (0x821F0B47) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected -6.028377e-36 (0x8500359B) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected 5.370568e-29 (0x108828FB) but was 0.000000e+00 (0x0000) at vector->0
test_mulc_case0 Line 1151 Expected -1.168471e-37 (0x821F0B47) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected 2.556213e-30 (0xE4F627A) but was 0.000000e+00 (0x0000) at vector->0
test_mulc_case0 Line 1151 Expected -6.028377e-36 (0x8500359B) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected 5.370568e-29 (0x108828FB) but was 0.000000e+00 (0x0000) at vector->0
test_mulc_case0 Line 1151 Expected -1.168471e-37 (0x821F0B47) but was -0.000000e+00 (0x80000000) at vector->0
test_mulc_case0 Line 1151 Expected 2.556213e-30 (0xE4F627A) but was 0.000000e+00 (0x0000) at vector->0
test_mulc_case0 Line 1151 Expected -8.431689e-30 (0x8F2B03D5) but was -0.000000e+00 (0x80000000) at vector->0
---------- test_mulc_case0 end
---------- test_mul_case0 start
---------- test_mul_case0 end
---------- test_normalize_case0 start
---------- test_normalize_case0 end
---------- test_rsbc_case0 start
---------- test_rsbc_case0 end
---------- test_setc_case0 start
---------- test_setc_case0 end
---------- test_subc_case0 start
test_subc_case0 Line 1650 Expected 1.549376e-38 (0xA8B650) but was 1.575252e-38 (0xAB87A0) at vector->0
test_subc_case0 Line 1650 Expected 1.549376e-38 (0xA8B650) but was 1.575252e-38 (0xAB87A0) at vector->0
test_subc_case0 Line 1650 Expected 1.549376e-38 (0xA8B650) but was 1.575252e-38 (0xAB87A0) at vector->0
test_subc_case0 Line 1650 Expected 1.549376e-38 (0xA8B650) but was 1.575252e-38 (0xAB87A0) at vector->0
test_subc_case0 Line 1650 Expected 1.549376e-38 (0xA8B650) but was 1.575252e-38 (0xAB87A0) at vector->0
---------- test_subc_case0 end
---------- test_sub_case0 start
---------- test_sub_case0 end
---------- test_addmat_case0 start
---------- test_addmat_case0 end
---------- test_detmat_case0 start
---------- test_detmat_case0 end
---------- test_identitymat_case0 start
---------- test_identitymat_case0 end
---------- test_invmat_case0 start
---------- test_invmat_case0 end
---------- test_mulmat_case0 start
---------- test_mulmat_case0 end
---------- test_mulcmatvec_case0 start
---------- test_mulcmatvec_case0 end
---------- test_submat_case0 start
---------- test_submat_case0 end
---------- test_transmat_case0 start
---------- test_transmat_case0 end
25 run 56 failed

============================ SEATEST v0.5 ============================

                            Failed                                
                         25 tests run                             
                     in 43080405 micro-s                          

dsp_unit:

------- /usr/local/src/Ne10/modules/dsp/test/test_suite_cfft.c -------
---------- test_cfft_case0 start
---------- test_cfft_case0 end
1 run 0 failed

------- /usr/local/src/Ne10/modules/dsp/test/test_suite_rfft.c -------
---------- test_rfft_case0 start
---------- test_rfft_case0 end
1 run 0 failed

--- /usr/local/src/Ne10/modules/dsp/test/test_suite_fft_float32.c ----
----------test_fft_c2c_1d_float32_conformance start
FFT size 2
FFT size 4
FFT size 8
FFT size 16
FFT size 32
FFT size 64
FFT size 128
FFT size 256
FFT size 512
FFT size 1024
FFT size 2048
FFT size 4096
FFT size 8192
FFT size 16384
1 run 0 failed

---- /usr/local/src/Ne10/modules/dsp/test/test_suite_fft_int32.c -----
----------test_fft_c2c_1d_int32_conformance start
FFT size 2
FFT size 4
FFT size 8
FFT size 16
FFT size 32
FFT size 64
FFT size 128
FFT size 256
FFT size 512
FFT size 1024
FFT size 2048
FFT size 4096
FFT size 8192
FFT size 16384
1 run 0 failed

---- /usr/local/src/Ne10/modules/dsp/test/test_suite_fft_int16.c -----
----------test_fft_c2c_1d_int16_conformance start
FFT size 2
FFT size 4
FFT size 8
FFT size 16
FFT size 32
FFT size 64
FFT size 128
FFT size 256
FFT size 512
FFT size 1024
FFT size 2048
FFT size 4096
FFT size 8192
FFT size 16384
1 run 0 failed

--- /usr/local/src/Ne10/modules/dsp/test/test_suite_fft_float32.c ----
----------test_fft_r2c_1d_float32_conformance start
FFT size 4
FFT size 8
FFT size 16
FFT size 32
FFT size 64
FFT size 128
FFT size 256
FFT size 512
FFT size 1024
FFT size 2048
FFT size 4096
FFT size 8192
FFT size 16384
1 run 0 failed

---- /usr/local/src/Ne10/modules/dsp/test/test_suite_fft_int32.c -----
----------test_fft_r2c_1d_int32_conformance start
FFT size 4
FFT size 8
FFT size 16
FFT size 32
FFT size 64
FFT size 128
FFT size 256
FFT size 512
FFT size 1024
FFT size 2048
FFT size 4096
FFT size 8192
FFT size 16384
1 run 0 failed

---- /usr/local/src/Ne10/modules/dsp/test/test_suite_fft_int16.c -----
----------test_fft_r2c_1d_int16_conformance start
FFT size 4
FFT size 8
FFT size 16
FFT size 32
FFT size 64
FFT size 128
FFT size 256
FFT size 512
FFT size 1024
FFT size 2048
FFT size 4096
FFT size 8192
FFT size 16384
1 run 0 failed

------- /usr/local/src/Ne10/modules/dsp/test/test_suite_fir.c --------
---------- test_fir_case0 start
---------- test_fir_case0 end
1 run 0 failed

--- /usr/local/src/Ne10/modules/dsp/test/test_suite_fir_decimate.c ---
---------- test_fir_decimate_case0 start
length of input data is wrong!
---------- test_fir_decimate_case0 end
1 run 0 failed

  • /usr/local/src/Ne10/modules/dsp/test/test_suite_fir_interpolate.c --
    ---------- test_fir_interpolate_case0 start
    length of input data is wrong!
    length of input data is wrong!
    ---------- test_fir_interpolate_case0 end
    1 run 0 failed

--- /usr/local/src/Ne10/modules/dsp/test/test_suite_fir_lattice.c ----
---------- test_fir_lattice_case0 start
---------- test_fir_lattice_case0 end
1 run 0 failed

---- /usr/local/src/Ne10/modules/dsp/test/test_suite_fir_sparse.c ----
---------- test_fir_sparse_case0 start
---------- test_fir_sparse_case0 end
1 run 0 failed

------- /usr/local/src/Ne10/modules/dsp/test/test_suite_iir.c --------
---------- test_iir_lattice_case0 start
test_iir_lattice_case0 Line 327 Expected -5.785422e-05 (0xB872A880) but was -5.785935e-05 (0xB872AE00) at vector->0
test_iir_lattice_case0 Line 327 Expected 4.873276e-04 (0x39FF8000) but was 4.874170e-04 (0x39FF8C00) at vector->0
test_iir_lattice_case0 Line 327 Expected 1.807988e-02 (0x3C941C40) but was 1.807940e-02 (0x3C941B40) at vector->0
test_iir_lattice_case0 Line 327 Expected 6.026775e-04 (0x3A1DFD00) but was 6.027371e-04 (0x3A1E0100) at vector->0
test_iir_lattice_case0 Line 327 Expected 2.380034e-02 (0x3CC2F8F0) but was 2.379987e-02 (0x3CC2F7F0) at vector->0
test_iir_lattice_case0 Line 327 Expected -3.665458e-03 (0xBB703830) but was -3.665328e-03 (0xBB703600) at vector->0
test_iir_lattice_case0 Line 327 Expected -1.239263e-03 (0xBAA26EC0) but was -1.239553e-03 (0xBAA27880) at vector->0
test_iir_lattice_case0 Line 327 Expected -5.785422e-05 (0xB872A880) but was -5.785935e-05 (0xB872AE00) at vector->0
test_iir_lattice_case0 Line 327 Expected 4.873276e-04 (0x39FF8000) but was 4.874170e-04 (0x39FF8C00) at vector->0
test_iir_lattice_case0 Line 327 Expected 1.807988e-02 (0x3C941C40) but was 1.807940e-02 (0x3C941B40) at vector->0
test_iir_lattice_case0 Line 327 Expected 6.026775e-04 (0x3A1DFD00) but was 6.027371e-04 (0x3A1E0100) at vector->0
test_iir_lattice_case0 Line 327 Expected 2.380034e-02 (0x3CC2F8F0) but was 2.379987e-02 (0x3CC2F7F0) at vector->0
test_iir_lattice_case0 Line 327 Expected -3.665458e-03 (0xBB703830) but was -3.665328e-03 (0xBB703600) at vector->0
test_iir_lattice_case0 Line 327 Expected -1.239263e-03 (0xBAA26EC0) but was -1.239553e-03 (0xBAA27880) at vector->0
test_iir_lattice_case0 Line 327 Expected -2.111401e-05 (0xB7B11E00) but was -2.111495e-05 (0xB7B12000) at vector->0
test_iir_lattice_case0 Line 327 Expected -3.810264e-04 (0xB9C7C480) but was -3.810376e-04 (0xB9C7C600) at vector->0
test_iir_lattice_case0 Line 327 Expected 3.345281e-03 (0x3B5B3C80) but was 3.344968e-03 (0x3B5B3740) at vector->0
test_iir_lattice_case0 Line 327 Expected -2.266971e+01 (0xC1B55B91) but was -2.267034e+01 (0xC1B55CDC) at vector->0
test_iir_lattice_case0 Line 327 Expected 1.528196e+01 (0x417482ED) but was 1.528168e+01 (0x417481C0) at vector->0
test_iir_lattice_case0 Line 327 Expected 2.944815e+01 (0x41EB95D0) but was 2.944873e+01 (0x41EB9700) at vector->0
---------- test_iir_lattice_case0 end
1 run 20 failed

============================ SEATEST v0.5 ============================

                            Failed                                
                         14 tests run                             
                     in 17078726 micro-s                          

NE10_imgproc_unit_test_smoke

Passes no errors.

Thought you might like some feedback on this corner case device.

annoying precision problem

include

include

include "NE10.h"

using namespace std;

int main()
{
ne10_float32_t vec_len[20];
ne10_vec2f_t vec[20];
for (int i = 1; i < 20; i++) {
vec[i].x = i;
vec[i].y = 0.0;
len_vec2f_neon(&vec_len[i], &vec[i], 1);
cout << "neon len = " << vec_len[i] << ", sqrt len = " << sqrt(vec[i].x_vec[i].x+vec[i].y_vec[i].y) << endl;
}
return 0;
}

The output is:

neon len = 0.999994, sqrt len = 1
neon len = 1.99999, sqrt len = 2
neon len = 3, sqrt len = 3
neon len = 3.99998, sqrt len = 4
neon len = 4.99998, sqrt len = 5
neon len = 5.99999, sqrt len = 6
neon len = 6.99996, sqrt len = 7
neon len = 7.99995, sqrt len = 8
neon len = 8.99992, sqrt len = 9
neon len = 9.99997, sqrt len = 10
neon len = 11, sqrt len = 11
neon len = 12, sqrt len = 12
neon len = 13, sqrt len = 13
neon len = 13.9999, sqrt len = 14
neon len = 15, sqrt len = 15
neon len = 15.9999, sqrt len = 16
neon len = 17, sqrt len = 17
neon len = 17.9998, sqrt len = 18
neon len = 19, sqrt len = 19

It seems that sqrt is more accurate when doing float calculation.

C2R FFT gives poor results on AArch64

Hi, I noticed that complex-to-real FFT gives poor calculation result on AArch64. I'm using NEON intrinsics version (NE10_rfft_float32.neonintrinsic.c).

dereferencing -Wpointer-arith

@hello,

dereferencing and pointer-arithmetic on void pointers is not permitted by the standard since sizeof(void) is undefined, moreover, Wimplicit-function-declaration, please declare your function prototypes or use extern, that's easy.

len_vec2f_neon will change the result of my program but len_vec2f_c & len_vec2f_asm are OK

I've added some extra code in the original source code without changing any original part.
The extra code doesn't modify any original variables.
I found that after doing len_vec2f_neon with count = total array length,
the output of the original part will be changed.
If I replace len_vec2f_neon by len_vec2f_c or len_vec2f_asm,
the output will be correct.
I've also tried to call len_vec2f_neon with count = 1 many times in a for-loop,
the output is also correct.

FFT/IFFT support for A8 processor

The functions in NE10_fft_float32.neon.s works fine on A9 processor. However, I run into hard error when trying to run the function on ARM Cortex-A8 processor. I searched the doc on the supported processors, but cannot find any clue. what are the processors being supported by NE10_fft_float32_neon.s and NE10_fft_intxx_neon.s? Could this be clearly documented?

in addition, NE10_fft_float32.neonintrinsic.c works fine for both A9 and A8. does this function support all ARM Cortex-A series processors? any reply is appreciated! - Hong

Assembler errors - help please

Hi All,
Could you please help me struggle to asm compilation errors?
~/src/neon/Ne10/modules/imgproc/NE10_rotate.neon.s: Assembler messages:
~/src/neon/Ne10/modules/imgproc/NE10_rotate.neon.s:151: Error: Neon double or quad precision register expected -- vld3.f32 {dA1,dA2,dA3},[pMatrix]' ~/src/neon/Ne10/modules/imgproc/NE10_rotate.neon.s:158: Error: Neon double or quad precision register expected --vdup.32 dValOne,tmp0'
~/src/neon/Ne10/modules/imgproc/NE10_rotate.neon.s:159: Error: VFP single, double or Neon quad precision register expected -- `vcvt.f32.u32 dValOneF,dValOne'
..... and lot of similar stuff

I'm using the linux's (ubuntu 14.04lts) gcc tool-chain for TI DM385 (based on ARM7+NEON+VFP). Compilation settings were done according to doc/BuildingNe10.txt.

Thanks in advance,
Oleg

64-bit arm support

From looking at the source code I don't think it will compile on latest iOS, which requires 64-bit arm (ARM changed all the neon function names)

wrong result for zero-length vector by len_vec2f, len_vec3f & len_vec4f

define LOG_TAG "NE10"

include <android/log.h>

include

include "NE10.h"

int main()
{
ne10_vec2f_t vec = {0.0f, 0.0f};
ne10_float32_t vec_len;
len_vec2f_neon(&vec_len, &vec, 1);
__android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, "neon len = %f", vec_len);
__android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, "sqrt len = %f", sqrt(0.0f_0.0f+0.0f_0.0f));
return 0;
}

The output is:
neon len = NaN
sqrt len = 0.000000

Missing dst for vmla_vec2f, vmla_vec3f & vmla_vec4f in NE10_math.h & NE10_init_math.c

target arm C: libne10 <= external/Ne10/modules/math/NE10_init_math.c
external/Ne10/modules/math/NE10_init_math.c: In function 'NE10_init_math':
external/Ne10/modules/math/NE10_init_math.c:75: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:76: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:77: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:166: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:167: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:168: warning: assignment from incompatible pointer type

xcode 5.0 build failing

I receive the following errors building for ios with Xcode 5.0. Everything is clean until this error.

1 warning generated.
Linking C static library libNE10_test_demo.a
[ 99%] Built target NE10_test_demo
Scanning dependencies of target NE10_test_static
[100%] Building C object samples/CMakeFiles/NE10_test_static.dir/NE10_test.c.o
Linking C executable NE10_test_static
Undefined symbols for architecture armv7:
"_ne10_img_hresize_4channels_linear_neon", referenced from:
ne10_img_resize_bilinear_rgba_neon in libNE10.a(NE10_resize.c.o)
"_ne10_img_rotate_get_quad_rangle_subpix_rgba_neon", referenced from:
ne10_img_rotate_rgba_neon in libNE10.a(NE10_rotate.c.o)
"_ne10_img_vresize_linear_neon", referenced from:
ne10_img_resize_bilinear_rgba_neon in libNE10.a(NE10_resize.c.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [samples/NE10_test_static] Error 1
make[1]: *** [samples/CMakeFiles/NE10_test_static.dir/all] Error 2
make: *** [all] Error 2

potential Bug in NE10 library "ne10_fir_float_neon" function for certain input length and filter tap combinations

When testing Ne10 library FIR function, I run into numerical mismatch for certain input length and filter tap combinations when calling the NE10 library "ne10_fir_float_neon" function. NE10 library "ne10_fir_float_c" function gives correct result for those cases.

I further checked the NE10 library tests and couldn’t find any coverage for those cases.
When input length is multiple of 4, the filter output result is correct.

The filter output is wrong for following example cases
ne10_float32_t testCoeffs4_f32[4] = { 1 1 1 1 }; /* Filter coefficients '
ne10_float32_t test_input_f32[12] = {1 1 1 1 1 1 1 1 1 1 1 1}; /
input */
when input length is 7, I see wrong result at the last 3 output samples.
when input length is 8, the output is correct.
when input length is 9, run into error or wrong result with QEMU (A9), Segmentation fault happens when using beagle bone black board (with ARM Cortex-A8 processor, hard-float was enabled).

Linaro Tool Chain v4.8 is used.

any reply is appreciated!

  • Hong

NE10_init_math.c not included in Android.mk and build fail after adding it

target arm C: libne10 <= external/Ne10/modules/math/NE10_init_math.c
external/Ne10/modules/math/NE10_init_math.c: In function 'NE10_init_math':
external/Ne10/modules/math/NE10_init_math.c:75: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:76: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:77: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:166: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:167: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:168: warning: assignment from incompatible pointer type
external/Ne10/modules/math/NE10_init_math.c:205: error: control reaches end of non-void function
make: *** [out/target/product/generic/obj/STATIC_LIBRARIES/libne10_intermediates/modules/math/NE10_init_math.o] Error 1

NE10_init_math should return a value.

IIR running faster in C compared to neon?

Overall I seem to be getting massive improvements on Android (testing on Galaxy Nexus and Nexus 4) using NE10 for DSP. The NE10 demo app also runs fine and shows massive improvements in the NEON code vs the C code. This doesn't seem to happen with the IIR lattice filters though:

116 test_iir_lattice_case0 9: C version at 158431 us NE10 at 199207 us.
117 test_iir_lattice_case0 33: C version at 519060 us NE10 at 539234 us.

Is this expected? I get similar results running my own tests.

Imgproc rotation function and transformation matrix

I'm trying to use the "rotate" function (ne10_img_rotate_get_quad_rangle_subpix_neon) but I can't figure out what to put as the "rotation matrix". It seems this one takes 3 32-bit floats, which does not look as a regular transformation matrix to me (would be 2x2 f32 for 2D or 3x3 f32 for 3D). I gave a few tries and could see my image gets rotated to some angle (and also mirrored it seems...) but can't find proper matrix for a simple 90 degrees rotation.

Have you already tested this function ? If so can you provide sample test code?

Thanks a lot,

Greg

How to set up an NE10 project (ndk and completely native) under eclipse?

So here i am trying. New to eclipse, ndk, android and ne10.

Linux, downloaded the recent eclipse kepler, installed CDT, ADT, etc., downloaded and installed the recent SDK and NDK. Paths are set and everything is up to date.

I imported the NativeActivity sample from ndk/samples, modified it (just for understanding) to include cpufeatures.h aswell, but then i got a linker error with NE10.abs.asm(or neon).s. This is with the original Ne10/android/Android.mk file modified and included in the following Android.mk file.

Then i stripped the ne10_source_files and included everything and this error was gone.

The structure goes like this:

Android.mk

LOCAL_PATH := $(call my-dir)

ne10_neon_source :=
external_includes/NE10_modules/math/NE10_divc.c
external_includes/NE10_modules/math/NE10_subc.c
external_includes/NE10_modules/math/NE10_normalize.c
external_includes/NE10_modules/math/NE10_identitymat.neon.s
external_includes/NE10_modules/math/NE10_submat.asm.s
external_includes/NE10_modules/math/NE10_len.neon.s
external_includes/NE10_modules/math/NE10_rsbc.asm.s
external_includes/NE10_modules/math/NE10_add.c
external_includes/NE10_modules/math/NE10_normalize.asm.s
external_includes/NE10_modules/math/NE10_abs.neon.s
external_includes/NE10_modules/math/NE10_setc.neon.c
external_includes/NE10_modules/math/NE10_dot.neon.s
external_includes/NE10_modules/math/NE10_transmat.neon.s
external_includes/NE10_modules/math/NE10_divc.neon.c
external_includes/NE10_modules/math/NE10_dot.c
external_includes/NE10_modules/math/NE10_detmat.c.h
external_includes/NE10_modules/math/NE10_setc.asm.s
external_includes/NE10_modules/math/NE10_mul.neon.s
external_includes/NE10_modules/math/NE10_submat.c
external_includes/NE10_modules/math/NE10_addmat.c
external_includes/NE10_modules/math/NE10_addc.c
external_includes/NE10_modules/math/NE10_rsbc.neon.c
external_includes/NE10_modules/math/NE10_detmat.asm.s
external_includes/NE10_modules/math/NE10_subc.asm.s
external_includes/NE10_modules/math/NE10_sub.c
external_includes/NE10_modules/math/NE10_init_math.c
external_includes/NE10_modules/math/NE10_dot.asm.s
external_includes/NE10_modules/math/NE10_mulc.c
external_includes/NE10_modules/math/NE10_div.asm.s
external_includes/NE10_modules/math/NE10_identitymat.asm.s
external_includes/NE10_modules/math/NE10_mulcmatvec.c
external_includes/NE10_modules/math/NE10_detmat.neon.inc.s
external_includes/NE10_modules/math/NE10_mulcmatvec.asm.s
external_includes/NE10_modules/math/NE10_detmat.c
external_includes/NE10_modules/math/NE10_len.c
external_includes/NE10_modules/math/NE10_mlac.neon.c
external_includes/NE10_modules/math/NE10_cross.neon.s
external_includes/NE10_modules/math/test/test_suite_math.c
external_includes/NE10_modules/math/test/test_main.c
external_includes/NE10_modules/math/NE10_setc.c
external_includes/NE10_modules/math/NE10_len.asm.s
external_includes/NE10_modules/math/NE10_mul.c
external_includes/NE10_modules/math/NE10_mulmat.c
external_includes/NE10_modules/math/NE10_abs.c
external_includes/NE10_modules/math/NE10_addc.neon.c
external_includes/NE10_modules/math/NE10_mla.c
external_includes/NE10_modules/math/NE10_invmat.neon.s
external_includes/NE10_modules/math/NE10_add.asm.s
external_includes/NE10_modules/math/NE10_addc.asm.s
external_includes/NE10_modules/math/NE10_submat.neon.c
external_includes/NE10_modules/math/NE10_sub.neon.s
external_includes/NE10_modules/math/NE10_mulc.neon.c
external_includes/NE10_modules/math/NE10_mulmat.asm.s
external_includes/NE10_modules/math/NE10_detmat.neon.s
external_includes/NE10_modules/math/NE10_subc.neon.c
external_includes/NE10_modules/math/NE10_addmat.neon.c
external_includes/NE10_modules/math/NE10_abs.asm.s
external_includes/NE10_modules/math/NE10_identitymat.c
external_includes/NE10_modules/math/NE10_div.c
external_includes/NE10_modules/math/NE10_mulc.asm.s
external_includes/NE10_modules/math/NE10_mla.neon.s
external_includes/NE10_modules/math/NE10_transmat.c
external_includes/NE10_modules/math/NE10_mulmat.neon.s
external_includes/NE10_modules/math/NE10_mulcmatvec.neon.s
external_includes/NE10_modules/math/NE10_mlac.asm.s
external_includes/NE10_modules/math/NE10_addmat.asm.s
external_includes/NE10_modules/math/NE10_transmat.asm.s
external_includes/NE10_modules/math/NE10_rsbc.c
external_includes/NE10_modules/math/NE10_div.neon.s
external_includes/NE10_modules/math/NE10_add.neon.s
external_includes/NE10_modules/math/NE10_cross.c
external_includes/NE10_modules/math/NE10_mlac.c
external_includes/NE10_modules/math/NE10_normalize.neon.s
external_includes/NE10_modules/math/NE10_mul.asm.s
external_includes/NE10_modules/math/NE10_mla.asm.s
external_includes/NE10_modules/math/NE10_divc.asm.s
external_includes/NE10_modules/math/NE10_invmat.c
external_includes/NE10_modules/math/NE10_sub.asm.s
external_includes/NE10_modules/math/NE10_cross.asm.s
external_includes/NE10_modules/math/NE10_invmat.asm.s
external_includes/NE10_modules/NE10_init.c
external_includes/NE10_modules/dsp/NE10_rfft.c
external_includes/NE10_modules/dsp/NE10_iir.c
external_includes/NE10_modules/dsp/NE10_fft.h
external_includes/NE10_modules/dsp/NE10_fft_int32.neonintrinsic.c
external_includes/NE10_modules/dsp/NE10_fir.neon.s
external_includes/NE10_modules/dsp/NE10_fft_int32.neon.c
external_includes/NE10_modules/dsp/NE10_rfft.neon.c
external_includes/NE10_modules/dsp/test/test_suite_cfft.c
external_includes/NE10_modules/dsp/test/test_suite_iir.c
external_includes/NE10_modules/dsp/test/test_main.c
external_includes/NE10_modules/dsp/test/test_suite_fir_decimate.c
external_includes/NE10_modules/dsp/test/test_suite_fft_float32.c
external_includes/NE10_modules/dsp/test/test_suite_fft_int32.c
external_includes/NE10_modules/dsp/test/test_suite_fir_sparse.c
external_includes/NE10_modules/dsp/test/test_suite_fft_int16.c
external_includes/NE10_modules/dsp/test/test_suite_fir_lattice.c
external_includes/NE10_modules/dsp/test/test_suite_fir_interpolate.c
external_includes/NE10_modules/dsp/test/test_suite_rfft.c
external_includes/NE10_modules/dsp/test/test_suite_fir.c
external_includes/NE10_modules/dsp/NE10_fft_float32.neon.c
external_includes/NE10_modules/dsp/NE10_cfft.neon.s
external_includes/NE10_modules/dsp/NE10_fir_init.c
external_includes/NE10_modules/dsp/NE10_fft_float32.c
external_includes/NE10_modules/dsp/NE10_init_dsp.c
external_includes/NE10_modules/dsp/NE10_fft_float32.neon.s
external_includes/NE10_modules/dsp/NE10_fft_int32.c
external_includes/NE10_modules/dsp/NE10_iir.neon.s
external_includes/NE10_modules/dsp/NE10_fft_int32.neon.s
external_includes/NE10_modules/dsp/NE10_cfft_init.c
external_includes/NE10_modules/dsp/NE10_cfft.c
external_includes/NE10_modules/dsp/NE10_iir_init.c
external_includes/NE10_modules/dsp/NE10_fft_int16.neon.c
external_includes/NE10_modules/dsp/NE10_fir.c
external_includes/NE10_modules/dsp/NE10_fft_int16.neon.s
external_includes/NE10_modules/dsp/NE10_fft_float32.neonintrinsic.c
external_includes/NE10_modules/dsp/NE10_fft_int16.c
external_includes/NE10_modules/dsp/NE10_rfft_init.c
external_includes/NE10_modules/imgproc/NE10_resize.c
external_includes/NE10_modules/imgproc/NE10_resize.neon.c
external_includes/NE10_modules/imgproc/NE10_init_imgproc.c
external_includes/NE10_modules/imgproc/NE10_rotate.c
external_includes/NE10_modules/imgproc/test/test_suite_resize.c
external_includes/NE10_modules/imgproc/test/test_main.c
external_includes/NE10_modules/imgproc/test/test_suite_rotate.c
external_includes/NE10_modules/imgproc/NE10_rotate.neon.s
external_includes/NE10_modules/physics/NE10_physics.neon.s
external_includes/NE10_modules/physics/NE10_physics.c
external_includes/NE10_modules/physics/test/test_main.c
external_includes/NE10_modules/physics/test/test_suite_physics.c
external_includes/NE10_modules/physics/NE10_init_physics.c
external_includes/NE10_modules/physics/NE10_physics.neon.c \

include $(CLEAR_VARS)

LOCAL_MODULE := libne10

LOCAL_C_INCLUDES := $(LOCAL_PATH)/external_includes/Ne10_common
$(LOCAL_PATH)/external_includes/Ne10_inc

LOCAL_SRC_FILES += $(ne10_source_files)

include $(BUILD_STATIC_LIBRARY)

include $(CLEAR_VARS)

LOCAL_MODULE := native-activity
LOCAL_SRC_FILES := main.c

LOCAL_STATIC_LIBRARIES := libne10

LOCAL_LDLIBS := -llog -landroid -lEGL -lGLESv1_CM
LOCAL_STATIC_LIBRARIES := android_native_app_glue
cpufeatures
libne10

LOCAL_CFLAGS := -D_ARM_ASSEM_

If you don't want the compiler to automatically make you code faster and !#parallel remove "-O2 -ftree-vectorize"

LOCAL_CFLAGS += -mfloat-abi=softfp -mfpu=neon -march=armv7 -mthumb -O2 -ftree-vectorize

LOCAL_CFLAGS += -mfpu=neon -march=armv7 -mthumb -O2 -ftree-vectorize

LOCAL_ARM_MODE := arm

include $(BUILD_SHARED_LIBRARY)

$(call import-module,android/native_app_glue)
$(call import-module,android/cpufeatures)

$(call import-module,libne10)

But as soon as i try to include NE10.h and NE10_types.h i get this error:
jni/main.c:19:51: fatal error: external_includes/ne10_inc/NE10_types.h: No such file or directory

I tried absolute (from workspace, project-root and root) and relative paths for those includes but the error stays the same.

Here's my main.c file btw. (the relevant parts):

ifndef ANDROID

define ANDROID

endif

I don't know why the includes are not showing up in my post, so here the pseudo way:
Include string, stdlib, stdio, errno, jni, EGL/egl, GLES/gl android/sensor, android/log, android_native_app_glue, cpu-features, NE10_types, NE10 (.h of course)

define LOGI(...) ((void)android_log_print(ANDROID_LOG_INFO, "native-activity", __VA_ARGS))

define LOGW(...) ((void)android_log_print(ANDROID_LOG_WARN, "native-activity", __VA_ARGS))

...
// Make sure glue isn't stripped.
app_dummy();
...

//END_INCLUDE(all)

I tried Paths and settings, filters and/or preprocessor llinks and paths, but nothing changed.

When i set up the include path like this:

include "../out of workspace/into repository/inc/NE10_types.h"

include "../out of workspace/into repository/inc/NE10.h"

i get an error in the first included header (math) stating that it can't include NE10_types.h

What am i missing or doing wrong?

Eclipse does not make things easier as it's caching so many things. I am 'working' on this for days now before asking here.

Could you help me with that?
The point is that i'm trying to include from the repository without being forced to copy files after a new git pull.
I would be happy if you could show me how to just include ne10 without building a static library (but static would be perfect, just as you provided).

Oh and i tried all the other options like LOCAL_EXPORT__, LOCAL_INC__, LOCAL_SRC*, etc.

Please help.

Image rotation runtime issue

hello, I get a runtime error in NE10_rotate.neon.s. This happens at the following section.
GetQuadrangleSubPixLoopX:
/* to avoid that ixs/iys is negative. this will result in bad address of pTr0/pTr1 */
vabs.s32 dPosIS, dPosIS
vmov ixs, iys, dPosIS
lsl ixs, ixs, #2
mla tmp0, srcStep, iys, ixs
add pTr0, pSrc, tmp0
add pTr1, pTr0, srcStep

                vld1.8         {dIn0_01234567}, [pTr0]            <<<------
                 vld1.8         {dIn1_01234567}, [pTr1]          <<<-------

with the pTr0 and pTr1 go beyond the address. I am not sure whether this has to be related to the comment in this file "to avoid that ixs/iys is negative....."
I am on armv7 using QNX momentics.

I appreciate if you may help. Thanks!

Sina

Real FFT Length

Hi Ne10 team,

I have started using Ne10 for an audio project on Android, and I am very enthusiastic with your project.

I would like to be able to use the real FFT for other length, namely 64, 256, 1024 points.
I thought that I could probably generate a larger Twiddle factors Table in NE10_rfft_init.c and modify the FFT implementation to handle it. Is there an issue in the implementation that would make it hard to do those changes? (I have little experience with ARM assembly and intrinsics).

Many thanks,

Amaury

ne10_data_bitreversal_float32 called but not implemented

I might be missing something obvious here but...

ne10_data_bitreversal_float32 is used in modules/dsp/NE10_fft_float32.neonintrinsic.c however, the function is not defined in the current master branch 277e62d. I think the function body was removed in c3bbc61 for the rewrite of the FFT code.

I can not use methods NEON

Hello, I am doing a project with the library NE10, recently I could compile it with the help of NeonBuild example, but in my case I call neon methods programmed in assembler, instead of calling methods c as does the example, but when compile I get the following error in the file mytest:

undefined reference to "add_float_neon".

Inside the file myTests.h add # include "inc/NE10_neon.h" and the method I'm calling it "add_float_neon" File "source/NE10_add.neon.s" , happens? I am doing wrong?

Thank you very much.

Sorry for my English.

IIR biquads implementation on NEON/ Alignment in instructions .

I am trying to write IIR code for NEON. I am not able to properly vectorize the IIR biquad code.There is no normal IIR filter implemented in the library . The implemented Lattice IIR filter seems be vectorizing friendly . Are there any specific difficulties in vectorizing IIR biquad or in general IIR code due to the feedback? Are there any plans to add IIR filter/biquads to the existing library.

One more thing that I observe is that by adding alignment in instructions the performance increases many fold.
ex : vld q0.f32 ,[r1!@128 ] is much better than vld q0.f32 ,[r1!]
I actually found a decrease of 10000 cycles by adding alignment.

CMake fails on windows

Hello,

I try to crosscompile NE10 on windows 7 64Bit.

CMake is configured to use linaro GCC crosscompiler arm-linux-gnueabihf.

When running CMake the linker fails with error message
arm-linux-gnueabihf/bin/ld.exe: unrecognized option '--out-implib'

Would somebody please point out how to correctly configure the cmake file to build on windows.

thank you very much.
Stefan

Here is the full log output of cmake:

The C compiler identification is GNU 4.9.2
The ASM compiler identification is GNU
Found assembler: C:/Program Files (x86)/Linaro/gcc-linaro-arm-linux-gnueabihf-4.9-2014.08/bin/arm-linux-gnueabihf-as.exe
Check for working C compiler: C:/Program Files (x86)/Linaro/gcc-linaro-arm-linux-gnueabihf-4.9-2014.08/bin/arm-linux-gnueabihf-gcc.exe
Check for working C compiler: C:/Program Files (x86)/Linaro/gcc-linaro-arm-linux-gnueabihf-4.9-2014.08/bin/arm-linux-gnueabihf-gcc.exe -- broken
CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.0/Modules/CMakeTestCCompiler.cmake:61 (message):
  The C compiler "C:/Program Files
  (x86)/Linaro/gcc-linaro-arm-linux-gnueabihf-4.9-2014.08/bin/arm-linux-gnueabihf-gcc.exe"
  is not able to compile a simple test program.

  It fails with the following output:
   Change Dir: C:/Users/.../workspace/Ne10/build/CMakeFiles/CMakeTmp

  Run Build Command:"C:/MinGW/bin/mingw32-make.exe"
  "cmTryCompileExec3169079659/fast"

  C:/MinGW/bin/mingw32-make.exe -f
  CMakeFiles\cmTryCompileExec3169079659.dir\build.make
  CMakeFiles/cmTryCompileExec3169079659.dir/build

  mingw32-make.exe[1]: Entering directory
  'C:/Users/.../workspace/Ne10/build/CMakeFiles/CMakeTmp'

  "C:\Program Files (x86)\CMake\bin\cmake.exe" -E cmake_progress_report
  C:\Users\...\workspace\Ne10\build\CMakeFiles\CMakeTmp\CMakeFiles 1

  Building C object
  CMakeFiles/cmTryCompileExec3169079659.dir/testCCompiler.c.obj

  C:\PROGRA~2\Linaro\GCC-LI~1.08\bin\AREFB3~1.EXE -o
  CMakeFiles\cmTryCompileExec3169079659.dir\testCCompiler.c.obj -c
  C:\Users\...\workspace\Ne10\build\CMakeFiles\CMakeTmp\testCCompiler.c

  Linking C executable cmTryCompileExec3169079659.exe

  "C:\Program Files (x86)\CMake\bin\cmake.exe" -E cmake_link_script
  CMakeFiles\cmTryCompileExec3169079659.dir\link.txt --verbose=1

  "C:\Program Files (x86)\CMake\bin\cmake.exe" -E remove -f
  CMakeFiles\cmTryCompileExec3169079659.dir/objects.a

  C:\PROGRA~2\Linaro\GCC-LI~1.08\bin\ARM-LI~2.EXE cr
  CMakeFiles\cmTryCompileExec3169079659.dir/objects.a
  @CMakeFiles\cmTryCompileExec3169079659.dir\objects1.rsp

  C:\PROGRA~2\Linaro\GCC-LI~1.08\bin\AREFB3~1.EXE -Wl,--whole-archive
  CMakeFiles\cmTryCompileExec3169079659.dir/objects.a -Wl,--no-whole-archive
  -o cmTryCompileExec3169079659.exe
  -Wl,--out-implib,libcmTryCompileExec3169079659.dll.a
  -Wl,--major-image-version,0,--minor-image-version,0 

  c:/progra~2/linaro/gcc-li~1.08/bin/../lib/gcc/arm-linux-gnueabihf/4.9.2/../../../../arm-linux-gnueabihf/bin/ld.exe:
  unrecognized option '--out-implib'

  c:/progra~2/linaro/gcc-li~1.08/bin/../lib/gcc/arm-linux-gnueabihf/4.9.2/../../../../arm-linux-gnueabihf/bin/ld.exe:
  use the --help option for usage information

  collect2.exe: error: ld returned 1 exit status

  CMakeFiles\cmTryCompileExec3169079659.dir\build.make:88: recipe for target
  'cmTryCompileExec3169079659.exe' failed

  mingw32-make.exe[1]: *** [cmTryCompileExec3169079659.exe] Error 1

  mingw32-make.exe[1]: Leaving directory
  'C:/Users/.../workspace/Ne10/build/CMakeFiles/CMakeTmp'

  Makefile:117: recipe for target 'cmTryCompileExec3169079659/fast' failed
  mingw32-make.exe: *** [cmTryCompileExec3169079659/fast] Error 2

  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:29 (project)

Configuring incomplete, errors occurred!
See also "C:/Users/.../workspace/Ne10/build/CMakeFiles/CMakeOutput.log".
See also "C:/Users/.../workspace/Ne10/build/CMakeFiles/CMakeError.log".

Missing header file

I was trying to build the Ne10 library in Xilinx SDK. I have followed the steps mentioned in Xilinx Wiki Tech Tip on building the Ne10 library.

While building i am getting an error " can't open NE10header.s for reading: No such file or directory"
The path is shown to be within the 'modules-->math"

Can anybody help me on this issue??

Any example for ues Ne10 imgproc function on Android?

I want to use imgproc function on Android,and the source code of android only contain math method.
I create a Android.mk like

LOCAL_PATH:= $(call my-dir)

ne10_neon_source :=
source/NE10_abs.neon.s
source/NE10_add.neon.s
source/NE10_addc.neon.c
source/NE10_addmat.neon.c
source/NE10_cfft.neon.s
source/NE10_cross.neon.s
source/NE10_detmat.neon.s
source/NE10_divc.neon.c
source/NE10_div.neon.s
source/NE10_dot.neon.s
source/NE10_fft_float32.neon.c
source/NE10_fft_float32.neon.s
source/NE10_fft_int16.neon.c
source/NE10_fft_int16.neon.s
source/NE10_fft_int32.neon.c
source/NE10_fft_int32.neon.s
source/NE10_detmat.neon.inc.s
source/NE10_fir.neon.s
source/NE10_identitymat.neon.s
source/NE10_iir.neon.s
source/NE10_invmat.neon.s
source/NE10_len.neon.s
source/NE10_mla.neon.s
source/NE10_mlac.neon.c
source/NE10_mul.neon.s
source/NE10_mulc.neon.c
source/NE10_mulcmatvec.neon.s
source/NE10_mulmat.neon.s
source/NE10_normalize.neon.s
source/NE10_physics.neon.c
source/NE10_physics.neon.s
source/NE10_resize.neon.c
source/NE10_rfft.neon.c
source/NE10_rotate.neon.s
source/NE10_rsbc.neon.c
source/NE10_setc.neon.c
source/NE10_sub.neon.s
source/NE10_subc.neon.c
source/NE10_submat.neon.c
source/NE10_transmat.neon.s \

ne10_source_files :=
source/NE10_abs.asm.s
source/NE10_add.asm.s
source/NE10_addc.asm.s
source/NE10_addmat.asm.s
source/NE10_cross.asm.s
source/NE10_detmat.asm.s
source/NE10_div.asm.s
source/NE10_divc.asm.s
source/NE10_dot.asm.s
source/NE10_identitymat.asm.s
source/NE10_invmat.asm.s
source/NE10_len.asm.s
source/NE10_mla.asm.s
source/NE10_mlac.asm.s
source/NE10_mul.asm.s
source/NE10_mulc.asm.s
source/NE10_mulcmatvec.asm.s
source/NE10_mulmat.asm.s
source/NE10_normalize.asm.s
source/NE10_rsbc.asm.s
source/NE10_setc.asm.s
source/NE10_sub.asm.s
source/NE10_subc.asm.s
source/NE10_submat.asm.s
source/NE10_transmat.asm.s
source/NE10_abs.c
source/NE10_add.c
source/NE10_addc.c
source/NE10_addmat.c
source/NE10_cfft.c
source/NE10_cfft_init.c
source/NE10_cross.c
source/NE10_detmat.c
source/NE10_div.c
source/NE10_divc.c
source/NE10_dot.c
source/NE10_fft_float32.c
source/NE10_fft_float32.neonintrinsic.c
source/NE10_fft_int16.c
source/NE10_fft_int32.c
source/NE10_fir.c
source/NE10_fir_init.c
source/NE10_identitymat.c
source/NE10_iir.c
source/NE10_iir_init.c
source/NE10_init.c
source/NE10_init_dsp.c
source/NE10_init_imgproc.c
source/NE10_init_math.c
source/NE10_init_physics.c
source/NE10_invmat.c
source/NE10_len.c
source/NE10_mla.c
source/NE10_mlac.c
source/NE10_mul.c
source/NE10_mulc.c
source/NE10_mulcmatvec.c
source/NE10_mulmat.c
source/NE10_normalize.c
source/NE10_physics.c
source/NE10_resize.c
source/NE10_rfft.c
source/NE10_rfft_init.c
source/NE10_rotate.c
source/NE10_rsbc.c
source/NE10_setc.c
source/NE10_sub.c
source/NE10_subc.c
source/NE10_submat.c
source/NE10_transmat.c \

include $(CLEAR_VARS)

LOCAL_CPP_EXTENSION := .cc

LOCAL_CFLAGS := -D_ARM_ASSEM_

LOCAL_ARM_MODE := arm

LOCAL_C_INCLUDES := $(LOCAL_PATH)/headers/
$(LOCAL_PATH)/inc

LOCAL_SRC_FILES :=
$(ne10_source_files)
myTest.c

LOCAL_LDLIBS := -lm -llog

If you don't want the compiler to automatically make you code faster and !#parallel remove "-O2 -ftree-vectorize"

LOCAL_CFLAGS += -mfloat-abi=softfp -mfpu=neon -march=armv7 -mthumb -O2 -ftree-vectorize

ifeq ($(ARCH_ARM_HAVE_NEON),true)
LOCAL_SRC_FILES += $(ne10_neon_source)
endif

LOCAL_MODULE_TAGS := eng
LOCAL_MODULE := lightItUpWithNEON

include $(BUILD_SHARED_LIBRARY)

Finally got some error when ndk-build.

Any one can provide the example source code ?

smoke test failed

I try to build Ne10 test as static-linked binary and run it on two platforms, qemu 1.3.0 and Exynos 4210. They both failed the test with precision mis-match problem

For math test :
test_divc_case0
test_mulc_case0

For dsp test :
test_iir_lattice_case0

Problems compiling Ne10 for iOS

I'm trying to build Ne10 for iOS, and encountering a number of issues.

The toolkit being used for this is the iOS 6.0 SDK, which includes the llvm-gcc-4.2 compiler suite. (A newer clang-3.1 compiler suite is also available, but we can't use it for the bulk of our legacy code). Build is done using cmake with the http://code.google.com/p/ios-cmake/ toolchain.

The first problem I encountered looked like this:

[ 57%] Building C object vendor/projectNe10-Ne10-d151b7c/modules/CMakeFiles/NE10.dir/math/NE10_addc.neon.c.o
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c: In function ‘ne10_addc_float_neon’:
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: error: incompatible types in initialization
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: excess elements in struct initializer
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: (near initialization for ‘n_cst’)
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: excess elements in struct initializer
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: (near initialization for ‘n_cst’)
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: excess elements in struct initializer
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: (near initialization for ‘n_cst’)
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: error: incompatible types in initialization
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: excess elements in struct initializer
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: (near initialization for ‘n_tmp_src’)
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: error: incompatible types in initialization
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: excess elements in struct initializer
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:41: warning: (near initialization for ‘n_tmp_cst’)
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c: In function ‘ne10_addc_vec2f_neon’:
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:51: error: incompatible types in initialization
[... more of the same  ...]
make[3]: *** [vendor/projectNe10-Ne10-d151b7c/modules/CMakeFiles/NE10.dir/math/NE10_addc.neon.c.o] Error 1
make[2]: *** [vendor/projectNe10-Ne10-d151b7c/modules/CMakeFiles/NE10.dir/all] Error 2
make[1]: *** [vendor/projectNe10-Ne10-d151b7c/modules/CMakeFiles/NE10.dir/rule] Error 2
make: *** [NE10] Error 2

This happens because llvm-gcc provides two versions of arm_neon.h, as described here: https://llvm.org/viewvc/llvm-project?view=rev&sortby=log&sortdir=down&revision=103811. So I was able to resolve these errors by adding

add_definitions("-DARM_NEON_GCC_COMPATIBILITY=1")

at the top level of my CMakeFiles.txt hierarchy.

After doing that, however, the code still doesn't compile with the following less-than-helpful diagnostic:

[ 57%] Building C object vendor/projectNe10-Ne10-d151b7c/modules/CMakeFiles/NE10.dir/math/NE10_addc.neon.c.o
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c: In function ‘ne10_addc_vec3f_neon’:
/Users/trivee/Work/trunk/vendor/projectNe10-Ne10-d151b7c/modules/math/NE10_addc.neon.c:61: error: Initializer is a non-const vector type
make[3]: *** [vendor/projectNe10-Ne10-d151b7c/modules/CMakeFiles/NE10.dir/math/NE10_addc.neon.c.o] Error 1
make[2]: *** [vendor/projectNe10-Ne10-d151b7c/modules/CMakeFiles/NE10.dir/all] Error 2
make[1]: *** [vendor/projectNe10-Ne10-d151b7c/modules/CMakeFiles/NE10.dir/rule] Error 2
make: *** [NE10] Error 2

The error message seems to imply that the compiler only supports initializing vector-typed structs with compile-time constants, which factor.h obviously doesn't do. The relevant check in the compiler source code (e.g. http://repo.or.cz/w/llvm-gcc-4.2.git/blob/3f95bc38b35672b8423a8a35615086cf6b7b564d?f=gcc/c-typeck.c, line 6190 and below) appears to be Apple-specific.

Any suggestions on how to proceed?

Ne10types.h

Though it has been mentioned that the 'ne10_cfft_radix4_instance_f32_t' has been defined in the Ne10types.h, i couldn't find it..

It became a tedious job to add all missing instances to the header file

error: undefined reference to '__assert_fail'

Hello,

I build correctly (I presume) the NE10 library on linux.
I use some ne10 math functions in my own library, which build ok, on linux.
I'm now on mac, and calling my libraries, along with the ne10 library, in android.mk. And when I launch an ndk-build, I got some:
ld: /path/to/myproject/jni/../libs/build/libNE10.a(NE10_addc.c.o): in function ne10_addc_float_c:NE10_addc.c(.text+0x3a): error: undefined reference to '__assert_fail'

It does that when I ndk-build on linux too,
and also if I call the neon functions.

my android.mk:
/////////////////////////////////////////////////
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := myLib
LOCAL_SRC_FILES := $(LOCAL_PATH)/../libs/build/libmyLib.a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../incl
include $(PREBUILT_STATIC_LIBRARY)
#2 other libs ....

include $(CLEAR_VARS)
LOCAL_MODULE := libNE10
LOCAL_SRC_FILES := $(LOCAL_PATH)/../libs/build/libNE10.a
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_LDLIBS := -llog
LOCAL_STATIC_LIBRARIES := myLib ...2 otherlibs... libgnustl_static libNE10 cpufeatures

LOCAL_MODULE := foo
LOCAL_SRC_FILES := foo.cpp
include $(BUILD_SHARED_LIBRARY)
$(call import-module,android/cpufeatures)
/////////////////////////////////////////////////

Thanks!

Complex FFT Conformance testing

Using some known answer tests from another project I find that many of the 16 bit complex FFT functions are giving the wrong answer. I have modified the Ne10 conformance testing for 16 bit complex FFT to find the worst result amongst the individual output values.

See below for more details.

With your original conformance test (modified to print out SNRs) the SNRs are

----------test_fft_c2c_1d_int16_conformance start
FFT size 4
FFT forward unscaled size 4, SNR inf
FFT inverse unscaled size 4, SNR inf
FFT forward scaled size 4, SNR 69.288
FFT inverse scaled size 4, SNR 69.288
FFT size 8
FFT forward unscaled size 8, SNR 57.224
FFT inverse unscaled size 8, SNR 61.993
FFT forward scaled size 8, SNR 62.381
FFT inverse scaled size 8, SNR 63.630
FFT size 16
FFT forward unscaled size 16, SNR 58.361
FFT inverse unscaled size 16, SNR 57.899
FFT forward scaled size 16, SNR 60.473
FFT inverse scaled size 16, SNR 62.324
FFT size 32
FFT forward unscaled size 32, SNR 60.943
FFT inverse unscaled size 32, SNR 60.358
FFT forward scaled size 32, SNR 58.101
FFT inverse scaled size 32, SNR 57.066
FFT size 64
FFT forward unscaled size 64, SNR 57.410
FFT inverse unscaled size 64, SNR 57.696
FFT forward scaled size 64, SNR 54.565
FFT inverse scaled size 64, SNR 54.674
FFT size 128
FFT forward unscaled size 128, SNR 58.646
FFT inverse unscaled size 128, SNR 59.541
FFT forward scaled size 128, SNR 50.330
FFT inverse scaled size 128, SNR 50.689
FFT size 256
FFT forward unscaled size 256, SNR 56.172
FFT inverse unscaled size 256, SNR 55.958
FFT forward scaled size 256, SNR 46.857
FFT inverse scaled size 256, SNR 46.777
FFT size 512
FFT forward unscaled size 512, SNR 58.343
FFT inverse unscaled size 512, SNR 58.434
FFT forward scaled size 512, SNR 43.908
FFT inverse scaled size 512, SNR 43.891
FFT size 1024
FFT forward unscaled size 1024, SNR 55.729
FFT inverse unscaled size 1024, SNR 55.455
FFT forward scaled size 1024, SNR 40.641
FFT inverse scaled size 1024, SNR 40.811
FFT size 2048
FFT forward unscaled size 2048, SNR 58.097
FFT inverse unscaled size 2048, SNR 57.980
FFT forward scaled size 2048, SNR 37.833
FFT inverse scaled size 2048, SNR 37.880
FFT size 4096
FFT forward unscaled size 4096, SNR 55.668
FFT inverse unscaled size 4096, SNR 55.329
FFT forward scaled size 4096, SNR 34.611
FFT inverse scaled size 4096, SNR 34.670
1 run 0 failed

If I modify your test to use the worst SNR of a single point's real or imaginary part I get

----------test_fft_c2c_1d_int16_conformance start
FFT size 4
FFT forward unscaled size 4, SNR 99999.000
FFT inverse unscaled size 4, SNR 99999.000
FFT forward scaled size 4, SNR 65.747
FFT inverse scaled size 4, SNR 65.747
FFT size 8
FFT forward unscaled size 8, SNR 37.385
FFT inverse unscaled size 8, SNR 43.346
FFT forward scaled size 8, SNR 52.770
FFT inverse scaled size 8, SNR 46.729
FFT size 16
FFT forward unscaled size 16, SNR 41.845
FFT inverse unscaled size 16, SNR 43.825
FFT forward scaled size 16, SNR 34.320
FFT inverse scaled size 16, SNR 34.320
FFT size 32
FFT forward unscaled size 32, SNR 39.085
FFT inverse unscaled size 32, SNR 44.861
FFT forward scaled size 32, SNR 13.979
test_fft_c2c_1d_int16_conformance Line 247 Should have been false
FFT inverse scaled size 32, SNR 34.860
FFT size 64
FFT forward unscaled size 64, SNR 27.959
FFT inverse unscaled size 64, SNR 29.148
FFT forward scaled size 64, SNR 6.021
test_fft_c2c_1d_int16_conformance Line 247 Should have been false
FFT inverse scaled size 64, SNR 7.959
test_fft_c2c_1d_int16_conformance Line 266 Should have been false
FFT size 128
FFT forward unscaled size 128, SNR 23.227
FFT inverse unscaled size 128, SNR 28.519
FFT forward scaled size 128, SNR 0.000
test_fft_c2c_1d_int16_conformance Line 247 Should have been false
FFT inverse scaled size 128, SNR 0.000
test_fft_c2c_1d_int16_conformance Line 266 Should have been false
FFT size 256
FFT forward unscaled size 256, SNR -3.522
test_fft_c2c_1d_int16_conformance Line 209 Should have been false
FFT inverse unscaled size 256, SNR -9.542
test_fft_c2c_1d_int16_conformance Line 228 Should have been false
FFT forward scaled size 256, SNR -2.499
test_fft_c2c_1d_int16_conformance Line 247 Should have been false
FFT inverse scaled size 256, SNR -2.499
test_fft_c2c_1d_int16_conformance Line 266 Should have been false
FFT size 512
FFT forward unscaled size 512, SNR -9.542
test_fft_c2c_1d_int16_conformance Line 209 Should have been false
FFT inverse unscaled size 512, SNR -7.044
test_fft_c2c_1d_int16_conformance Line 228 Should have been false
FFT forward scaled size 512, SNR 6.021
test_fft_c2c_1d_int16_conformance Line 247 Should have been false
FFT inverse scaled size 512, SNR 0.000
test_fft_c2c_1d_int16_conformance Line 266 Should have been false
FFT size 1024
FFT forward unscaled size 1024, SNR -18.722
test_fft_c2c_1d_int16_conformance Line 209 Should have been false
FFT inverse unscaled size 1024, SNR 2.499
test_fft_c2c_1d_int16_conformance Line 228 Should have been false
FFT forward scaled size 1024, SNR -6.021
test_fft_c2c_1d_int16_conformance Line 247 Should have been false
FFT inverse scaled size 1024, SNR 0.000
test_fft_c2c_1d_int16_conformance Line 266 Should have been false
FFT size 2048
FFT forward unscaled size 2048, SNR -12.041
test_fft_c2c_1d_int16_conformance Line 209 Should have been false
FFT inverse unscaled size 2048, SNR -21.584
test_fft_c2c_1d_int16_conformance Line 228 Should have been false
FFT forward scaled size 2048, SNR -9.542
test_fft_c2c_1d_int16_conformance Line 247 Should have been false
FFT inverse scaled size 2048, SNR -9.542
test_fft_c2c_1d_int16_conformance Line 266 Should have been false
FFT size 4096
FFT forward unscaled size 4096, SNR -12.279
test_fft_c2c_1d_int16_conformance Line 209 Should have been false
FFT inverse unscaled size 4096, SNR -1.214
test_fft_c2c_1d_int16_conformance Line 228 Should have been false
FFT forward scaled size 4096, SNR -12.041
test_fft_c2c_1d_int16_conformance Line 247 Should have been false
FFT inverse scaled size 4096, SNR -12.041
test_fft_c2c_1d_int16_conformance Line 266 Should have been false
1 run 25 failed

I have used

/**

  • @brief Calculation of SNR
  • @param ne10_fft_cpx_int16_t* Pointer to the reference buffer
  • @param ne10_fft_cpx_int16_t* Pointer to the test buffer
  • @param ne10_uint32_t total number of samples
  • @return ne10_float32_t SNR, max of real or imaginary
  • The function returns the worst SNR (real or imaginary part) of each individual sample
  • in the test data when compared to the reference data
    */

ne10_float32_t CAL_SNR_CPX16 (ne10_fft_cpx_int16_t *pRef, ne10_fft_cpx_int16_t *pTest, ne10_uint32_t buffSize)
{
ne10_int32_t EnergySignal, EnergyError;
ne10_uint32_t i;
double SNR;
double minSNR = DBL_MAX;
double toLog;

for (i = 0; i < buffSize; i++)
{
  // promote from int16 to int32 before multiplication below
  ne10_int32_t refR = pRef[i].r;
  ne10_int32_t refI = pRef[i].i;
  ne10_int32_t tstR = pTest[i].r;
  ne10_int32_t tstI = pTest[i].i;
  ne10_int32_t difR = refR-tstR;
  ne10_int32_t difI = refI-tstI;

    // check real part
    EnergySignal = refR * refR; // 32 bit results, overflow should not occur
    EnergyError = difR * difR;

    if(EnergyError > 0)
    {
        toLog = ((double)EnergySignal) / ((double)EnergyError);
        if(toLog > 0.0)
        {
              SNR = 10.0 * log10 (toLog);

              if(SNR < minSNR)
                    minSNR = SNR;
        }
    }

    // check imaginary part
    EnergySignal = refI * refI;
    EnergyError = difI * difI;

    if(EnergyError > 0)
    {
        toLog = ((double)EnergySignal) / ((double)EnergyError);
        if(toLog > 0.0)
        {
              SNR = 10.0 * log10 (toLog);

              if(SNR < minSNR)
                    minSNR = SNR;
        }
    }

}

if (minSNR == DBL_MAX)
  minSNR = 99999; // to save a long printout

return (ne10_float32_t)minSNR;

}

in place of your

    snr = CAL_SNR_FLOAT32 (out_c_tmp, out_neon_tmp, (fftSize / 2 + 1) * 2);
    assert_false ( (snr < SNR_THRESHOLD_INT16));

I have

    snr = CAL_SNR_CPX16 ((ne10_fft_cpx_int16_t*)out_c, (ne10_fft_cpx_int16_t*)out_neon, fftSize);
    printf ("FFT forward scaled size %d, SNR %.3f\n", fftSize, snr);
    assert_false ( (snr < SNR_THRESHOLD_INT16));

Here is some more information ...

I have been doing some known answer testing of the 16 bit complex to complex scaled FFT _neon functions in Ne10.
I am getting some failures, forward and inverse, at sizes 32, 64, 128 512 and 2048, the _c functions in Ne10 give the expected results.

Here is a set of 32 point test data that is failing. This is copied to 64 byte aligned buffers before calling the Ne10 Neon FFT function.

static const ne10_fft_cpx_int16_t input[32] =
{
{ 25908, 13775 }, { 14971, 25956 }, { -6975, -6723 }, { 26468, -12543 }, { -7333, 4625 }, { -9597, 15315 }, { 16079, 15491 }, { 15691, -23638 },
{ -19650, -14903 }, { 11825, 26944 }, { -8661, 1157 }, { -22677, 23653 }, { -19460, 1177 }, { 10147, -4029 }, { 12297, -26842 }, { -23066, -23274 },
{ -30946, -9497 }, { -12633, 12929 }, { -23418, -6891 }, { -28322, 11517 }, { 14741, -19746 }, { 12715, 7583 }, { 10151, 2883 }, { -26326, 2973 },
{ -22557, 23769 }, { -2357, 30800 }, { 14933, 2029 }, { 11791, 12635 }, { -8381, -7299 }, { -26992, 18579 }, { -19701, -26184 }, { -12415, 18644 }
};

static const ne10_fft_cpx_int16_t expected_output[32] =
{
{ -4180, 2840 }, { 1867, 1340 }, { -1774, -4803 }, { 1766, -163 }, { 2392, 1085 }, { -249, -5008 }, { 3475, 4094 }, { 2673, 4352 },
{ 1929, -624 }, { 2263, 3830 }, { 633, -812 }, { 2087, -916 }, { 1224, -1539 }, { -1855, -2455 }, { -1517, -1479 }, { -1857, -2706 },
{ -381, -6163 }, { 709, 2332 }, { 2841, -1450 }, { 3757, -1416 }, { -2553, 3749 }, { 2187, 1652 }, { 4930, 1854 }, { 2218, -3987 },
{ -5828, 2935 }, { -635, -621 }, { 1821, 2086 }, { 8206, 7293 }, { -4414, 1004 }, { 258, 4021 }, { -1117, -636 }, { 5032, 4088 }
};

Actual Output values are

[{-4181, 2838}, {3475,3746},{-1775,-4804},{1200,-3004}

….

{-4414,1003},{3098,4585},{-1118,-637},{2624,2478}]

You will see that it is every other output value that looks to be in error.

My platform is Linux an an Altera ArriaVSoc which host an Arm Cortex A9

Memory alignment

Would it be best practice to follow the memory allocation techniques used in the test files? NE10_SRC_ALLOC/NE10_DST_ALLOC ?

How to build it using ndk-build?

Hello,

I saw Android.mk sits in the root of code base. Should I create a jni directory and move Android.mk inside of jni in order to build this library?

Kind regards,
Yimin

version number of NE10 library and published API deprecation process

Glad to see the significantly improved FFT/IFFT algorithms in recent contributions . However, for users who build their applications with the "old" FFT/IFFT API (radix-4 based), the recent removing of those FFT/IFFT function APIs may cause immediate compatibility issue. is there any plan to add version number to NE10 library so that it is easy to track the API changes starting from which released version ? one suggestion for published function API removing, please consider a user friendly API deprecation process, e.g., warn, discourage usage before deleting. Thanks!

mulcmatvec_cm4x4f_v4f_neon returns incorrect result

mulcmatvec_cm4x4f_v4f_neon with count=1 returns the incorrect result. The correct result is returned when using the c equivalent mulcmatvec_cm4x4f_v4f_c.

Test Data:
cst = [1 -1 0.5 2
2 6 -7 0.5
0.1 0.4 -3 -0.25
0.1 1.0 0.25 - 1](matrix stored opengl column major order)

src = [1.0 0.5 2.0 1.0](as a column vector)

I am expecting mulcmatvec_cm4x4f_v4f_neon(dst, cst, src, 1)

to return dst = [3.5 -8.5 -5.95 0.1]

The return value for the neon function is something different but the expected dst IS returned for mulcmatvec_cm4x4f_v4f_c

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.