00001 #ifndef __L4UTIL__INCLUDE__ARCH_X86__STACK_IMPL_H__ 00002 #define __L4UTIL__INCLUDE__ARCH_X86__STACK_IMPL_H__ 00003 00004 #ifndef _L4UTIL_STACK_H 00005 #error Do not include stack_impl.h directly, use stack.h instead 00006 #endif 00007 00008 EXTERN_C_BEGIN 00009 00010 L4_INLINE l4_addr_t l4util_stack_get_sp(void) 00011 { 00012 l4_addr_t esp; 00013 00014 asm("movl %%esp, %0\n\t" : "=r" (esp) : ); 00015 return esp; 00016 } 00017 00018 EXTERN_C_END 00019 00020 #endif /* ! __L4UTIL__INCLUDE__ARCH_ARM__STACK_IMPL_H__ */