http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52666
--- Comment #2 from Georg-Johann Lay <gjl at gcc dot gnu.org> 2012-03-22 13:00:53 UTC --- Created attachment 26954 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26954 scal-to-vec1.c.149t.optimized Dump created with $ avr-gcc -mmcu=atmega128 -Os -fdump-tree-optimized In the source from attachment 26953 there is int main (int argc, char *argv[]) { vector(8, short) v0 = {one, 1, 2, 3, 4, 5, 6, 7}; vector(8, short) v1; v1 = 2 & v0; check (short, 8, v0, v1, 2, &, l); return 0; } But the .optimized dump has: <bb 51>: v1 = { 0, 0, 0, 0, 0, 0, 0, 0 }; shouldn't there be non-zero values for the vector components that are 2 mod 4 or 3 mod 4?