nova: support noreturn attribute for syscall reply

This commit is contained in:
Alexander Boettcher 2013-11-22 14:27:37 +01:00 committed by Christian Helmuth
parent 491817c00c
commit 8c7cadde5f
2 changed files with 4 additions and 0 deletions

View File

@ -179,12 +179,14 @@ namespace Nova {
ALWAYS_INLINE
__attribute__((noreturn))
inline void reply(void *next_sp)
{
asm volatile ("sysenter;"
:
: "a" (NOVA_REPLY), "c" (next_sp)
: "memory");
__builtin_unreachable();
}

View File

@ -141,6 +141,7 @@ namespace Nova {
ALWAYS_INLINE
__attribute__((noreturn))
inline void reply(void *next_sp)
{
asm volatile ("mov %1, %%rsp;"
@ -148,6 +149,7 @@ namespace Nova {
:
: "D" (NOVA_REPLY), "ir" (next_sp)
: "memory");
__builtin_unreachable();
}