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/linux | |
parent | f9de8bfe1a731c309b91d175b4f6f4aeb786effa (diff) | |
download | glibc-45b1e17e9150dbd9ac2d578579063fbfa8e1b327.tar.gz glibc-45b1e17e9150dbd9ac2d578579063fbfa8e1b327.tar.xz glibc-45b1e17e9150dbd9ac2d578579063fbfa8e1b327.zip |
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/linux')
-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 2b14106fd1..802b238ab9 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 8571556189..1fe119a757 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 61fb813db3..01b9981ec8 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 f8c66f0ef0..2c1a4af855 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. */ |