saveregisters

If this modifier is specified after a procedure or function, then the Free Pascal compiler will save all registers on procedure entry, and restore them when the procedure exits (except for registers where return values are stored).

This modifier is not used under normal circumstances, except maybe when calling assembler code.