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.svensson@foss.st.com>
** bl __gnu_cmse_nonsecure_call
** |
** b nonsecure0
+** |
+** push {r4, lr}
+** bl nonsecure0
+** pop {r4, pc}
** )
** ...
*/
** blx r[0-3]
** |
** b secure0
+** |
+** push {r4, lr}
+** bl secure0
+** pop {r4, pc}
** )
** ...
*/
** blx r[0-3]
** |
** b secure1
+** |
+** push {r4, lr}
+** bl secure1
+** pop {r4, pc}
** )
** ...
*/