¿Cómo compilar el ensamblado avx en la máquina virtual Ubuntu?

¿Cómo compilar el ensamblado avx en la máquina virtual Ubuntu?

Estoy intentando compilar algunas instrucciones avx.

{
        double* dst = NULL;
    const int* ait = a;
    int N=0;
    const int* aend = a+N;
    __asm__ __volatile__ (
        "0:\n"
        "vmovupd (%1),%%xmm0\n"
        "vcvtdq2pd %%xmm0,%%ymm1\n"
        "vmovapd %%ymm1,(%0)\n"
        "addq $16,%1\n"
        "addq $32,%0\n"
        "cmpq %2,%1\n"
        "jb 0b\n"
        : "=r"(dst),"=r"(ait),"=r"(aend)
        : "0"(dst),"1"(ait),"2"(aend)
        : "%xmm0","%ymm1","memory"
        );
    }

y me sale este error:

error: unknown register name ‘%ymm1’ in ‘asm’

Aunque uso banderas -mmmxy -msse2como se indica en estepublicación de desbordamiento de pilano me funciona.

¿Qué tengo que hacer?

información relacionada