http://www.agner.org/optimize/blog/read.php?i=142
It is so important to economize the use of the micro-op cache that I would give the advice never to unroll loops.
http://lkml.iu.edu/hypermail/linux/kernel/0008.2/0171.html
by eliminating all instances of Duff's Device from the XFree86 4.0 server, the server shrunk in size by _half_ _a_ _megabyte_ (!!!), and was faster to boot
> Don't try to be smarter than an over-clever C compiler that recognizes loops that implement block move or block clear and compiles them into machine idioms.
This made me laugh. "with diligence it is possible to make anything run slowly" should be one of the truths carved into an obelisk outside every CompSci department or at least on a t-shirt.
I'm really, really curious about what that code is.
https://github.com/nraynaud/webgcode/blob/gh-pages/interpola...
One problem is the reset of the functions, I just created a makeshift exception, but I don't know how far I want to deviate form the norm.
I still don't know if it's a good idea, but that's what personal projects are for.