Fix occasional crashes on x86 due to alignment issues
As it turns out, the stack is required to be aligned to 16 bytes on x86. This
patch makes sure of that.
This also rewrites the parameter handling for function calls to be much simpler
and also faster by replacing the use of individual push instructions for stack
arguments with one stack pointer subtraction for all arguments followed by
shorter moves (poke) for each argument.
Change-Id: Id8199654bdf729c7858c1a223f788ca3a2d03fc8
Reviewed-by: Lars Knoll <lars.knoll@digia.com>