Thank you for the bug report. I've confirmed this with gcc-linaro-4.6-2011.10 on ARM:
michaelh@ursa4:~/linaro/bugs$ /tools/toolchains/arch/armv7l/gcc-linaro-4.6-2011.10-armv7l-natty-cbuild186-ursa3-cortexa9r1/bin/gcc -O3 -S imgconvert.c
imgconvert.c: In function 'yuv420p_to_yuv422':
imgconvert.c:32:1: internal compiler error: in neon_disambiguate_copy, at config/arm/arm.c:20315
The work-around is to compile at -O3 or to disable the vectoriser using -fno-tree-vectorize. This fault exists but is not exposed in gcc-linaro-4.6-2011.09.
Thank you for the bug report. I've confirmed this with gcc-linaro- 4.6-2011. 10 on ARM:
michaelh@ ursa4:~ /linaro/ bugs$ /tools/ toolchains/ arch/armv7l/ gcc-linaro- 4.6-2011. 10-armv7l- natty-cbuild186 -ursa3- cortexa9r1/ bin/gcc -O3 -S imgconvert.c to_yuv422' : te_copy, at config/ arm/arm. c:20315
imgconvert.c: In function 'yuv420p_
imgconvert.c:32:1: internal compiler error: in neon_disambigua
The work-around is to compile at -O3 or to disable the vectoriser using -fno-tree- vectorize. This fault exists but is not exposed in gcc-linaro- 4.6-2011. 09.