X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fx86-64-assem.S;h=79140e024e4ee9e9b01390dcecf89bb028404734;hb=0c7a7f68e66276a3c780a01d55f086a6f0aac929;hp=fb12a068e40b0183cab9740cd04d75420175a095;hpb=0c03532f057150d4fba7eae9dc6ff3a7709f1f6f;p=sbcl.git diff --git a/src/runtime/x86-64-assem.S b/src/runtime/x86-64-assem.S index fb12a06..79140e0 100644 --- a/src/runtime/x86-64-assem.S +++ b/src/runtime/x86-64-assem.S @@ -209,10 +209,10 @@ Ldone: xor %rbx,%rbx # available /* Alloc new frame. */ - mov %rsp,%rbx # The current sp marks start of new frame. - push %rbp # fp in save location S0 - sub $16,%rsp # Ensure 3 slots are allocated, one above. - mov %rbx,%rbp # Switch to new frame. + push %rbp # Dummy for return address + push %rbp # fp in save location S1 + mov %rsp,%rbp # The current sp marks start of new frame. + sub $8,%rsp # Ensure 3 slots are allocated, two above. Lcall: call *CLOSURE_FUN_OFFSET(%rax)