[Liboil] Is liboil still alive?

Thiago Galesi thiagogalesi at gmail.com
Fri Feb 20 11:22:07 PST 2009


>
> We were hoping that liboil would obviate the need for us to muck in
> assembly.  :-)
>
>
> I do see *some* assembly in liboil/*/*copy*.c.  Does anyone know if any of
> these have non-temporal copies?  There's no real comments to explain, and I
> have no idea what the assembly for non-temporal copies looks like...

Nowadays assembly is not needed as much since the invention of
intrinsics (that's the _mm_store_si128 kind of thing), it's like a C
function, but 'lighter'

http://en.wikipedia.org/wiki/Intrinsic_function

Non-temporal ops have NT in their name, like movntq

By the way here's a gcc example of non-temporal ops

/* Stores the data in A to the address P without polluting the caches.  */
static __inline void __attribute__((__always_inline__))
_mm_stream_pi (__m64 *__P, __m64 __A)
{
  __builtin_ia32_movntq ((unsigned long long *)__P, (unsigned long long)__A);
}

(this is in include/xmmintrin.h)

You can find these in GCCs manual and includes


-- 
-
Thiago Galesi


More information about the Liboil mailing list