
On 12/10/10 20:21, DE wrote:
on 12.10.2010 at 21:38 joel falcou wrote :
When no SSEx stuff are enabled, pack<T,N> falls back to boost::array emulation. If you wan to ship code for various SSex flavor, just make various compialtion fo your kernel code then dynamically laod the correct one. There is no way you can check at runtime before calling EVERY function, this is far too costly.
an idea immediately arises in my mind: what if it could be possible to force a particular backend e.g. sse2 and make it propagate down the call stack? this way you write generic code once and are able to (pre)compile for (expected) platforms/technologies then you just switch once depending on some circumstances and call the appropriate instance (say sse2 forced) at least this way you write the source once and possibly don't rewrite it for every circumstance
It's like what we do already