我正在使用GCC處理自己的內核,當從asm代碼調用C函數時,我必須自己做add esp,xx
。經過一番搜索後,我發現stdcall
是微軟的發明,不能在GCC中使用它。有沒有方便的方法來完成這項工作?在GCC中是否有任何stdcall的等價物?
9
A
回答
5
在linux中是否有任何等效的stdcall?
我在Linux環境
等待內核,這是你自己的內核,或Linux內核?因爲如果它是你自己的內核,那不再是Linux了。
如果您正在使用Linux,您將需要堅持使用常規調用約定並編寫要匹配的程序集。
如果你正在研究你自己的內核,你可以做任何你想做的事情。 GCC和鏘對IX86的處理器都支持
stdcall
調用約定,例如,#define stdcall __attribute__((stdcall))
+0
非常感謝!我用gcc編譯我自己的內核,有人說在linux gcc中沒有stdcall。但它適用於您的代碼! – babel92
相關問題
- 1. 在windows中是否有一個gcc等價物?
- 2. 在C++(gcc)中是否有TryParse等價物?
- 3. 在MySQL中是否有任何等價物(Oracle)
- 4. fortran中的Btest函數,python中是否有任何等價物?
- 5. gcc中的#pragma等價物是什麼?
- 6. 在Python中是否有sessionInfo()等價物?
- 7. 在Java中是否有TweenMax等價物
- 8. 在java中是否有array_intersect()等價物?
- 9. 在Doxygen中是否有@inheritDoc等價物?
- 10. 在Python中是否有Rake等價物?
- 11. 在Ramda中是否有R.notEquals等價物?
- 12. 在Windows中是否有XEmbed等價物?
- 13. 接縫中的@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)是否有任何等價物?
- 14. Android中是否有MethodHandle的等價物?
- 15. 在SQL Server上檢查,PostgreSQL上是否有任何等價物?
- 16. 廚師中是否有puppet_nist等價物?
- 17. Postgres:是否有任何row_to_json等價物只返回值?
- 18. 是否有.Net System.Data的Java等價物?
- 19. 是否有Android的Application :: onDestroy()等價物?
- 20. 是否有Python的RedBeanPHP等價物?
- 21. excel vlookup是否有Java的等價物?
- 22. 是否有jQuery.offset的Elm等價物?
- 23. 是否有ToolStripButton的WPF等價物?
- 24. 是否有IConvertible/System.Convert的Java等價物?
- 25. JavaScript的Function.prototype.bind是否有Ruby等價物?
- 26. 是否有Python的Term :: ANSIScreen等價物?
- 27. 是否有「python -i」的ruby等價物?
- 28. R的h2o.stack是否有python等價物?
- 29. PHP的ArrayObject是否有in_array等價物?
- 30. 是否有Throwable.printStackTrace()的StackTraceElement []等價物?
既然你提到這是你自己的內核,我已經刪除引用到Linux。 –