adams381 wrote:

> > * DataLayout computes wrong alignment for aligned(N) and packed SIMD structs
> 
> This sounds like a problem we should fix.

I looked into this — the issue is __attribute__((aligned(N))) is an AST-level 
attribute that overrides alignment beyond what member types imply. DataLayout 
computes alignment purely from member types, so it can never account for 
aligned(N) on its own. We'd need to store the override somewhere regardless. 
With the module-level approach, record_align in the attribute serves that 
purpose cleanly.

https://github.com/llvm/llvm-project/pull/188300
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to