SIMD support...

Brad Roberts braddr at puremagic.com
Fri Jan 6 11:16:33 PST 2012


On 1/6/2012 11:06 AM, Manu wrote:
> On 6 January 2012 20:25, Brad Roberts <braddr at puremagic.com <mailto:braddr at puremagic.com>> wrote:
> 
>     How is making __v128 a builtin type better than defining it as:
> 
>     align(16) struct __v128
>     {
>        ubyte[16] data;
>     }
> 
> 
> Where in that code is the compiler informed that your structure should occupy a SIMD registers, and apply SIMD ABI
> conventions?

Good point, those rules would need to be added.  I'd argue that it's not unreasonable to allow any properly aligned and
sized types to occupy those registers.  Though that's likely not optimal for cases that won't actually use the
operations that modify them.  However, a counter example, it'd be a lot easier to write a memcpy routine that uses them
without having to resort to asm code under this theoretical model.



More information about the Digitalmars-d mailing list