--- ./src/cmd/cgo/out.go_orig	2023-03-29 06:42:07.190054956 +0000
+++ ./src/cmd/cgo/out.go	2023-03-29 06:51:23.171025641 +0000
@@ -889,7 +889,7 @@
 	fmt.Fprintf(fgcc, "#pragma GCC diagnostic ignored \"-Wpragmas\"\n")
 	fmt.Fprintf(fgcc, "#pragma GCC diagnostic ignored \"-Waddress-of-packed-member\"\n")
 
-	fmt.Fprintf(fgcc, "extern void crosscall2(void (*fn)(void *), void *, int, size_t);\n")
+	fmt.Fprintf(fgcc, "extern void __attribute__((longcall)) crosscall2(void (*fn)(void *), void *, int, size_t);\n")
 	fmt.Fprintf(fgcc, "extern size_t _cgo_wait_runtime_init_done(void);\n")
 	fmt.Fprintf(fgcc, "extern void _cgo_release_context(size_t);\n\n")
 	fmt.Fprintf(fgcc, "extern char* _cgo_topofstack(void);")
