Re: [PATCH v4 8/8] newlib: libc: aeabi_memset M-profile PACBTI-enablement
Richard Earnshaw <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <[email protected]> |
On 26/10/2022 12:53, Victor L. Do Nascimento wrote:
> Add function prologue/epilogue to conditionally add BTI landing pads
> and/or PAC code generation & authentication instructions depending on
> compilation flags.
> ---
> newlib/libc/machine/arm/aeabi_memset-thumb2.S | 14 +++++++++++---
> 1 file changed, 11 insertions(+), 3 deletions(-)
OK.
R.
>
> diff --git a/newlib/libc/machine/arm/aeabi_memset-thumb2.S b/newlib/libc/machine/arm/aeabi_memset-thumb2.S
> index eaca1d8d7..6b77d3820 100644
> --- a/newlib/libc/machine/arm/aeabi_memset-thumb2.S
> +++ b/newlib/libc/machine/arm/aeabi_memset-thumb2.S
> @@ -26,14 +26,18 @@
> * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> */
>
> +#include "arm_asm.h"
> +
> .thumb
> .syntax unified
> .global __aeabi_memset
> .type __aeabi_memset, %function
> + .fnstart
> + .cfi_startproc
> ASM_ALIAS __aeabi_memset4 __aeabi_memset
> ASM_ALIAS __aeabi_memset8 __aeabi_memset
> __aeabi_memset:
> - push {r4, r5, r6}
> + prologue 4 6
> lsls r4, r0, #30
> beq 10f
> subs r4, r1, #1
> @@ -98,10 +102,14 @@ __aeabi_memset:
> cmp r3, r4
> bne 8b
> 9:
> - pop {r4, r5, r6}
> - bx lr
> + .cfi_remember_state
> + epilogue 4 6
> 10:
> + .cfi_restore_state
> mov r4, r1
> mov r3, r0
> b 3b
> + .cfi_endproc
> + .cantunwind
> + .fnend
> .size __aeabi_memset, . - __aeabi_memset