Skip to content
Latchkey

O que é uma convenção de chamada em uma ABI?

Uma convenção de chamada é a parte de uma interface binária de aplicação que especifica como quem chama e quem é chamado concordam sobre a passagem de argumentos, o retorno de resultados e quais registradores cada um deve preservar. Ela também fixa como a pilha é montada e limpa em torno de uma chamada. Como é um contrato, código compilado por ferramentas diferentes só pode se chamar mutuamente se compartilhar a convenção.

Por que isso importa

Convenções de chamada incompatíveis entre unidades compiladas causam argumentos corrompidos, falhas ou resultados silenciosamente errados. Conhecer a convenção é essencial para interfaces de funções externas e builds de linguagens mistas.

Guias relacionados