Pass registers directly between function calls, to avoid
marshal/demarshaling overhead.