LINUX.ORG.RU

История изменений

Исправление nanoolinux, (текущая версия) :

Договорённость как передавать аргументы есть часть ABI.

Помимо названых есть ещё pascalcall (или как он там называеться) - это когда через стек, только аргументы в обратном порядке лежат. Под оффтопиком есть ещё stdcall, этого когда callee чистит стек перед тем как сделать ret.

А вообще на асме можно запилить какой хочешь. Даже runtime defined. Ядрёный интерфейс вообще исключительно через регистры все 6 возможных параметров передаёт и никаких стеков.

Исправление nanoolinux, :

Договорённость как передавать аргументы есть часть ABI.

Помимо названых есть ещё pascalcall (или как он там называеться) - это когда через стек, только аргументы в обратном порядке лежат. Под оффтопиком есть ещё stdcall, этого когда callee чистит стек перед тем как сделать ret.

А вообще на асме можно запилить какой хочешь. Даже runtime defined. Ядреный интерфейс вообще исключительно через регистры все 6 возможных параметров передаёт и никаких стеков.

Исходная версия nanoolinux, :

Договорённость как передавать аргументы называется ABI.

Помимо названых есть ещё pascalcall (или как он там называеться) - это когда через стек, только аргументы в обратном порядке лежат. Под оффтопиком есть ещё stdcall, этого когда callee чистит стек перед тем как сделать ret.

А вообще на асме можно запилить какой хочешь. Даже runtime defined. Ядреный интерфейс вообще исключительно через регистры все 6 возможных параметров передаёт и никаких стеков.