diff options
Diffstat (limited to 'elymas/lib')
| -rw-r--r-- | elymas/lib/sys/so.ey | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/elymas/lib/sys/so.ey b/elymas/lib/sys/so.ey index c1284a1..3bf7018 100644 --- a/elymas/lib/sys/so.ey +++ b/elymas/lib/sys/so.ey @@ -180,9 +180,11 @@ { 0 nextIntegerRegister 6 min range { availableIntegerRegisters :pushqReg } each + /rbp :pushqReg } /pushIntegerStorage deffst { + /rbp :popqReg 0 nextIntegerRegister 6 min range reverse { availableIntegerRegisters :popqReg } each } /popIntegerStorage deffst @@ -372,6 +374,10 @@ /rbp /rsp :movqRegReg + args len INTREGISTERS gt { + args len INTREGISTERS sub 8 mul /rsp :addqImm8Reg + } rep + returnWrapper /rbx :pushqReg |
