4
A
回答
9
通常你会想要做这样的事情
void *x;
asm(".. code that writes to register %0" : "=r"(x) : ...
int r = some_function(x);
asm(".. code that uses the result..." : ... : "r"(r), ...
也就是说,你不想做的内联汇编函数调用的。这样你就不必担心调用约定或堆栈管理的细节。
相关问题
- 1. 转换一个GCC内联汇编德尔福内联汇编
- 2. GCC内联汇编:调用DWORD PTR
- 3. 使用SSE2内在函数和gcc内联汇编器
- 4. 传递给gcc内联汇编程序的调用const函数地址(avr-gcc)
- 5. GCC内联汇编:约束
- 6. GCC内联汇编错误
- 7. MSVC内联汇编GCC的
- 8. 我的第一个汇编程序错误(GCC内联汇编)
- 9. GCC汇编内联:与只有内联汇编代码
- 10. 使用内联汇编与GCC
- 11. arm gcc中的内联汇编
- 12. GCC内联汇编中的标签
- 13. GCC:内联汇编中的putchar(char)
- 14. 使用内联汇编器从GCC的共享库调用函数
- 15. 在gcc内联汇编程序(ARM)中使用数组
- 16. 基本GCC内联汇编问题
- 17. 将gcc内联汇编转换为ml64
- 18. gcc内联汇编上下文切换
- 19. GCC内联汇编的SPARC架构
- 20. GCC C++和内联汇编代码?
- 21. gcc内在vs内联汇编:哪个更好?
- 22. 来自GCC内联汇编的系统调用
- 23. 在GCC内联汇编中使用C++引用
- 24. 何时在扩展GCC内联汇编中使用earlyclobber约束?
- 25. 如何在GCC x86内联汇编中使用地址常量
- 26. 禁止在g ++(gcc)或clang(llvm)中使用内联汇编
- 27. 如何在icc中使用gcc内联汇编?
- 28. C2244当试图从内联汇编调用pow函数
- 29. D内联汇编程序:函数调用出错
- 30. 如何从内联汇编程序调用Win32 API函数?
在裸露的骨头C中先执行然后使用'gcc -S'来获取模板代码,以便适应您的需求。 –
Paul R,很好的解决方案,但我想要一个更通用的解决方案。 – MetallicPriest
您不应该从内联汇编中调用函数。 GCC不会尝试解释代码,因此它可能会导致错误,例如在没有进行函数调用的情况下不设置堆栈帧。 – ughoavgfhw