/* { dg-do compile } */ | |
/* { dg-options "-O2 -mno-avx2 -mavx -mtune-ctrl=avx256_move_by_pieces" } */ | |
extern char *dst, *src; | |
void | |
foo (void) | |
{ | |
__builtin_memcpy (dst, src, 33); | |
} | |
/* { dg-final { scan-assembler-times "vmovdqu\[ \\t\]+\[^\n\]*%ymm" 2 } } */ | |
/* No need to dynamically realign the stack here. */ | |
/* { dg-final { scan-assembler-not "and\[^\n\r]*%\[re\]sp" } } */ | |
/* Nor use a frame pointer. */ | |
/* { dg-final { scan-assembler-not "%\[re\]bp" } } */ |