On Dec 12, 2007 6:27 PM, Nuno Lucas <[EMAIL PROTECTED]> wrote:
> The thing is that not all CPU's "raise" an exception when doing an
> un-aligned access. Some just return the wrong value and don't give any
> sign that something wrong occurred. The check of the pointer alignment
> before every read access would kill any performance, even on fast
> CPU's (and we are talking of 200MHz CPU's here).
>
> I would just go for the memcpy() aproach. It will allow the CPU to
> optimize the best it can the copy operation.

I would agree. memcpy() or read the individual bytes and shift them
around to form a 32 bit value. The original source is the problem, not
the compiler. Other people tend to agree, I've been googling a bit and
have come across this
http://lecs.cs.ucla.edu/wiki/index.php/XScale_alignment which might
help to identify similar (potential) problems in the source and
includes some useful suggestions on how to fix them.


Kind regards,
Carsten Sorensen

-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Cegcc-devel mailing list
Cegcc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cegcc-devel

Reply via email to