GCC中是否有stdcall的等效项?

GCC中是否有stdcall的等效项?,gcc,assembly,kernel,stdcall,Gcc,Assembly,Kernel,Stdcall,我正在使用GCC开发自己的内核,当从asm代码调用C函数时,我必须自己添加esp,xx。经过一些搜索,我发现stdcall是微软的发明,不能在GCC中使用它。有什么简便的方法做这项工作吗 linux中是否有stdcall的等价物 linux环境中的内核 等等,这是你自己的内核还是Linux内核?因为如果它是你自己的内核,它就不再是Linux了 如果您在Linux上工作,您将希望坚持常规的调用约定,并编写与之匹配的程序集 如果您正在开发自己的内核,您可以做任何您想做的事情。GCC和Clang都支

我正在使用GCC开发自己的内核,当从asm代码调用C函数时,我必须自己添加esp,xx。经过一些搜索,我发现
stdcall
是微软的发明,不能在GCC中使用它。有什么简便的方法做这项工作吗

linux中是否有stdcall的等价物

linux环境中的内核

等等,这是你自己的内核还是Linux内核?因为如果它是你自己的内核,它就不再是Linux了

  • 如果您在Linux上工作,您将希望坚持常规的调用约定,并编写与之匹配的程序集

  • 如果您正在开发自己的内核,您可以做任何您想做的事情。GCC和Clang都支持ix86处理器上的
    stdcall
    调用约定,例如

     #define stdcall __attribute__((stdcall))
    
    见:


  • 谢谢!我正在用gcc编译自己的内核,有人说linux-gcc中没有stdcall。但它与您的代码配合得很好!既然您提到它是您自己的内核,我就删除了对Linux的引用。