Libyuv编译遇到'asm'中未知寄存器名称'ymm1'的asm错误

时间:2014-10-05 02:29:59

标签: assembly cpu-registers libyuv

Libyuv编译在'asm'中遇到未知寄存器名称'ymm1'的asm错误

我试图在Ubuntu14中编译libyuv(似乎是最新的)。当我继续制作它时,存在停止编译过程的asm相关错误。它报道:

make -j7 V=1 -f linux.mk
g++ -c -O2 -fomit-frame-pointer -Iinclude/ source/row_posix.cc -o source/row_posix.o
g++ -c -O2 -fomit-frame-pointer -Iinclude/ source/scale_mips.cc -o source/scale_mips.o
g++ -c -O2 -fomit-frame-pointer -Iinclude/ source/scale_posix.cc -o source/scale_posix.o
g++ -c -O2 -fomit-frame-pointer -Iinclude/ source/video_common.cc -o source/video_common.o
source/row_posix.cc: In function ‘void libyuv::CopyRow_AVX(const uint8*, uint8*, int)’:
source/row_posix.cc:3290:4: error: unknown register name ‘ymm1’ in ‘asm’
   );
    ^
source/row_posix.cc:3290:4: error: unknown register name ‘ymm0’ in ‘asm’
make: *** [source/row_posix.o] 错误 1

怎么了?

1 个答案:

答案 0 :(得分:1)

看起来你没有做任何事情来将-mavx传递给编译器。 ymm*是AVX-256寄存器。