------- 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