Skip to content

Commit

Permalink
i#1569 AArch64: Implement a few missing assembler routines.
Browse files Browse the repository at this point in the history
Implement: dynamorio_sigreturn, dynamorio_sys_exit, master_signal_handler.
Remove dynamorio_nonrt_sigreturn as there is no such system call on arm64.

Review-URL: https://codereview.appspot.com/299890043
  • Loading branch information
egrimley-arm committed May 11, 2016
1 parent 3244f48 commit 54cb6cc
Showing 1 changed file with 9 additions and 8 deletions.
17 changes: 9 additions & 8 deletions core/arch/aarch64/aarch64.asm
Original file line number Diff line number Diff line change
Expand Up @@ -312,17 +312,17 @@ GLOBAL_LABEL(dynamorio_clone:)

DECLARE_FUNC(dynamorio_sigreturn)
GLOBAL_LABEL(dynamorio_sigreturn:)
bl GLOBAL_REF(unexpected_return) /* FIXME i#1569: NYI */
mov w8, #SYS_rt_sigreturn
svc #0
bl GLOBAL_REF(unexpected_return)
END_FUNC(dynamorio_sigreturn)

DECLARE_FUNC(dynamorio_nonrt_sigreturn)
GLOBAL_LABEL(dynamorio_nonrt_sigreturn:)
bl GLOBAL_REF(unexpected_return) /* FIXME i#1569: NYI */
END_FUNC(dynamorio_nonrt_sigreturn)

DECLARE_FUNC(dynamorio_sys_exit)
GLOBAL_LABEL(dynamorio_sys_exit:)
bl GLOBAL_REF(unexpected_return) /* FIXME i#1569: NYI */
mov w0, #0 /* exit code: hardcoded */
mov w8, #SYS_exit
svc #0
bl GLOBAL_REF(unexpected_return)
END_FUNC(dynamorio_sys_exit)

DECLARE_FUNC(dynamorio_futex_wake_and_exit)
Expand All @@ -337,7 +337,8 @@ GLOBAL_LABEL(dynamorio_futex_wake_and_exit:)
# endif
DECLARE_FUNC(master_signal_handler)
GLOBAL_LABEL(master_signal_handler:)
bl GLOBAL_REF(unexpected_return) /* FIXME i#1569: NYI */
mov ARG4, sp /* pass as extra arg */
b GLOBAL_REF(master_signal_handler_C) /* chain call */
END_FUNC(master_signal_handler)

# endif /* NOT_DYNAMORIO_CORE_PROPER */
Expand Down

0 comments on commit 54cb6cc

Please sign in to comment.