> This makes it less likely (for example through the PRE path) to trigger
> target bugs like PR68273 where targets use type alignment of call
> arguments to decide on the ABI.
> 
> Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk.

Thanks.  I think that we can also avoid this issue by teaching SRA not to 
over-align scalar types, I don't see any point in doing that.  It's done in:

  misalign = (misalign + offset) & (align - 1);
  if (misalign != 0)
    align = (misalign & -misalign);
  if (align != TYPE_ALIGN (exp_type))
    exp_type = build_aligned_type (exp_type, align);

  mem_ref = fold_build2_loc (loc, MEM_REF, exp_type, base, off);

-- 
Eric Botcazou

Reply via email to