diff options
author | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2020-12-17 10:03:05 +0000 |
---|---|---|
committer | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2020-12-31 16:50:58 +0000 |
commit | 45b1e17e9150dbd9ac2d578579063fbfa8e1b327 (patch) | |
tree | 19cb981927b471988432f5cc98a10911d528e7c3 /sysdeps/unix/sysv | |
parent | f9de8bfe1a731c309b91d175b4f6f4aeb786effa (diff) | |
download | glibc-45b1e17e9150dbd9ac2d578579063fbfa8e1b327.zip glibc-45b1e17e9150dbd9ac2d578579063fbfa8e1b327.tar.gz glibc-45b1e17e9150dbd9ac2d578579063fbfa8e1b327.tar.bz2 |
aarch64: use PTR_ARG and SIZE_ARG instead of DELOUSE
DELOUSE was added to asm code to make them compatible with non-LP64
ABIs, but it is an unfortunate name and the code was not compatible
with ABIs where pointer and size_t are different. Glibc currently
only supports the LP64 ABI so these macros are not really needed or
tested, but for now the name is changed to be more meaningful instead
of removing them completely.
Some DELOUSE macros were dropped: clone, strlen and strnlen used it
unnecessarily.
The out of tree ILP32 patches are currently not maintained and will
likely need a rework to rebase them on top of the time64 changes.
Diffstat (limited to 'sysdeps/unix/sysv')
-rw-r--r-- | sysdeps/unix/sysv/linux/aarch64/clone.S | 13 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/aarch64/getcontext.S | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/aarch64/setcontext.S | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/aarch64/swapcontext.S | 2 |
4 files changed, 9 insertions, 10 deletions
diff --git a/sysdeps/unix/sysv/linux/aarch64/clone.S b/sysdeps/unix/sysv/linux/aarch64/clone.S index 2b14106..802b238 100644 --- a/sysdeps/unix/sysv/linux/aarch64/clone.S +++ b/sysdeps/unix/sysv/linux/aarch64/clone.S @@ -33,13 +33,12 @@ */ .text ENTRY(__clone) - DELOUSE (0) - DELOUSE (1) - DELOUSE (2) - DELOUSE (3) - DELOUSE (4) - DELOUSE (5) - DELOUSE (6) + PTR_ARG (0) + PTR_ARG (1) + PTR_ARG (3) + PTR_ARG (4) + PTR_ARG (5) + PTR_ARG (6) /* Save args for the child. */ mov x10, x0 mov x11, x2 diff --git a/sysdeps/unix/sysv/linux/aarch64/getcontext.S b/sysdeps/unix/sysv/linux/aarch64/getcontext.S index 8571556..1fe119a 100644 --- a/sysdeps/unix/sysv/linux/aarch64/getcontext.S +++ b/sysdeps/unix/sysv/linux/aarch64/getcontext.S @@ -30,7 +30,7 @@ .text ENTRY(__getcontext) - DELOUSE (0) + PTR_ARG (0) /* The saved context will return to the getcontext() call point with a return value of 0 */ str xzr, [x0, oX0 + 0 * SZREG] diff --git a/sysdeps/unix/sysv/linux/aarch64/setcontext.S b/sysdeps/unix/sysv/linux/aarch64/setcontext.S index 61fb813..01b9981 100644 --- a/sysdeps/unix/sysv/linux/aarch64/setcontext.S +++ b/sysdeps/unix/sysv/linux/aarch64/setcontext.S @@ -34,7 +34,7 @@ .text ENTRY (__setcontext) - DELOUSE (0) + PTR_ARG (0) /* Save a copy of UCP. */ mov x9, x0 diff --git a/sysdeps/unix/sysv/linux/aarch64/swapcontext.S b/sysdeps/unix/sysv/linux/aarch64/swapcontext.S index f8c66f0..2c1a4af 100644 --- a/sysdeps/unix/sysv/linux/aarch64/swapcontext.S +++ b/sysdeps/unix/sysv/linux/aarch64/swapcontext.S @@ -27,7 +27,7 @@ .text ENTRY(__swapcontext) - DELOUSE (0) + PTR_ARG (0) /* Set the value returned when swapcontext() returns in this context. And set up x1 to become the return address of the caller, so we can return there with a normal RET instead of an indirect jump. */ |