Описания inline
Директивы inline позволяют записывать вместо блока операто- ров инструкции в машинном коде. При вызове обычной процедуры ком- пилятор создает код, в котором параметры процедуры помещаются в стек, а затем для вызова процедуры генерируется инструкция CАLL.
------------------ директива inline -->¦ оператор inline +----------> L------------------
Когда вы вызываете подставляемую процедуру (inline), компи- лятор генерирует код с помощью директивы inline, а не с помощью инструкции CALL. Таким образом, поставляемая процедура "расширя- ется" при каждом обращении к ней, аналогично макроинструкции на языке ассемблера. Приведем два небольших примера подставляемых процедур:
procedure DisableInterrupts: inline($FA); { CLI } procedure EnableInterrupts; inline($FB); { STI }
Примечание: Синтаксические диаграммы оператора inline описаны подробно в Главе 25.