/* APPLE LOCAL file CW asm blocks */ /* { dg-do assemble { target i?86*-*-darwin* } } */ /* { dg-options { -fasm-blocks -msse3 } } */ /* Radar 4211971 */ void foo() { const int Aligned64data_last_mult = 4; asm { movd mm1, [-1][eax][esi] // middle row, misaligned to prevent GP movd mm0, [-1][eax] // top row, misaligned to prevent GP movd mm2, [-1][eax][esi*2] // bottom row, misaligned to prevent GP movq [edi][Aligned64data_last_mult], mm0 lea eax, [esi][ecx*2] // ptr to 2 rows down in sPtr movd mm4, [esi] movd mm5, [esi][ecx] movd [-4][edi], mm3 // store 4 results } }