LLVMfunctions,callsandinvokes可以帶有一個可選的調用約定來指明調用方式。每一對 caller/callee(調用者/被調用者)的調用約定必須相匹配,不然這個程序的行為是未定義的。下面的是LLVM支持的調用約定形式,并且在未來可能會加入更多:
“ccc” - The C calling convention
這個調用約定(在沒有標識其他調用約定時,為默認調用約定)匹配其目標到C調用約定。這個調用約定支持變長參數函數調用并可容忍函數的聲明和實現之間存在某些不匹配的地方(像正常的 C一樣)
更多得調用約定可能被增加/定義在需要的基礎上,從而支持Pascal調用約定或者其他任何知名的依賴于目標的調用約定。
新聞熱點
疑難解答