[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[patches] localplt fixes for E500
- To: patches@xxxxxxxxxx
- Subject: [patches] localplt fixes for E500
- From: "Joseph S. Myers" <joseph@xxxxxxxxxxxxxxxx>
- Date: Wed, 9 Jul 2008 22:40:03 +0000 (UTC)
I've applied this patch to trunk to fix localplt test failures for E500,
both E500v1 and E500v2.
Index: localplt-powerpce500v1-linux-gnu.data
===================================================================
--- localplt-powerpce500v1-linux-gnu.data (revision 0)
+++ localplt-powerpce500v1-linux-gnu.data (revision 0)
@@ -0,0 +1,31 @@
+libc.so: __adddf3
+libc.so: __divdf3
+libc.so: __eqdf2
+libc.so: __extendsfdf2
+libc.so: __fixdfsi
+libc.so: __fixunsdfsi
+libc.so: __floatsidf
+libc.so: __floatunsidf
+libc.so: __gedf2
+libc.so: __gtdf2
+libc.so: __ledf2
+libc.so: __ltdf2
+libc.so: __muldf3
+libc.so: __nedf2
+libc.so: __signbit
+libc.so: __signbitl
+libc.so: __subdf3
+libc.so: __truncdfsf2
+libc.so: __unorddf2
+libc.so: abort
+libc.so: calloc
+libc.so: free
+libc.so: malloc
+libc.so: memalign
+libc.so: realloc
+libm.so: __signbit
+libm.so: __signbitf
+libm.so: __signbitl
+libm.so: copysignl
+libm.so: fegetround
+libm.so: matherr
Index: c++-types-powerpce500v1-linux-gnu.data
===================================================================
--- c++-types-powerpce500v1-linux-gnu.data (revision 0)
+++ c++-types-powerpce500v1-linux-gnu.data (revision 0)
@@ -0,0 +1,67 @@
+blkcnt64_t:x
+blkcnt_t:l
+blksize_t:l
+caddr_t:Pc
+clockid_t:i
+clock_t:l
+daddr_t:i
+dev_t:y
+fd_mask:l
+fsblkcnt64_t:y
+fsblkcnt_t:m
+fsfilcnt64_t:y
+fsfilcnt_t:m
+fsid_t:8__fsid_t
+gid_t:j
+id_t:j
+ino64_t:y
+ino_t:m
+int16_t:s
+int32_t:i
+int64_t:x
+int8_t:a
+intptr_t:i
+key_t:i
+loff_t:x
+mode_t:j
+nlink_t:j
+off64_t:x
+off_t:l
+pid_t:i
+pthread_attr_t:14pthread_attr_t
+pthread_barrier_t:17pthread_barrier_t
+pthread_barrierattr_t:21pthread_barrierattr_t
+pthread_cond_t:14pthread_cond_t
+pthread_condattr_t:18pthread_condattr_t
+pthread_key_t:j
+pthread_mutex_t:15pthread_mutex_t
+pthread_mutexattr_t:19pthread_mutexattr_t
+pthread_once_t:i
+pthread_rwlock_t:16pthread_rwlock_t
+pthread_rwlockattr_t:20pthread_rwlockattr_t
+pthread_spinlock_t:i
+pthread_t:m
+quad_t:x
+register_t:i
+rlim64_t:y
+rlim_t:m
+sigset_t:10__sigset_t
+size_t:j
+socklen_t:j
+ssize_t:i
+suseconds_t:l
+time_t:l
+u_char:h
+uid_t:j
+uint:j
+u_int:j
+u_int16_t:t
+u_int32_t:j
+u_int64_t:y
+u_int8_t:h
+ulong:m
+u_long:m
+u_quad_t:y
+useconds_t:j
+ushort:t
+u_short:t
Index: c++-types-powerpce500v2-linux-gnu.data
===================================================================
--- c++-types-powerpce500v2-linux-gnu.data (revision 0)
+++ c++-types-powerpce500v2-linux-gnu.data (revision 0)
@@ -0,0 +1,67 @@
+blkcnt64_t:x
+blkcnt_t:l
+blksize_t:l
+caddr_t:Pc
+clockid_t:i
+clock_t:l
+daddr_t:i
+dev_t:y
+fd_mask:l
+fsblkcnt64_t:y
+fsblkcnt_t:m
+fsfilcnt64_t:y
+fsfilcnt_t:m
+fsid_t:8__fsid_t
+gid_t:j
+id_t:j
+ino64_t:y
+ino_t:m
+int16_t:s
+int32_t:i
+int64_t:x
+int8_t:a
+intptr_t:i
+key_t:i
+loff_t:x
+mode_t:j
+nlink_t:j
+off64_t:x
+off_t:l
+pid_t:i
+pthread_attr_t:14pthread_attr_t
+pthread_barrier_t:17pthread_barrier_t
+pthread_barrierattr_t:21pthread_barrierattr_t
+pthread_cond_t:14pthread_cond_t
+pthread_condattr_t:18pthread_condattr_t
+pthread_key_t:j
+pthread_mutex_t:15pthread_mutex_t
+pthread_mutexattr_t:19pthread_mutexattr_t
+pthread_once_t:i
+pthread_rwlock_t:16pthread_rwlock_t
+pthread_rwlockattr_t:20pthread_rwlockattr_t
+pthread_spinlock_t:i
+pthread_t:m
+quad_t:x
+register_t:i
+rlim64_t:y
+rlim_t:m
+sigset_t:10__sigset_t
+size_t:j
+socklen_t:j
+ssize_t:i
+suseconds_t:l
+time_t:l
+u_char:h
+uid_t:j
+uint:j
+u_int:j
+u_int16_t:t
+u_int32_t:j
+u_int64_t:y
+u_int8_t:h
+ulong:m
+u_long:m
+u_quad_t:y
+useconds_t:j
+ushort:t
+u_short:t
Index: localplt-powerpce500v2-linux-gnu.data
===================================================================
--- localplt-powerpce500v2-linux-gnu.data (revision 0)
+++ localplt-powerpce500v2-linux-gnu.data (revision 0)
@@ -0,0 +1,13 @@
+libc.so: __signbit
+libc.so: __signbitl
+libc.so: abort
+libc.so: calloc
+libc.so: free
+libc.so: malloc
+libc.so: memalign
+libc.so: realloc
+libm.so: __signbit
+libm.so: __signbitf
+libm.so: __signbitl
+libm.so: fegetround
+libm.so: matherr
Index: sysdeps/powerpc/powerpc32/e500/fpu/strtofix.c
===================================================================
--- sysdeps/powerpc/powerpc32/e500/fpu/strtofix.c (revision 6518)
+++ sysdeps/powerpc/powerpc32/e500/fpu/strtofix.c (working copy)
@@ -1,5 +1,6 @@
/* Convert string representing a number to float value, using given locale.
- Copyright (C) 1997,1998,2002,2004,2005,2006 Free Software Foundation, Inc.
+ Copyright (C) 1997,1998,2002,2004,2005,2006,2008
+ Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@xxxxxxxxxx>, 1997.
@@ -28,6 +29,7 @@
#include <locale/localeinfo.h>
#include <locale.h>
#include <math.h>
+#include <spe.h>
#include <stdlib.h>
#include <string.h>
@@ -696,3 +698,5 @@
#endif
return round_and_set_sign (val, negative, half, extra);
}
+
+libc_hidden_def (STRTOFIX)
Index: sysdeps/powerpc/powerpc32/e500/fpu/spe.h
===================================================================
--- sysdeps/powerpc/powerpc32/e500/fpu/spe.h (revision 0)
+++ sysdeps/powerpc/powerpc32/e500/fpu/spe.h (revision 0)
@@ -0,0 +1,12 @@
+#ifndef _SPE_H
+
+#include_next <spe.h>
+
+libc_hidden_proto (strtosfix16)
+libc_hidden_proto (strtosfix32)
+libc_hidden_proto (strtosfix64)
+libc_hidden_proto (strtoufix16)
+libc_hidden_proto (strtoufix32)
+libc_hidden_proto (strtoufix64)
+
+#endif
Index: sysdeps/powerpc/powerpc32/e500/soft-fp/sfp-machine.h
===================================================================
--- sysdeps/powerpc/powerpc32/e500/soft-fp/sfp-machine.h (revision 6518)
+++ sysdeps/powerpc/powerpc32/e500/soft-fp/sfp-machine.h (working copy)
@@ -1,7 +1,11 @@
#ifndef _SFP_MACHINE_H_
#define _SFP_MACHINE_H_
#include <fenv_libc.h>
+#include <libc-symbols.h>
+int __feraiseexcept_soft (int);
+libc_hidden_proto (__feraiseexcept_soft)
+
#define _FP_W_TYPE_SIZE 32
#define _FP_W_TYPE unsigned long
#define _FP_WS_TYPE signed long
Index: sysdeps/powerpc/powerpc32/e500/soft-fp/fraiseexcept-soft.c
===================================================================
--- sysdeps/powerpc/powerpc32/e500/soft-fp/fraiseexcept-soft.c (revision 6518)
+++ sysdeps/powerpc/powerpc32/e500/soft-fp/fraiseexcept-soft.c (working copy)
@@ -1,5 +1,5 @@
/* Raise given exceptions.
- Copyright (C) 2004 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2008 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Aldy Hernandez <aldyh@xxxxxxxxxx>, 2004.
@@ -20,6 +20,11 @@
#include <fenv_libc.h>
#include <bp-sym.h>
+#include <libc-symbols.h>
+int __feraiseexcept_soft (int);
+libc_hidden_proto (__feraiseexcept_soft)
+
#define __FERAISEEXCEPT_INTERNAL __feraiseexcept_soft
#include "../spe-raise.c"
+libc_hidden_def (__feraiseexcept_soft)
Index: sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/single/shlib-versions
===================================================================
--- sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/single/shlib-versions (revision 0)
+++ sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/single/shlib-versions (revision 0)
@@ -0,0 +1 @@
+powerpc.*-.*-.* ABI powerpce500v1-linux-gnu
Index: sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/shlib-versions
===================================================================
--- sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/shlib-versions (revision 0)
+++ sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/shlib-versions (revision 0)
@@ -0,0 +1 @@
+powerpc.*-.*-.* ABI powerpce500v2-linux-gnu
Index: ChangeLog.eglibc
===================================================================
--- ChangeLog.eglibc (revision 6518)
+++ ChangeLog.eglibc (working copy)
@@ -1,3 +1,22 @@
+2008-07-09 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/shlib-versions:
+ New.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/single/shlib-versions:
+ New.
+ * c++-types-powerpce500v1-linux-gnu.data: New.
+ * c++-types-powerpce500v2-linux-gnu.data: New.
+ * localplt-powerpce500v1-linux-gnu.data: New.
+ * localplt-powerpce500v2-linux-gnu.data: New.
+ * sysdeps/powerpc/powerpc32/e500/fpu/spe.h: New.
+ * sysdeps/powerpc/powerpc32/e500/fpu/strtofix.c: Include <spe.h>.
+ Use libc_hidden_def for STRTOFIX.
+ * sysdeps/powerpc/powerpc32/e500/soft-fp/sfp-machine.h: Declare
+ __feraiseexcept_soft and use libc_hidden_proto.
+ * sysdeps/powerpc/powerpc32/e500/soft-fp/fraiseexcept-soft.c:
+ Declare __feraiseexcept_soft. Use libc_hidden_proto and
+ libc_hidden_def.
+
2008-07-08 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
* sysdeps/powerpc/nofpu/shlib-versions: New.
--
Joseph S. Myers
joseph@xxxxxxxxxxxxxxxx