我正在尝试在macOS 10.12 Sierra上实施AES-NI。以下是我用来检查AES-NI支持的代码:
.section __TEXT,__text
.globl _main
_main:
mov %eax, 1;
CPUID;
test %ecx,0x2000000;
以下是我用来编译它的命令:
as aes.asm -o aes.o
ld asm.o -e _main -o aes
它始终以EXC_BAD_ACCESS (code=1, address=0x1)
失败。我尝试用lldb运行它,它指向行mov %eax, 1
。我也尝试使用C asm内联的这段代码。结果是一样的。我也尝试在Windows机器上运行此代码(作为asm内联,在Clion中使用Cygwin编译)并且它有效。我错过了什么吗?检查AES-NI支持的过程是否因macOS而异?