From: Claudiu Zissulescu <[email protected]>
According to GCC documentation for ARC, a function marked with
the long_call attribute is always called using register-indirect
jump-and-link instructions, thereby enabling the called function
to be placed anywhere within the 32-bit address space.
exit_halt function is provided by crt0.S and it's used
in nsim-syscalls.c. Thus, we want to ensure that a linkage
issue will not arise.
Signed-off-by: Claudiu Zissulescu <[email protected]>
---
libgloss/arc/nsim-syscalls.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libgloss/arc/nsim-syscalls.c b/libgloss/arc/nsim-syscalls.c
index 7dd0af10f..d299f8cdc 100644
--- a/libgloss/arc/nsim-syscalls.c
+++ b/libgloss/arc/nsim-syscalls.c
@@ -1,5 +1,5 @@
/*
- Copyright (c) 2015, Synopsys, Inc. All rights reserved.
+ Copyright (c) 2015-2024, Synopsys, Inc. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
@@ -100,7 +100,7 @@ _open (const char * pathname, int flags, int mode)
}
/* Should be provided by crt0.S. */
-extern void __attribute__((noreturn)) _exit_halt ();
+extern void __attribute__((noreturn, long_call)) _exit_halt ();
void
__attribute__((noreturn))
--
2.39.2
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.