aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv
diff options
context:
space:
mode:
authorJohn David Anglin <danglin@gcc.gnu.org>2024-12-22 09:58:02 -0500
committerJohn David Anglin <danglin@gcc.gnu.org>2024-12-22 09:58:02 -0500
commit325db5ab7ff6983d9e46dc3118ebfe8085d76eb9 (patch)
tree9cc274472f1cf085e78a9034299f3a32f4c47734 /sysdeps/unix/sysv
parent9bdb1487c5707a4f8151f60bf2c5969ad205701e (diff)
downloadglibc-325db5ab7ff6983d9e46dc3118ebfe8085d76eb9.zip
glibc-325db5ab7ff6983d9e46dc3118ebfe8085d76eb9.tar.gz
glibc-325db5ab7ff6983d9e46dc3118ebfe8085d76eb9.tar.bz2
hppa: Simplify handling of sanity check errors in clone.S.
This simplifies the handling of sanity check errors in clone.S. Adjusted a couple of comments to reflect current code. Signed-off-by: John David Anglin <dave.anglin@bell.net>
Diffstat (limited to 'sysdeps/unix/sysv')
-rw-r--r--sysdeps/unix/sysv/linux/hppa/clone.S11
1 files changed, 5 insertions, 6 deletions
diff --git a/sysdeps/unix/sysv/linux/hppa/clone.S b/sysdeps/unix/sysv/linux/hppa/clone.S
index c18163d..e85e7f5 100644
--- a/sysdeps/unix/sysv/linux/hppa/clone.S
+++ b/sysdeps/unix/sysv/linux/hppa/clone.S
@@ -90,6 +90,10 @@ ENTRY(__clone)
comib,=,n 0, %ret0, .LthreadStart
bv,n %r0(%rp)
+.LerrorSanity:
+ /* Sanity checks failed, set errno to EINVAL. */
+ ldi -EINVAL, %ret0
+
.LerrorRest:
/* Something bad happened -- no child created -- need a frame */
ldo 64(%sp),%sp
@@ -101,11 +105,6 @@ ENTRY(__clone)
bv %r0(%rp)
ldo -64(%sp), %sp
-.LerrorSanity:
- /* Sanity checks failed, return -1, and set errno to EINVAL. */
- b .LerrorRest
- ldi -EINVAL, %ret0
-
.LthreadStart:
/* Load up the arguments. */
ldw -60(%sp), %arg0
@@ -121,7 +120,7 @@ ENTRY(__clone)
ldi __NR_exit, %r20
/* We should not return from exit.
- We do not restore r4, or the stack state. */
+ We do not restore the stack state. */
iitlbp %r0, (%sr0, %r0)
PSEUDO_END(__clone)