lorenzhs / ssssort

Super Scalar Sample Sort in modern C++
MIT License
20 stars 4 forks source link

Don't store Compare in Classifier + more tidbits. #9

Closed Morwenn closed 8 years ago

Morwenn commented 8 years ago

This commit ensures that a comparison function is always passed to every function, but never explicitly stored. It seems to generate a better assembly output.

There are several other minor things: less template parameters, more local type aliases instead. I also removed the explicit passing of template parameters to functions since they were not needed. That, and I turned the std::enable_if_t into static assertions that should give more understandable error messages.

lorenzhs commented 8 years ago

Thanks – in the future, could you keep commits as a logical unit (in this case, one commit for the Compare stuff and one for the templates)? That makes it easier to review and understand (and revert if something breaks).

Morwenn commented 8 years ago

Yeah, I only locally reworked the compare branch at first, changing stuff on-the-fly to check, but I was a bit too lazy to roll all the extras back. I generally do try to keep commits as logical units, but laziness won yesterday, sorry .___.

lorenzhs commented 8 years ago

No worries ;)