diff options
author | Mike Pavone <pavone@retrodev.com> | 2012-12-31 19:17:01 -0800 |
---|---|---|
committer | Mike Pavone <pavone@retrodev.com> | 2012-12-31 19:17:01 -0800 |
commit | 1fb2ab20f93add38a432403b38fe18f6c9e9ec76 (patch) | |
tree | 13d19208011f78bc195faff6739603bb95e6ceeb | |
parent | 56b2ecd73d6265030fadc47048808a056db421ed (diff) |
Implement m68k_modified_ret_addr
-rw-r--r-- | runtime.S | 13 |
1 files changed, 3 insertions, 10 deletions
@@ -410,18 +410,11 @@ cart_b: mov (%r8, %rcx), %cl ret -ret_addr_msg: - .asciz "Program modified return address on stack: found %X, expected %X\n" - .global m68k_modified_ret_addr m68k_modified_ret_addr: - lea ret_addr_msg(%rip), %rdi - mov %rcx, %rsi - mov 8(%rsp), %rdx - xor %rax, %rax - call printf - mov $1, %rdi - call exit + add $16, %rsp + call m68k_native_addr + jmp *%rcx dyn_addr_msg: .asciz "Program needs dynamically calculated native address\n" |