public inbox for newlib-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] newlib: libc: aeabi_memmove M-profile PACBTI-enablement
@ 2023-01-10 16:49 Richard Earnshaw
0 siblings, 0 replies; only message in thread
From: Richard Earnshaw @ 2023-01-10 16:49 UTC (permalink / raw)
To: newlib-cvs
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=bddfd64ec2e94973d6372f90fe9a8a7b0f882e69
commit bddfd64ec2e94973d6372f90fe9a8a7b0f882e69
Author: Victor L. Do Nascimento <victor.donascimento@arm.com>
Date: Wed Dec 21 11:27:01 2022 +0000
newlib: libc: aeabi_memmove M-profile PACBTI-enablement
Add function prologue/epilogue to conditionally add BTI landing pads
and/or PAC code generation & authentication instructions depending on
compilation flags.
Diff:
---
newlib/libc/machine/arm/aeabi_memmove-thumb2.S | 17 ++++++++++++-----
1 file changed, 12 insertions(+), 5 deletions(-)
diff --git a/newlib/libc/machine/arm/aeabi_memmove-thumb2.S b/newlib/libc/machine/arm/aeabi_memmove-thumb2.S
index e9504437b..20ca993e5 100644
--- a/newlib/libc/machine/arm/aeabi_memmove-thumb2.S
+++ b/newlib/libc/machine/arm/aeabi_memmove-thumb2.S
@@ -26,6 +26,8 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include "arm_asm.h"
+
.thumb
.syntax unified
.global __aeabi_memmove
@@ -33,8 +35,10 @@
ASM_ALIAS __aeabi_memmove4 __aeabi_memmove
ASM_ALIAS __aeabi_memmove8 __aeabi_memmove
__aeabi_memmove:
+ .fnstart
+ .cfi_startproc
+ prologue 4
cmp r0, r1
- push {r4}
bls 3f
adds r3, r1, r2
cmp r0, r3
@@ -48,9 +52,10 @@ __aeabi_memmove:
strb r4, [r1, #-1]!
bne 1b
2:
- pop {r4}
- bx lr
+ .cfi_remember_state
+ epilogue 4
3:
+ .cfi_restore_state
cmp r2, #0
beq 2b
add r2, r2, r1
@@ -60,6 +65,8 @@ __aeabi_memmove:
cmp r2, r1
strb r4, [r3, #1]!
bne 4b
- pop {r4}
- bx lr
+ epilogue 4
+ .cfi_endproc
+ .cantunwind
+ .fnend
.size __aeabi_memmove, . - __aeabi_memmove
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-01-10 16:49 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-10 16:49 [newlib-cygwin] newlib: libc: aeabi_memmove M-profile PACBTI-enablement Richard Earnshaw
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).