I'm working on some improvements for VCL functions. I started out just looking at horizontal sums, using single-uop instructions instead of the slow haddps. I found some other things to improve, too (most dramatically, testing for all-ones or all-zero without PTEST).
Obviously every change needs to be tested to make sure I didn't break something; either correctness or portability to different compilers. I'm not looking forward to writing my own tests for functions I want to change, so is there an existing test suite? Should I just send code that compiles and looks right, and let you test it on your private test suite?
I put some of the changes I'm working on up on github where everyone can easily take a look at some of the changes I'm talking about. (I put a descriptive commit message in the hsum one that isn't finished to describe some code re-arrangement to factor out repeated code. The f256 hsum commit is the kind of change from hadd that I'm talking about.) |