Язык:
Русский
English
Assembler (процедурная директива)
Используя директиву Assembler, вы можете писать процедуры и функции с использованием встроенного ассемблера, без операторов Begin..End.
Директива Assembler заставляет компилятор выполнять следующую оптимизацию объектного кода:
- Параметры значений: компилятор не генерирует код, для копирования
параметров, передаваемых в подпрограмму, в локальные переменные.
- Переменная Result: компилятор не создает переменную Result для функций,
и ссылка на символ @Result вызывает ошибку.
- Область стека: компилятор не генерирует стек для процедур и функций
без параметров или локальных переменных.
Оптимизация параметров значений воздействует на все параметры строкового типа и на другие параметры, с размером, не равным 1, 2 или 4 байтам.
Внутри процедуры или функции, такие параметры должны обработаться как переменные параметры.
Строковые функции являются исключением оптимизации - для них всегда существует указатель @Result, распределяемый родительским процессом.