diff --git a/gdb/testsuite/gdb.arch/arm-pseudo-unwind-legacy.c b/gdb/testsuite/gdb.arch/arm-pseudo-unwind-legacy.c
index 49b0553ade4..adda4b8b298 100644
--- a/gdb/testsuite/gdb.arch/arm-pseudo-unwind-legacy.c
+++ b/gdb/testsuite/gdb.arch/arm-pseudo-unwind-legacy.c
@@ -24,10 +24,17 @@ break_here_c (uint64_t value)
 {
 }
 
+__attribute__((target("arm")))
+uint64_t
+caller_trampoline (void)
+{
+  return caller ();
+}
+
 int
 main (void)
 {
-  uint64_t value = caller ();
+  uint64_t value = caller_trampoline ();
   break_here_c (value);
   return 0;
 }
diff --git a/gdb/testsuite/gdb.arch/arm-pseudo-unwind.c b/gdb/testsuite/gdb.arch/arm-pseudo-unwind.c
index 49b0553ade4..adda4b8b298 100644
--- a/gdb/testsuite/gdb.arch/arm-pseudo-unwind.c
+++ b/gdb/testsuite/gdb.arch/arm-pseudo-unwind.c
@@ -24,10 +24,17 @@ break_here_c (uint64_t value)
 {
 }
 
+__attribute__((target("arm")))
+uint64_t
+caller_trampoline (void)
+{
+  return caller ();
+}
+
 int
 main (void)
 {
-  uint64_t value = caller ();
+  uint64_t value = caller_trampoline ();
   break_here_c (value);
   return 0;
 }
