Ramana Radhakrishnan wrote: > This looks OK to me. Looking at the ISA documents and the variants of > the vldn instructions your summary is correct. The alignment specifier > should not be greater than the memory size being transferred and > checking this in this form is OK .
Thanks, Ramana! I've checked in the following patch. Bye, Ulrich 2012-04-16 Ulrich Weigand <ulrich.weig...@linaro.org> * config/arm/arm.c (arm_print_operand): Fix invalid alignment hints for 'A' operand types. === modified file 'gcc/config/arm/arm.c' --- gcc/config/arm/arm.c 2012-03-29 10:35:24 +0000 +++ gcc/config/arm/arm.c 2012-03-31 15:29:54 +0000 @@ -17880,9 +17880,9 @@ memsize = MEM_SIZE (x); /* Only certain alignment specifiers are supported by the hardware. */ - if (memsize == 16 && (align % 32) == 0) + if (memsize == 32 && (align % 32) == 0) align_bits = 256; - else if (memsize == 16 && (align % 16) == 0) + else if ((memsize == 16 || memsize == 32) && (align % 16) == 0) align_bits = 128; else if (memsize >= 8 && (align % 8) == 0) align_bits = 64; -- Dr. Ulrich Weigand GNU Toolchain for Linux on System z and Cell BE ulrich.weig...@de.ibm.com