I am currently implementing a C runtime library for the Arm64 platform, and I am unsure which assumptions I can make about the environment at the precise point that the application is executed (what the ELF file has defined as the entry point). With environment, I am primarily referring to the stack setup and the cpu registers.
I was able to piece together information by looking at the kernel source code, but not everything.
My question is: Is the calling convention into applications documented and/or standardized? I am looking for something equivalent to Arm64 Base Procedure Call Standard for example.
I am posting this in the Unix & Linux Stack Exchange, because I am interested in Linix specifically, and I assume an operating system may perform this call in anyway it defines as long as all executables conform.