[Bug target/91043] GCC produces unaligned vmovdqa vector data access

hhaim at cisco dot com gcc-bugzilla@gcc.gnu.org
Mon Jul 1 17:03:00 GMT 2019


--- Comment #19 from Hanoch Haim <hhaim at cisco dot com> ---
After some investigation, I think it is not a gcc issue,  please verify. 
One of the internal object does not include a 64B alignment.

#define __rte_cache_aligned __attribute__((__aligned__(64)));

class CTimeHistogram {

} __rte_cache_aligned;

class CCPortLatency {
     CTimeHistogram  m_hist;  
} __rte_cache_aligned;  <<= without this, it is not aligned while the code
generation assumed it is aligned !

class Root {

        CCPortLatency port;

} __rte_cache_aligned;

Is it valid? why the code generation assumed the CCPortLatency is aligned
because one of its internal is aligned?

More information about the Gcc-bugs mailing list