https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120201
--- Comment #16 from Drea Pinski <pinskia at gcc dot gnu.org> ---
(In reply to H.J. Lu from comment #14)
> (In reply to Drea Pinski from comment #13)
> > > (gdb) call debug (new_stmt)
> > > _7 = MEM <vector(64) unsigned char> [(char * {ref-all})_3];
> >
> > This is not printing out the alignment of the type of the mem. You have to
> > do add -gimple to get that. Which is what I did in comment #3
>
> (gdb) call debug (srcmem)
> <ssa_name 0x7fffe9541840
> type <vector_type 0x7fffe953c498
> type <integer_type 0x7fffe953cf18 public unsigned QI
> size <integer_cst 0x7fffe961b3c0 constant 8>
> unit-size <integer_cst 0x7fffe961b3d8 constant 1>
> align:8 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
> 0x7fffe953cf18 precision:8 min <integer_cst 0x7fffe953b660 0> max
> <integer_cst 0x7fffe953b648 255>>
> unsigned V64QI
> size <integer_cst 0x7fffe961b9d8 constant 512>
> unit-size <integer_cst 0x7fffe9792048 constant 64>
> align:512 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
> 0x7fffe953c498 nunits:64>
> ^^^^ align:512 can't be right.
>
> def_stmt _7 = MEM <vector(64) unsigned char> [(char * {ref-all})_3];
> version:7>
> (gdb)
But that is the alignment of the ssa name. Not the alignment of the load.
Try -fdump-tree-all-gimple and look at the dump that way.