Registered Member
|
Eigen folks,
I believe I uncovered a bug with Eigen-3.0.0. When building for ARM NEON ( g++ flags of "-mfpu=neon -mfloat-abi=softfp" ) code that uses complex floats, I get the following error:
Doing a bit of sleuthing, I think that include/eigen3/Eigen/src/Core/arch/NEON/Complex.h's packet_traits<std::complex<float> > needs 'AlignedOnScalar' defined. I defined this, set it as '1', and am able to get past this compiling error. I would like to confirm this is indeed a bug, and that I applied the correct fix. Here are my example code:
Here is the output of 'diff' on the modified include/eigen3/Eigen/src/Core/arch/NEON/Complex.h file:
|
Moderator
|
this is the right fix. the pb is that's quite difficult for us to test ARM NEON on a regular basis. (fix committed)
|
Registered Member
|
Gaël,
Thanks for the quick reply. I didn't intend this question to a criticism of your ARM NEON support. I'm very happy that porting my code from Intel to ARM has been relatively pain-less. I do have a few more questions / bugs forthcoming. I'll post those as separate messages. Do you, or any of the active Eigen developers have access to an ARM NEON device? |
Moderator
|
indeed, main developers do not have access to an ARM NEON device. I did some tests with emulators but that's very painful and limited to some very simple tests...
|
Registered Member
|
I'm sorry to hear about that.
Would either of the following options be viable for testing & development:
|
Moderator
|
|
Registered Member
|
I'm unsure if I could get my employer to agree to give you direct access to my development board.
Have you looked into any UNIX development clusters online? Doing a quick search, I found the GNU GCC Compiler-Farm: http://gcc.gnu.org/wiki/CompileFarm It is available to any GNU-like licensed software developers. Maybe this could be a way to get access to an ARM NEON, as well as other platform, machines? |
Moderator
|
Registered users: Bing [Bot], Google [Bot], q.ignora, watchstar