This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.29.9000-168-g993e310
- From: rth at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 1 Apr 2019 09:02:00 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.29.9000-168-g993e310
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 993e3107af67edefcfc79a62ae55f7b98aa5151e (commit)
via d5ecee822e72a2fd156338ab2be2f2e70a1da55a (commit)
from 656dd306d49f34fb89a118624def9c1db8a9cfcb (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=993e3107af67edefcfc79a62ae55f7b98aa5151e
commit 993e3107af67edefcfc79a62ae55f7b98aa5151e
Author: Uros Bizjak <ubizjak@gmail.com>
Date: Mon Apr 1 15:58:37 2019 +0700
alpha: Improve sysdeps/alpha/divqu.S and sysdeps/alpha/remqu.S
* sysdeps/alpha/divqu.S (__divqu): Move save of $f0 and excb after
conditional branch to DIVBYZERO. Fix unwind info.
* sysdeps/alpha/remqu.S (__remqu): Move saves of $f0, $f1, $f2 and
excb after conditional branch to $powerof2. Add missing unop
instructions and .align directives and reorder instructions to
match __divqu.
Signed-off-by: Uroš Bizjak <ubizjak@gmail.com>
diff --git a/ChangeLog b/ChangeLog
index 54b9001..a514308 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2019-04-01 Uros Bizjak <ubizjak@gmail.com>
+
+ * sysdeps/alpha/divqu.S (__divqu): Move save of $f0 and excb after
+ conditional branch to DIVBYZERO. Fix unwind info.
+ * sysdeps/alpha/remqu.S (__remqu): Move saves of $f0, $f1, $f2 and
+ excb after conditional branch to $powerof2. Add missing unop
+ instructions and .align directives and reorder instructions to
+ match __divqu.
+
2019-04-01 Richard Henderson <rth@twiddle.net>
* sysdeps/unix/sysv/linux/alpha/kernel-features.h (__NR_shmat):
diff --git a/sysdeps/alpha/divqu.S b/sysdeps/alpha/divqu.S
index f5cedd0..3165374 100644
--- a/sysdeps/alpha/divqu.S
+++ b/sysdeps/alpha/divqu.S
@@ -56,10 +56,10 @@ __divqu:
that's done, we have at least 22 cycles until its results are
ready -- all the time in the world to figure out how we're
going to use the results. */
- stt $f0, 0(sp)
- excb
beq Y, DIVBYZERO
+ stt $f0, 0(sp)
+ excb
stt $f1, 8(sp)
stt $f3, 48(sp)
cfi_rel_offset ($f0, 0)
@@ -70,6 +70,7 @@ __divqu:
_ITOFT2 X, $f0, 16, Y, $f1, 24
cvtqt $f0, $f0
cvtqt $f1, $f1
+
blt X, $x_is_neg
divt/c $f0, $f1, $f0
@@ -90,12 +91,12 @@ __divqu:
ldt $f0, 0(sp)
ldt $f3, 48(sp)
+ lda sp, FRAME(sp)
cfi_remember_state
cfi_restore ($f0)
cfi_restore ($f1)
cfi_restore ($f3)
cfi_def_cfa_offset (0)
- lda sp, FRAME(sp)
ret $31, (RA), 1
.align 4
diff --git a/sysdeps/alpha/remqu.S b/sysdeps/alpha/remqu.S
index a240ee9..3b6a62d 100644
--- a/sysdeps/alpha/remqu.S
+++ b/sysdeps/alpha/remqu.S
@@ -57,19 +57,19 @@ __remqu:
ready -- all the time in the world to figure out how we're
going to use the results. */
subq Y, 1, AT
- stt $f0, 0(sp)
and Y, AT, AT
+ beq AT, $powerof2
- stt $f1, 8(sp)
+ stt $f0, 0(sp)
excb
+ stt $f1, 8(sp)
stt $f3, 48(sp)
- beq AT, $powerof2
cfi_rel_offset ($f0, 0)
cfi_rel_offset ($f1, 8)
cfi_rel_offset ($f3, 48)
+ mf_fpcr $f3
_ITOFT2 X, $f0, 16, Y, $f1, 24
- mf_fpcr $f3
cvtqt $f0, $f0
cvtqt $f1, $f1
@@ -116,11 +116,13 @@ $x_is_neg:
cfi_rel_offset ($f2, 24)
_ITOFS AT, $f2, 16
+ .align 4
addt $f0, $f2, $f0
+ unop
divt/c $f0, $f1, $f0
+ unop
/* Ok, we've now the divide issued. Continue with other checks. */
- .align 4
ldt $f1, 8(sp)
unop
ldt $f2, 24(sp)
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=d5ecee822e72a2fd156338ab2be2f2e70a1da55a
commit d5ecee822e72a2fd156338ab2be2f2e70a1da55a
Author: Richard Henderson <richard.henderson@linaro.org>
Date: Mon Apr 1 15:54:00 2019 +0700
alpha: Do not redefine __NR_shmat or __NR_osf_shmat
Fixes build using v5.1-rc1 headers.
The kernel has cleaned up how these are defined. Previous behavior
was to define __NR_osf_shmat as 209 and not define __NR_shmat.
Current behavior is to define __NR_shmat as 209 and then define
__NR_osf_shmat as __NR_shmat.
* sysdeps/unix/sysv/linux/alpha/kernel-features.h (__NR_shmat):
Do not redefine.
* sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_osf_shmat):
Do not redefine.
diff --git a/ChangeLog b/ChangeLog
index bef50d4..54b9001 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2019-04-01 Richard Henderson <rth@twiddle.net>
+
+ * sysdeps/unix/sysv/linux/alpha/kernel-features.h (__NR_shmat):
+ Do not redefine.
+ * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_osf_shmat):
+ Do not redefine.
+
2019-03-30 Maciej W. Rozycki <macro@wdc.com>
* sysdeps/unix/sysv/linux/riscv/configure.ac: Quote
diff --git a/sysdeps/unix/sysv/linux/alpha/kernel-features.h b/sysdeps/unix/sysv/linux/alpha/kernel-features.h
index 0b0a94a..f3298b2 100644
--- a/sysdeps/unix/sysv/linux/alpha/kernel-features.h
+++ b/sysdeps/unix/sysv/linux/alpha/kernel-features.h
@@ -26,8 +26,10 @@
#undef __ASSUME_STATFS64
#define __ASSUME_STATFS64 0
-/* Alpha defines SysV ipc shmat syscall with a different name. */
-#define __NR_shmat __NR_osf_shmat
+/* Alpha used to define SysV ipc shmat syscall with a different name. */
+#ifndef __NR_shmat
+# define __NR_shmat __NR_osf_shmat
+#endif
#define __ASSUME_RECV_SYSCALL 1
#define __ASSUME_SEND_SYSCALL 1
diff --git a/sysdeps/unix/sysv/linux/alpha/sysdep.h b/sysdeps/unix/sysv/linux/alpha/sysdep.h
index dcf2d1e..d61d4df 100644
--- a/sysdeps/unix/sysv/linux/alpha/sysdep.h
+++ b/sysdeps/unix/sysv/linux/alpha/sysdep.h
@@ -51,7 +51,9 @@
* Some syscalls no Linux program should know about:
*/
#define __NR_osf_sigprocmask 48
-#define __NR_osf_shmat 209
+#ifndef __NR_osf_shmat
+# define __NR_osf_shmat 209
+#endif
#define __NR_osf_getsysinfo 256
#define __NR_osf_setsysinfo 257
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 16 ++++++++++++++++
sysdeps/alpha/divqu.S | 7 ++++---
sysdeps/alpha/remqu.S | 12 +++++++-----
sysdeps/unix/sysv/linux/alpha/kernel-features.h | 6 ++++--
sysdeps/unix/sysv/linux/alpha/sysdep.h | 4 +++-
5 files changed, 34 insertions(+), 11 deletions(-)
hooks/post-receive
--
GNU C Library master sources