https://gcc.gnu.org/g:cfd7c54bdfe109f7e801122a093d0d2a85324fc5

commit r15-6801-gcfd7c54bdfe109f7e801122a093d0d2a85324fc5
Author: Torbjörn SVENSSON <torbjorn.svens...@foss.st.com>
Date:   Tue Jan 7 21:04:17 2025 +0100

    testsuite: arm: Add pattern for armv8-m.base to cmse-15.c test
    
    Since armv8-m.base uses thumb1 that does not suport sibcall/tailcall,
    a pattern is needed that uses PUSH/BL/POP sequence instead of a single
    B instruction to reuse an already existing function in the compile unit.
    
    gcc/testsuite/ChangeLog:
    
            * gcc.target/arm/cmse/cmse-15.c: Added pattern for armv8-m.base.
    
    Signed-off-by: Torbjörn SVENSSON <torbjorn.svens...@foss.st.com>

Diff:
---
 gcc/testsuite/gcc.target/arm/cmse/cmse-15.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/gcc/testsuite/gcc.target/arm/cmse/cmse-15.c 
b/gcc/testsuite/gcc.target/arm/cmse/cmse-15.c
index 5188f1d697f1..0e35830c35ea 100644
--- a/gcc/testsuite/gcc.target/arm/cmse/cmse-15.c
+++ b/gcc/testsuite/gcc.target/arm/cmse/cmse-15.c
@@ -65,6 +65,10 @@ int nonsecure1 (ns_foo_t ** ns_foo_p)
 **     bl      __gnu_cmse_nonsecure_call
 ** |
 **     b       nonsecure0
+** |
+**     push    {r4, lr}
+**     bl      nonsecure0
+**     pop     {r4, pc}
 ** )
 **     ...
 */
@@ -129,6 +133,10 @@ int secure1 (s_bar_t ** s_bar_p)
 **     blx     r[0-3]
 ** |
 **     b       secure0
+** |
+**     push    {r4, lr}
+**     bl      secure0
+**     pop     {r4, pc}
 ** )
 **     ...
 */
@@ -146,6 +154,10 @@ int secure2 (s_bar_ptr s_bar_p)
 **     blx     r[0-3]
 ** |
 **     b       secure1
+** |
+**     push    {r4, lr}
+**     bl      secure1
+**     pop     {r4, pc}
 ** )
 **     ...
 */

Reply via email to