Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [PATCH] fix: support LoongArch64 in my-syscalls.S to resolve step-over-thread-exit-while-stop-all-threads.exp build failure
@ 2025-10-21 19:30 Coder_Y
  2025-10-22  8:48 ` Tiezhu Yang
  0 siblings, 1 reply; 7+ messages in thread
From: Coder_Y @ 2025-10-21 19:30 UTC (permalink / raw)
  To: gdb-patches; +Cc: Coder_Y

This patch adds syscall wrappers for LoongArch64 to gdb/testsuite/lib/my-syscalls.S.

- Implements the missing `__loongarch64` section
- Uses `lu12i.w` + `ori` to load the syscall number into `$a7`
- Triggers system calls via `syscall 0`
- Returns to caller using `jr $ra`

This change fixes build failures in LoongArch64 when running:
  gdb.threads/step-over-thread-exit-while-stop-all-threads.exp

Tested on: loongarch64-unknown-linux-gnu
Result: expected testcases passed

Signed-off-by: Nick Young <zewyang@foxmail.com>
---
 gdb/testsuite/lib/my-syscalls.S | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/gdb/testsuite/lib/my-syscalls.S b/gdb/testsuite/lib/my-syscalls.S
index c514b32d..a8862b5c 100644
--- a/gdb/testsuite/lib/my-syscalls.S
+++ b/gdb/testsuite/lib/my-syscalls.S
@@ -63,6 +63,19 @@ NAME:				;\
 NAME ## _syscall:		;\
 	svc #0
 
+#elif defined(__loongarch64)
+
+/* LoongArch 64-bit syscall wrapper */
+#define SYSCALL(NAME, NR)       \
+.global NAME                    ;\
+NAME:                           ;\
+        lu12i.w $a7, NR >> 12   ;\
+        ori $a7, $a7, NR & 0xfff ;\
+        /* syscall number */ \
+NAME ## _syscall:               ;\
+        syscall 0                       ;\
+        jr $ra
+
 #else
 # error "Unsupported architecture"
 #endif
-- 
2.43.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2025-10-30 14:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-10-21 19:30 [PATCH] fix: support LoongArch64 in my-syscalls.S to resolve step-over-thread-exit-while-stop-all-threads.exp build failure Coder_Y
2025-10-22  8:48 ` Tiezhu Yang
2025-10-22  9:06   ` Tiezhu Yang
2025-10-23  1:29     ` yangzewei
2025-10-23  1:45       ` [PATCH V2] gdb/testsuite: Add LoongArch case in my-syscalls.S Zewei Yang
2025-10-24  2:44         ` Tiezhu Yang
2025-10-30 14:11           ` Tiezhu Yang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox