Optimize the move_call instructions
Optimize the move_call instructions

The `move_call` instructions are combinations of a `move` instruction
and a `call` instruction. As currently implemented, the `move` part of
the instruction is executed in its entirety before the `call` part is
even started. The reason is that the C compiler cannot see that it
would be safe to read the target address of the call before writing to
the move destination.

Rewrite the instructions to explicitly read both the source for the
move and the target address for the call before writing the
destination of the move.

Micro-benchmarks show a small but consistent speed-up after this
change.

bjorng/otp,potatosalad/otp,isvilen/otp,lrascao/otp,isvilen/otp,getong/otp,RoadRunnr/otp,vladdu/otp,jj1bdx/otp,isvilen/otp,erlang/otp,isvilen/otp,mikpe/otp,dumbbell/otp,g-andrade/otp,emacsmirror/erlang,erlang/otp,ferd/otp,vinoski/otp,lrascao/otp,rlipscombe/otp,kvakvs/otp,bjorng/otp,mikpe/otp,bjorng/otp,electricimp/otp,dumbbell/otp,rlipscombe/otp,vinoski/otp,isvilen/otp,vinoski/otp,erlang/otp,vladdu/otp,uabboli/otp,dumbbell/otp,uabboli/otp,lrascao/otp,uabboli/otp,bjorng/otp,mikpe/otp,g-andrade/otp,rlipscombe/otp,dgud/otp,potatosalad/otp,dgud/otp,kvakvs/otp,bjorng/otp,RoadRunnr/otp,emacsmirror/erlang,rlipscombe/otp,isvilen/otp,vinoski/otp,RoadRunnr/otp,jj1bdx/otp,dgud/otp,mikpe/otp,isvilen/otp,vinoski/otp,erlang/otp,g-andrade/otp,emacsmirror/erlang,getong/otp,getong/otp,rlipscombe/otp,emacsmirror/erlang,dumbbell/otp,bjorng/otp,vladdu/otp,bjorng/otp,g-andrade/otp,vinoski/otp,getong/otp,lrascao/otp,kvakvs/otp,RoadRunnr/otp,mikpe/otp,potatosalad/otp,vladdu/otp,RoadRunnr/otp,mikpe/otp,electricimp/otp,mikpe/otp,vinoski/otp,dgud/otp,erlang/otp,g-andrade/otp,getong/otp,potatosalad/otp,electricimp/otp,mikpe/otp,emacsmirror/erlang,electricimp/otp,rlipscombe/otp,vinoski/otp,kvakvs/otp,electricimp/otp,ferd/otp,isvilen/otp,lrascao/otp,potatosalad/otp,uabboli/otp,rlipscombe/otp,uabboli/otp,dgud/otp,getong/otp,erlang/otp,dgud/otp,getong/otp,mikpe/otp,erlang/otp,jj1bdx/otp,dgud/otp,ferd/otp,kvakvs/otp,erlang/otp,dumbbell/otp,jj1bdx/otp,g-andrade/otp,isvilen/otp,ferd/otp,ferd/otp,vladdu/otp,emacsmirror/erlang,dgud/otp,getong/otp,kvakvs/otp,jj1bdx/otp,jj1bdx/otp,kvakvs/otp,vinoski/otp,mikpe/otp,emacsmirror/erlang,potatosalad/otp,lrascao/otp,RoadRunnr/otp,uabboli/otp,jj1bdx/otp,lrascao/otp,potatosalad/otp,bjorng/otp,uabboli/otp,erlang/otp,vladdu/otp,bjorng/otp,getong/otp,jj1bdx/otp,rlipscombe/otp,electricimp/otp,vladdu/otp,ferd/otp,electricimp/otp,ferd/otp,emacsmirror/erlang,vladdu/otp,jj1bdx/otp,emacsmirror/erlang,vinoski/otp,g-andrade/otp,potatosalad/otp,uabboli/otp,g-andrade/otp,lrascao/otp,lrascao/otp,erlang/otp,dumbbell/otp,emacsmirror/erlang,RoadRunnr/otp,jj1bdx/otp,potatosalad/otp,kvakvs/otp,dgud/otp,isvilen/otp,ferd/otp,g-andrade/otp,potatosalad/otp,RoadRunnr/otp,RoadRunnr/otp,uabboli/otp,kvakvs/otp,g-andrade/otp,electricimp/otp,electricimp/otp,getong/otp,rlipscombe/otp,dgud/otp,dumbbell/otp,bjorng/otp,rlipscombe/otp,dumbbell/otp,vladdu/otp,ferd/otp,dumbbell/otp,dumbbell/otp