core.simd woes

Iain Buclaw ibuclaw at ubuntu.com
Mon Oct 8 16:54:21 PDT 2012


On 9 October 2012 00:38, F i L <witte2008 at gmail.com> wrote:
> Iain Buclaw wrote:
>>
>> I'm refusing to implement any intrinsic that is tied to a specific
>> architecture.
>
>
> I see. So the __builtin_ia32_***() functions in gcc.builtins are
> architecture agnostic? I couldn't find much documentation about them on the
> web. Do you have any references you could pass on?
>
> I guess it makes sense to just make std.simd the lib everyone uses for a
> "base-line" support of SIMD and let DMD do what it wants with it's core.simd
> lib. It sounds like gcc.builtins is just a layer above core.simd anyways.
> Although now it seems that DMD's std.simd will need a bunch of 'static if
> (architectureX) { ... }' for every GDC builtin... wounder if later that
> shouldn't be moved to (and standerized) a 'core.builtins' module or
> something.
>
> Thanks for the explanation.

gcc.builtins does something different depending on architecure, and
target cpu flags.  All I do is take what gcc backend gives to the
frontend, and hash it out to D.  What I meant is that I won't
implement a frontend intrinsic that...

-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';


More information about the Digitalmars-d mailing list