[Bug tree-optimization/35653] [4.3/4.4 Regression]: gcc-4.3 -O3/-ftree-vectorize regression: incorrect code generation

victork at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sun Mar 23 17:21:00 GMT 2008



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



More information about the Gcc-bugs mailing list