On Fri, Jul 03, 2015 at 04:26:02PM +0100, Alan Lawrence wrote: > These include tests of structs, scalars, and vectors - only general-purpose > registers are affected by the ABI rules for alignment, but we can restrict > the vector test to use the base AAPCS. > > Prior to this patch, align2.c, align3.c and align_rec1.c were failing (the > latter showing an internal inconsistency, the first two merely that GCC did > not obey the new ABI). > > With this patch, the align_rec2.c fails, and also > gcc.c-torture/execute/20040709-1.c at -O0 only, both because of a latent bug > where we can emit strd/ldrd on an odd-numbered register in ARM state, fixed > by the second patch. > > gcc/ChangeLog: > > * config/arm/arm.c (arm_needs_doubleword_align): Drop any outer > alignment attribute, exploring one level down for aggregates.
Can you please also add the testcase from https://gcc.gnu.org/ml/gcc-patches/2015-05/msg00278.html to your patch set? Or I can commit it separately after it is approved (if it is). Jakub