Closed jackmott closed 5 years ago
I've done some basic testing, running scalar through it's paces with fractal brownian motion and cellular noise and all is well. unpack and the multiply operations still need finishing though.
also, I was using the libm crate to handling things like floor/ceil/sqrt, since I want to keep simdeez as nostd, however there are some bugs relating to overflow behavior in that crate, and fixes haven't been merged in months, so I pulled the code directly into simdeez with overflow fixes. There might be more that are needed. And if libm gets active again or goes 1.0 we could revert back to using the crate.
have this pretty well sorted now.
I've got the bulk of a scalar fallback implemented in branch "scalar". This will let you generate normal scalar code on platforms that have no simd at all. This will let SIMDeez build on ARM, which currently it can't since there is no NEON instruction set yet.
We need to make sure all the cast and conversion operations make sense, and figure out how to do unpack and mullhi. We also need some test coverage.