使用SSE命令编译程序集

时间:2014-10-19 15:01:47

标签: assembly nasm sse

我试图用nasm编译一个汇编文件并将其与golink链接。 该文件非常简单,只包含一次SSE命令调用。

当我在没有SSE命令的情况下编译和链接文件时,可执行文件正常运行,但是当文件包含SSE命令时程序崩溃了,所以我假设问题出在某处。使用该命令。

这是代码 - hello.asm:

extern malloc
global main
section .text
main:
push rbp            ; Save the stack
mov rbp, rsp
push rax            ; Save the registers

push 1024;
call malloc
and  rax,0xFFFFFFFFFFFFF000

movntdq [rax], xmm5;

pop rax
mov rsp,rbp
pop rbp

mov rax,0
ret

编译的代码:( yasm - 同样的问题)

nasm -f win64 hello.asm -o hello.obj

并与:

相关联
golink.exe /console /entry main hello.obj MSVCRT.dll kernel32.dll

输出是hello.exe,每次运行时都会崩溃。

这里有什么问题?

提前致谢!

0 个答案:

没有答案