This is part of Win16 API which allow to create versions of program from one source code to run under OS/2 and Win16. Under OS/2 program can be running under Win-OS/2 if program is Windows NE executable, and with help on Windows Libraries for OS/2, if it is OS/2 NE executable. Here is a WLO to OS/2 API mapping draft
Compacts the local heap to satisfy a memory request and returns the size of the largest free block.
UINT WINAPI LocalCompact( UINT uMinFree );
uMinFree – Minimum amount of free space (in bytes) desired. Can be zero.
Returns the maximum size of a free block that can be allocated after compaction.
Compaction may move unlocked discardable blocks or discard them entirely.
This function is rarely needed because Windows automatically manages the heap.
UINT maxFree = LocalCompact(1024);
push 1024 call LocalCompact