__restrict

Peter Alexander peter.alexander.au at gmail.com
Wed Oct 19 14:10:55 PDT 2011


On 19/10/11 3:08 PM, Robert Jacques wrote:
> On Wed, 19 Oct 2011 07:58:15 -0400, Manu <turkeyman at gmail.com> wrote:
>> I agree, that is certainly more important :)
>>
>> I'm mainly just curious to know about how the main contributors feel
>> about
>> these things, and whether these things will be implemented/planned, or if
>> they violate some fundamental language principles...
>> Basically, I really want to start some major work in D, but before
>> investing
>> into the language, I want to know that important features are
>> recognised and
>> have a long term plan...
>
> Well, __restrict was mainly added to C (IIRC), to allow loop
> vectorization. In D, we have explicit array operations, which carry a
> lot of the same caveats as __restrict, except are checkable.

It's for far more than vectorization. Any place that has redundant loads 
can benefit from __restrict.

I recommend this presentation on the subject: 
http://www.slideshare.net/guest3eed30/memory-optimization

It's about memory optimizations. Aliasing issues start at slide 35.




More information about the Digitalmars-d mailing list