I have some questions.
What is the calling convention? What registers are used to pass parameters? What registers are used to return a result? What registers need to be preserved during a call? Is it a common standard for all ARM projects?
What is the calling convention?
The answer to the next three questions, among other things.
What registers are used to pass parameters?
Those specified in the calling convention.
What registers are used to return a result?
What registers need to be preserved during a call?
Is it a common standard for all ARM projects?
No. ARM has several variations of their ARM procedure call standard which are not necessarily compatible, and of course compiler manufacturer could "roll their own" calling convetion instead.
infocenter.arm.com/.../IHI0042D_aapcs.pdf