This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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



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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]