Something needs to happen with shared, and soon.

Alex Rønne Petersen alex at lycus.org
Tue Nov 13 18:03:19 PST 2012


On 14-11-2012 03:00, deadalnix wrote:
> Le 14/11/2012 02:36, Alex Rønne Petersen a écrit :
>> On 14-11-2012 02:33, Walter Bright wrote:
>>> On 11/13/2012 3:43 PM, Alex Rønne Petersen wrote:
>>>> FWIW, these are the types and type categories I'd expect shared
>>>> load/store to
>>>> work on, on any architecture:
>>>>
>>>> * ubyte, byte
>>>> * ushort, short
>>>> * uint, int
>>>> * ulong, long
>>>> * float, double
>>>> * pointers
>>>> * slices
>>>> * references
>>>> * function pointers
>>>> * delegates
>>>>
>>>
>>> Not going to portably work on long, ulong, double, slices, or delegates.
>>>
>>> (The compiler should issue an error where it won't work, and allow it
>>> where it does, letting the user decide what to do about the non-working
>>> cases.)
>>
>> I amended that (see my other post). 8-byte loads/stores can be done
>> atomically on all relevant architectures today. Andrei linked a page a
>> while back that explained how to do it on x86, ARM, MIPS, and PowerPC
>> (if memory serves), but I can't seem to find it again...
>>
>
> http://www.cl.cam.ac.uk/~pes20/cpp/cpp0xmappings.html

Thanks, exactly that. No MIPS, though. I guess I'm going to have to go 
dig through their manuals.

-- 
Alex Rønne Petersen
alex at lycus.org
http://lycus.org


More information about the Digitalmars-d mailing list