Hi, PR51819 is a case where we were actually putting out alignment hints for the wrong memory size. The attached patch corrects this and another latent issue that I spotted.
Committed after testing on arm-linux-gnueabi with Neon configurations. cheers Ramana 2012-01-20 Ramana Radhakrishnan <ramana.radhakrish...@linaro.org> PR target/51819 * config/arm/arm.c (arm_print_operand): Correct output of alignment hints for neon loads and stores.
Index: gcc/config/arm/arm.c =================================================================== --- gcc/config/arm/arm.c (revision 183333) +++ gcc/config/arm/arm.c (working copy) @@ -17711,9 +17711,9 @@ /* Only certain alignment specifiers are supported by the hardware. */ if (memsize == 16 && (align % 32) == 0) align_bits = 256; - else if ((memsize == 8 || memsize == 16) && (align % 16) == 0) + else if (memsize == 16 && (align % 16) == 0) align_bits = 128; - else if ((align % 8) == 0) + else if (memsize >= 8 && (align % 8) == 0) align_bits = 64; else align_bits = 0;