我正在使用clang进行一些内联汇编(基本上是通过使用各种参考材料来猜测),并尝试将%rdi
的内容移动到由%rdx
指向的地址。然而,我的语法都不起作用,比如这个:
mov %rdi, ptr %rdx
提供:
error: expected relocatable expression
有什么问题吗?在clang中,内联汇编的语法是什么来实现这个功能?谢谢。
我正在使用clang进行一些内联汇编(基本上是通过使用各种参考材料来猜测),并尝试将%rdi
的内容移动到由%rdx
指向的地址。然而,我的语法都不起作用,比如这个:
mov %rdi, ptr %rdx
提供:
error: expected relocatable expression
有什么问题吗?在clang中,内联汇编的语法是什么来实现这个功能?谢谢。
我不确定clang的汇编语法具体是什么,但gcc/gas使用的AT&T语法如下:
movq %rdi, (%rdx)
mov qword ptr [rdx], rdi
gcc -S some-c-file.c
的输出学习到的。 - Michael Burr