The branch main has been updated by andrew:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=0590ed0967e025e1d155da9e06509f3fe9686feb

commit 0590ed0967e025e1d155da9e06509f3fe9686feb
Author:     Andrew Turner <[email protected]>
AuthorDate: 2023-10-16 14:34:19 +0000
Commit:     Andrew Turner <[email protected]>
CommitDate: 2023-10-30 17:55:45 +0000

    arm64: Add a BTI landing pad to .mcount
    
    The .mcount function needs a BTI branch target. As we can't rely on
    asm.h being included use the hint version of a "bti c" instruction.
    This is a nop when BTI is not supported or not used.
    
    Reviewed by:    markj
    Sponsored by:   Arm Ltd
    Differential Revision:  https://reviews.freebsd.org/D42230
---
 sys/arm64/include/profile.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sys/arm64/include/profile.h b/sys/arm64/include/profile.h
index 3e4a34669360..8a61ff995d83 100644
--- a/sys/arm64/include/profile.h
+++ b/sys/arm64/include/profile.h
@@ -68,6 +68,8 @@ static void _mcount
 "      .globl  .mcount                         \n"     \
 "      .mcount:                                \n"     \
 "      .cfi_startproc                          \n"     \
+       /* Allow this to work with BTI, see BTI_C in asm.h */ \
+"      hint    #34                             \n"     \
        /* Load the caller return address as frompc */  \
 "      ldr     x0, [x29, #8]                   \n"     \
        /* Use our return address as selfpc */          \

Reply via email to