------- Comment #9 from victork at gcc dot gnu dot org  2008-03-23 17:21 -------
> Accessing the memory as uint32_t is done for performance reasons,

In this particular case you write a 4-byte constant 0x04000400. Changing this
to
a loop running double number of iterations of 2-byte (unsigned short) writes of
0x0400 will enable to vectorizer to handle this loop effectively.

> If the pointer is not aligned at 4 bytes, then uint32_t can't be done?

It can be done on x86, but it is less effective than access to an aligned
pointer.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35653

Reply via email to