vectorial
vectorial copied to clipboard
Specsuite fails when using -O[1,2,3], but passes when using -O0
./specsuite
.................................................................................................E..Simd type: gnu
..............................................
1) Failed assertation at spec/spec_simd4x4f.cpp:347:
simd4x4f(simd4f(-0.707107, -0.408248, -0.57735, 0),
simd4f(0, 0.816497, -0.57735, 0),
simd4f(0.707107, -0.408248, -0.57735, 0),
simd4f(-1.41421, -2.98023e-08, 3.4641, 1)) == simd4x4f(simd4f(-0.707107, -0.408248, -0.57735, 0),
simd4f(0, 0.816497, -0.57735, 0),
simd4f(0.707107, -0.408248, -0.57735, 0),
simd4f(-1.41421, 0, 3.4641, 1)) (with tolerance of 40)
What could be the reason that causes this?
Interesting. Which compiler/platform are you on? It doesn't happen on my clang/osx build, though the gnu-simd thing is a lesser used version so there might be some issues with it.
It was on another machine so I'll have to get back at this tomorrow.
Meanwhile I tested on another one and it runs OK. (gcc 4.4.7 and make FORCE_GNU=1)
So the machine spec is,
kernel 2.6.32-358.el6.i686 32-bit
OS CentOS 6.4
gcc/g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
I couldn't get a repro with gcc 4.4.7 on osx (from macports), so can't investigate further. On the assertion errors, it seems that one of the values is just slightly more inaccurate than what is expected. I'm tempted to close the issue as wontfix, if this doesn't happen more often (anywhere else).