Top "Calling-convention" questions

A calling convention refers to the way a function transmits parameters to a called function and receives a return value from it.

What registers are preserved through a linux x86-64 function call

I believe I understand how the linux x86-64 ABI uses registers and stack to pass parameters to a function (…

linux assembly x86-64 calling-convention abi
Calling convention on x64

I saw in several places that Microsoft calling conventions for x64 platforms were narrowed down to just one: Caller cleans …

compiler-construction 64-bit x86-64 calling-convention
Passing parameters and return values for a subroutine in assembly

I am working with ARM assembly, where I have to write one subroutine for which I am following the ARM …

assembly arm calling-convention
Why does Windows64 use a different calling convention from all other OSes on x86-64?

AMD has an ABI specification that describes the calling convention to use on x86-64. All OSes follow it, except …

windows x86-64 calling-convention
How exactly does the callstack work?

I'm trying to get a deeper understanding of how the low level operations of programming languages work and especially how …

assembly cpu callstack low-level calling-convention
Why can I invoke a function via a pointer with too many arguments?

Say I have this function: int func2() { printf("func2\n"); return 0; } Now I declare a pointer: int (*fp)(double); This …

c function-pointers calling-convention
Where is the x86-64 System V ABI documented?

The x86-64 System V ABI (used on everything except Windows) used to live at http://x86-64.org/documentation/…

linux assembly x86-64 calling-convention abi
What are the different calling conventions in C/C++ and what do each mean?

There are different calling conventions available in C/C++: stdcall, extern, pascal, etc. How many such calling conventions are available, …

c++ c winapi visual-c++ calling-convention
How is return address specified in stack?

This is what I see by disassemble for the statement function(1,2,3);: movl $0x3,0x8(%esp) movl $0x2,0x4(%esp) movl $0…

assembly x86 stack calling-convention
Delete call from call log after call end

I am new to Android development. I want to make a call to a number but I don't want to …

android calling-convention