]> git.pld-linux.org Git - packages/uClibc.git/commitdiff
- outdated
authorJakub Bogusz <qboosh@pld-linux.org>
Fri, 16 Feb 2007 12:09:14 +0000 (12:09 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    uClibc-ppc-syscall.patch -> 1.3
    uClibc-ppc-uint128.patch -> 1.2

uClibc-ppc-syscall.patch [deleted file]
uClibc-ppc-uint128.patch [deleted file]

diff --git a/uClibc-ppc-syscall.patch b/uClibc-ppc-syscall.patch
deleted file mode 100644 (file)
index 1152b09..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-This patch modifies the syscall code for the powerpc, and leaves it like it was previosly
-(older version of the uclibc repository). It uses the syscall code from the kernel.
-
-This way it compiles properly with gcc-4. The problem was that the previous code defined the
-functions in assembly code, so that the compiler didn't think the functions had a definition
-so that the next weak aliases to those functions didn't work because they were not defined.
-(Previous version of gcc compilers work when definin weak aliases to undefined functions).
-
-Maybe the syscall code could be reworked again, but meanwhile I left with the kernel
-default syscall code, that was the original aproach of uclibc.
-
-
-diff -urP uClibc-0.9.28/libc/sysdeps/linux/powerpc/bits/syscalls.h uClibc-0.9.28-syscall/libc/sysdeps/linux/powerpc/bits/syscalls.h
---- uClibc-0.9.28/libc/sysdeps/linux/powerpc/bits/syscalls.h   2005-08-18 00:49:41.000000000 +0200
-+++ uClibc-0.9.28-syscall/libc/sysdeps/linux/powerpc/bits/syscalls.h   2005-08-23 10:14:53.000000000 +0200
-@@ -5,67 +5,55 @@
- # error "Never use <bits/syscalls.h> directly; include <sys/syscall.h> instead."
- #endif
-+#include <features.h>
-+
-+/* Do something very evil for now.  Until we create our own syscall
-+ * macros, short circuit bits/sysnum.h  and use asm/unistd.h instead */
-+#include <asm/unistd.h>
-+
- /* This includes the `__NR_<name>' syscall numbers taken from the Linux kernel
-  * header files.  It also defines the traditional `SYS_<name>' macros for older
-  * programs.  */
- #include <bits/sysnum.h>
--
--#define __STRINGIFY(s) __STRINGIFY2 (s)
--#define __STRINGIFY2(s) #s
--
--#undef JUMPTARGET
--#ifdef __PIC__
--#define __MAKE_SYSCALL        __STRINGIFY(__uClibc_syscall@plt)
--#else
--#define __MAKE_SYSCALL        __STRINGIFY(__uClibc_syscall)
--#endif
--
--#define unified_syscall_body(name)                    \
--      __asm__ (                                       \
--      ".section \".text\"\n\t"                        \
--      ".align 2\n\t"                                  \
--      ".globl " __STRINGIFY(name) "\n\t"              \
--      ".type " __STRINGIFY(name) ",@function\n\t"     \
--      #name":\tli 0," __STRINGIFY(__NR_##name) "\n\t" \
--      "b " __MAKE_SYSCALL "\n\t"              \
--      ".size\t" __STRINGIFY(name) ",.""-" __STRINGIFY(name) "\n"      \
--      )
--
--#undef _syscall0
--#define _syscall0(type,name)                          \
--type name(void);                                      \
--unified_syscall_body(name)
--
--#undef _syscall1
--#define _syscall1(type,name,type1,arg1) \
--type name(type1 arg1);  \
--unified_syscall_body(name)
--
--#undef _syscall2
--#define _syscall2(type,name,type1,arg1,type2,arg2) \
--type name(type1 arg1, type2 arg2);      \
--unified_syscall_body(name)
--
--#undef _syscall3
--#define _syscall3(type,name,type1,arg1,type2,arg2,type3,arg3) \
--type name(type1 arg1, type2 arg2, type3 arg3);  \
--unified_syscall_body(name)
--
--#undef _syscall4
--#define _syscall4(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
--type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4);      \
--unified_syscall_body(name)
--
--#undef _syscall5
--#define _syscall5(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \
--type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5);  \
--unified_syscall_body(name)
--
-+/* The kernel includes don't provide _syscall6, so provide our own */
- #undef _syscall6
- #define _syscall6(type,name,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5,type6,arg6) \
--type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5, type6 arg6);      \
--unified_syscall_body(name)
-+type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5, type6 arg6)     \
-+{                                                                     \
-+      unsigned long __sc_ret, __sc_err;                               \
-+      {                                                               \
-+              register unsigned long __sc_0 __asm__ ("r0");           \
-+              register unsigned long __sc_3 __asm__ ("r3");           \
-+              register unsigned long __sc_4 __asm__ ("r4");           \
-+              register unsigned long __sc_5 __asm__ ("r5");           \
-+              register unsigned long __sc_6 __asm__ ("r6");           \
-+              register unsigned long __sc_7 __asm__ ("r7");           \
-+              register unsigned long __sc_8 __asm__ ("r8");           \
-+                                                                      \
-+              __sc_3 = (unsigned long) (arg1);                        \
-+              __sc_4 = (unsigned long) (arg2);                        \
-+              __sc_5 = (unsigned long) (arg3);                        \
-+              __sc_6 = (unsigned long) (arg4);                        \
-+              __sc_7 = (unsigned long) (arg5);                        \
-+              __sc_8 = (unsigned long) (arg6);                        \
-+              __sc_0 = __NR_##name;                                   \
-+              __asm__ __volatile__                                    \
-+                      ("sc           \n\t"                            \
-+                       "mfcr %1      "                                \
-+                      : "=&r" (__sc_3), "=&r" (__sc_0)                \
-+                      : "0"   (__sc_3), "1"   (__sc_0),               \
-+                        "r"   (__sc_4),                               \
-+                        "r"   (__sc_5),                               \
-+                        "r"   (__sc_6),                               \
-+                        "r"   (__sc_7),                               \
-+                        "r"   (__sc_8)                                \
-+                      : "r9", "r10", "r11", "r12");                   \
-+              __sc_ret = __sc_3;                                      \
-+              __sc_err = __sc_0;                                      \
-+      }                                                               \
-+      return (__sc_err & 0x10000000 ? __set_errno(__sc_ret), __sc_ret = -1 : 0), (type)__sc_ret;      \
-+}
- #endif /* _BITS_SYSCALLS_H */
diff --git a/uClibc-ppc-uint128.patch b/uClibc-ppc-uint128.patch
deleted file mode 100644 (file)
index 2b1e7f3..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-diff -urP uClibc-0.9.28/libc/sysdeps/linux/powerpc/sys/procfs.h uClibc-0.9.28-uint128/libc/sysdeps/linux/powerpc/sys/procfs.h
---- uClibc-0.9.28/libc/sysdeps/linux/powerpc/sys/procfs.h      2005-08-18 00:49:41.000000000 +0200
-+++ uClibc-0.9.28-uint128/libc/sysdeps/linux/powerpc/sys/procfs.h      2005-08-22 17:27:17.000000000 +0200
-@@ -42,15 +42,10 @@
- typedef double elf_fpreg_t;
- typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
--/* gcc 3.1 and newer support __uint128_t.  */
--#if !__GNUC_PREREQ(3,1)
--typedef struct {
--      unsigned long u[4];
--} __attribute((aligned(16))) __uint128_t;
--#endif
--
- /* Altivec registers */
--typedef __uint128_t elf_vrreg_t;
-+typedef struct {
-+  unsigned int u[4];
-+} __attribute((aligned (16))) elf_vrreg_t;
- typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
- struct elf_siginfo
This page took 0.174046 seconds and 4 git commands to generate.