From 2a41f18dddea928787821064d7e84c272247010f Mon Sep 17 00:00:00 2001 From: Austin Foxley Date: Sat, 13 Feb 2010 16:23:09 -0800 Subject: sparc/sysdep: Unify sparc sysdep.h Signed-off-by: Austin Foxley --- libc/sysdeps/linux/sparc/sysdep.h | 65 ++++++++++++++++++++++ .../nptl/sysdeps/unix/sysv/linux/sparc/sysdep.h | 65 ---------------------- 2 files changed, 65 insertions(+), 65 deletions(-) create mode 100644 libc/sysdeps/linux/sparc/sysdep.h delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sysdep.h diff --git a/libc/sysdeps/linux/sparc/sysdep.h b/libc/sysdeps/linux/sparc/sysdep.h new file mode 100644 index 000000000..230efe941 --- /dev/null +++ b/libc/sysdeps/linux/sparc/sysdep.h @@ -0,0 +1,65 @@ +#ifndef _LINUX_SPARC_SYSDEP_H +#define _LINUX_SPARC_SYSDEP_H 1 + +#include + +#undef ENTRY +#undef END + +#ifdef __ASSEMBLER__ + +#define LOADSYSCALL(x) mov __NR_##x, %g1 + +#define ENTRY(name) \ + .align 4; \ + .global C_SYMBOL_NAME(name); \ + .type name, @function; \ +C_LABEL(name) \ + cfi_startproc; + +#define END(name) \ + cfi_endproc; \ + .size name, . - name + +#define LOC(name) .L##name + + /* If the offset to __syscall_error fits into a signed 22-bit + * immediate branch offset, the linker will relax the call into + * a normal branch. + */ +#undef PSEUDO +#undef PSEUDO_END +#undef PSEUDO_NOERRNO +#undef PSEUDO_ERRVAL + +#define PSEUDO(name, syscall_name, args) \ + .text; \ + .globl __syscall_error; \ +ENTRY(name); \ + LOADSYSCALL(syscall_name); \ + ta 0x10; \ + bcc 1f; \ + mov %o7, %g1; \ + call __syscall_error; \ + mov %g1, %o7; \ +1: + +#define PSEUDO_NOERRNO(name, syscall_name, args)\ + .text; \ +ENTRY(name); \ + LOADSYSCALL(syscall_name); \ + ta 0x10; + +#define PSEUDO_ERRVAL(name, syscall_name, args) \ + .text; \ +ENTRY(name); \ + LOADSYSCALL(syscall_name); \ + ta 0x10; + +#define PSEUDO_END(name) \ + END(name) + + +#endif + +#endif diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sysdep.h b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sysdep.h deleted file mode 100644 index 744e587a3..000000000 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sysdep.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef _LINUX_SPARC_SYSDEP_H -#define _LINUX_SPARC_SYSDEP_H 1 - -#include - -#undef ENTRY -#undef END - -#ifdef __ASSEMBLER__ - -#define LOADSYSCALL(x) mov __NR_##x, %g1 - -#define ENTRY(name) \ - .align 4; \ - .global C_SYMBOL_NAME(name); \ - .type name, @function; \ -C_LABEL(name) \ - cfi_startproc; - -#define END(name) \ - cfi_endproc; \ - .size name, . - name - -#define LOC(name) .L##name - - /* If the offset to __syscall_error fits into a signed 22-bit - * immediate branch offset, the linker will relax the call into - * a normal branch. - */ -#undef PSEUDO -#undef PSEUDO_END -#undef PSEUDO_NOERRNO -#undef PSEUDO_ERRVAL - -#define PSEUDO(name, syscall_name, args) \ - .text; \ - .globl __syscall_error; \ -ENTRY(name); \ - LOADSYSCALL(syscall_name); \ - ta 0x10; \ - bcc 1f; \ - mov %o7, %g1; \ - call __syscall_error; \ - mov %g1, %o7; \ -1: - -#define PSEUDO_NOERRNO(name, syscall_name, args)\ - .text; \ -ENTRY(name); \ - LOADSYSCALL(syscall_name); \ - ta 0x10; - -#define PSEUDO_ERRVAL(name, syscall_name, args) \ - .text; \ -ENTRY(name); \ - LOADSYSCALL(syscall_name); \ - ta 0x10; - -#define PSEUDO_END(name) \ - END(name) - - -#endif - -#endif -- cgit v1.2.3