Module: wine Branch: master Commit: 378df94ef8f4fa5ca254c1aca408283342b25b16 URL: http://source.winehq.org/git/wine.git/?a=commit;h=378df94ef8f4fa5ca254c1aca4...
Author: Alexandre Julliard julliard@winehq.org Date: Thu Dec 23 17:07:35 2010 +0100
libwine: Use the syscall function instead of inline assembly.
---
libs/wine/ldt.c | 26 ++------------------------ 1 files changed, 2 insertions(+), 24 deletions(-)
diff --git a/libs/wine/ldt.c b/libs/wine/ldt.c index d56790f..c4dcb0e 100644 --- a/libs/wine/ldt.c +++ b/libs/wine/ldt.c @@ -70,34 +70,12 @@ static inline void fill_modify_ldt_struct( struct modify_ldt_s *ptr, const LDT_E
static inline int modify_ldt( int func, struct modify_ldt_s *ptr, unsigned long count ) { - int res; - __asm__ __volatile__( "pushl %%ebx\n\t" - "movl %2,%%ebx\n\t" - "int $0x80\n\t" - "popl %%ebx" - : "=a" (res) - : "0" (SYS_modify_ldt), - "r" (func), - "c" (ptr), - "d" (count), - "m" (*ptr) ); - if (res >= 0) return res; - errno = -res; - return -1; + return syscall( SYS_modify_ldt, func, ptr, count ); }
static inline int set_thread_area( struct modify_ldt_s *ptr ) { - int res; - __asm__ __volatile__( "pushl %%ebx\n\t" - "movl %3,%%ebx\n\t" - "int $0x80\n\t" - "popl %%ebx" - : "=a" (res), "=m" (*ptr) - : "0" (243) /* SYS_set_thread_area */, "q" (ptr), "m" (*ptr) ); - if (res >= 0) return res; - errno = -res; - return -1; + return syscall( 243 /* SYS_set_thread_area */, ptr ); }
#endif /* linux */