Push arguments onto the thread stack

When the routine manager pushes arguments onto the thread stack, it pushes them as MI_DATUM values.

The routine manager takes the following factors into account:
  • Whether the argument is passed by value or by reference
  • Whether the argument needs to be promoted