Fixed parameter passing, and following convention even for float args
Made all test functions non-static to show them in disassembly
Now shadow space works properly, no more doubly evaluating args