From f6bc2eef9a1be3edde48416b9130ebe3bdb30308 Mon Sep 17 00:00:00 2001 From: nbd Date: Sat, 10 Oct 2009 19:25:18 +0000 Subject: [PATCH] uClibc: add copysign, copysignf, copysignl for i386 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18017 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches-0.9.30.1/430-i386_copysign.patch | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 toolchain/uClibc/patches-0.9.30.1/430-i386_copysign.patch diff --git a/toolchain/uClibc/patches-0.9.30.1/430-i386_copysign.patch b/toolchain/uClibc/patches-0.9.30.1/430-i386_copysign.patch new file mode 100644 index 0000000000..8cc15b7032 --- /dev/null +++ b/toolchain/uClibc/patches-0.9.30.1/430-i386_copysign.patch @@ -0,0 +1,96 @@ +--- a/libc/sysdeps/linux/i386/Makefile.arch ++++ b/libc/sysdeps/linux/i386/Makefile.arch +@@ -9,6 +9,7 @@ CSRC := brk.c sigaction.c __syscall_erro + + SSRC := \ + __longjmp.S vfork.S clone.S setjmp.S bsd-setjmp.S bsd-_setjmp.S \ +- sync_file_range.S syscall.S mmap.S mmap64.S posix_fadvise64.S ++ sync_file_range.S syscall.S mmap.S mmap64.S posix_fadvise64.S \ ++ s_copysign.S s_copysignf.S s_copysignl.S + + include $(top_srcdir)libc/sysdeps/linux/Makefile.commonarch +--- /dev/null ++++ b/libc/sysdeps/linux/i386/s_copysign.S +@@ -0,0 +1,25 @@ ++/* ++ * Written by J.T. Conklin . ++ * Public domain. ++ */ ++ ++#define _ERRNO_H 1 ++#include ++#include ++ ++.text ++.global copysign ++.type copysign,%function ++copysign: ++ movl 16(%esp),%edx ++ movl 8(%esp),%eax ++ andl $0x80000000,%edx ++ andl $0x7fffffff,%eax ++ orl %edx,%eax ++ movl %eax,8(%esp) ++ fldl 4(%esp) ++ ret ++.size copysign,.-copysign ++ ++libc_hidden_def(copysign) ++ +--- /dev/null ++++ b/libc/sysdeps/linux/i386/s_copysignf.S +@@ -0,0 +1,25 @@ ++/* ++ * Written by J.T. Conklin . ++ * Public domain. ++ */ ++ ++#define _ERRNO_H 1 ++#include ++#include ++ ++.text ++.global copysignf ++.type copysignf,%function ++copysignf: ++ movl 8(%esp),%edx ++ movl 4(%esp),%eax ++ andl $0x80000000,%edx ++ andl $0x7fffffff,%eax ++ orl %edx,%eax ++ movl %eax,4(%esp) ++ flds 4(%esp) ++ ret ++.size copysignf,.-copysignf ++ ++libc_hidden_def(copysignf) ++ +--- /dev/null ++++ b/libc/sysdeps/linux/i386/s_copysignl.S +@@ -0,0 +1,26 @@ ++/* ++ * Written by J.T. Conklin . ++ * Changes for long double by Ulrich Drepper ++ * Public domain. ++ */ ++ ++#define _ERRNO_H 1 ++#include ++#include ++ ++.text ++.global copysignl ++.type copysignl,%function ++copysignl: ++ movl 24(%esp),%edx ++ movl 12(%esp),%eax ++ andl $0x8000,%edx ++ andl $0x7fff,%eax ++ orl %edx,%eax ++ movl %eax,12(%esp) ++ fldt 4(%esp) ++ ret ++.size copysignl,.-copysignl ++ ++libc_hidden_def(copysignl) ++ -- 2.30.2