從內聯組件調用 Rust 函數和調用慣例

https://stackoverflow.com/questions/78182688/calling-rust-functions-from-inline-assembly-and-calling-conventions

這份代碼涉及 Rust 項目中的內嵌組件,並探討呼叫約定。由於 Rust 的呼叫約定是未定義的,建議在組件中使用 C 呼叫約定,以確保一致。函數 f 使用 naked function 和 C 呼叫約定,而函數 g 則不直接從 Rust 調用,並總是呼叫 rust 函數。至於函數 h,雖然標記為 extern “C”,實際上是純粹的 rust 代碼。目前碼理論上能正常運行,但為確保未來不受影響,應避免 Rust 對 h 的調用進行不正確的優化。

via Active questions tagged c – Stack Overflow

March 19, 2024 at 03:54AM

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *