[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linuxppc64-dev
Subject:    alignment and correction bug in glibc
From:       jimix () watson ! ibm ! com (Jimi Xenidis)
Date:       2003-12-05 15:47:29
Message-ID: 16336.43153.27131.648204 () kitch0 ! watson ! ibm ! com
[Download RAW message or body]


File linuxthreads/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h

performs a ld, cmpdi with 0 on a 32 bit value before every system call
in a threaded app.

diff of proposed fixe below.
-JX


--- sysdep-cancel.h	Tue Jun 17 18:22:57 2003
+++ /tmp/fix.S	Fri Dec  5 10:43:37 2003
@@ -103,8 +103,8 @@
 	.tc __local_multiple_threads[TC],__local_multiple_threads; \
   .previous;              \
   ld    10,.LC__local_multiple_threads at toc(2);				\
-  ld    10,0(10);								\
-  cmpdi 10,0
+  lwz   10,0(10);							\
+  cmpwi 10,0
 # endif

 #elif !defined __ASSEMBLER__

** Sent via the linuxppc64-dev mail list. See http://lists.linuxppc.org/




[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic