On 12/15/2011 04:37 PM, bearophile wrote:
Timon Gehr:

Fixed array assignment certainly won't cause any trouble.<

I don't know about the D front end, but those arrays have caused performance 
problems in my D2 code. Later I have taken more care, assigning items one after 
the other, writing:

int[3] a = void;
a[0] = ...
a[1] = ...
a[2] = ...

Instead of:
int[3] a = [..., ..., ...];


I usually use:

    static _a = [1, 2, 3];
    int[3] a = _a;

This certainly should be fixed, what I wanted to say is, there are not many fixed size arrays in a compiler front-end.


An issue is that 32 bit x86 architectures do not necessarily provide any SSE 
support.

Most PCs have SSE2 support. Lot of PCs today have SSE3 too.


GCC will not use XMM registers by default either.

LLVM-GCC (and probably Clang too) use SSE registers on default on 32 bit 
Windows. And with modern GCC-MinGW I usually compile code with those registers 
too on 32 bit Windows, using the right compiler switches.



Reply via email to