From: kolerov93@gmail.com
To: newlib@sourceware.org
Cc: shahab@synopsys.com, claziss@gmail.com
Subject: [PATCH 01/15] arc: libgloss: Use long calls attribute for exit_halt
Date: Tue, 21 May 2024 10:56:44 +0100 [thread overview]
Message-ID: <20240521095658.10311-2-kolerov93@gmail.com> (raw)
In-Reply-To: <20240521095658.10311-1-kolerov93@gmail.com>
From: Claudiu Zissulescu <claziss@gmail.com>
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 <claziss@gmail.com>
---
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
next prev parent reply other threads:[~2024-05-21 9:58 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-21 9:56 [PATCH 00/15] A series of fixes for ARC and libgloss update kolerov93
2024-05-21 9:56 ` kolerov93 [this message]
2024-05-21 9:56 ` [PATCH 02/15] arc: libc: Add support of 16-entry register file kolerov93
2024-05-21 9:56 ` [PATCH 03/15] arc: libc,libgloss: Remove .file directive from .S files kolerov93
2024-05-21 9:56 ` [PATCH 04/15] arc: libc: Record r58/r59 in long-jump's buffer kolerov93
2024-05-21 9:56 ` [PATCH 05/15] arc: libgloss: Use fstat call instead of stat for nSIM kolerov93
2024-05-21 9:56 ` [PATCH 06/15] arc: libgloss: Introduce hostlink interface kolerov93
2024-05-21 9:56 ` [PATCH 07/15] arc: libgloss: Use atexit to setup fini routines kolerov93
2024-05-21 9:56 ` [PATCH 08/15] arc: libgloss: Clean registers before any use kolerov93
2024-05-21 9:56 ` [PATCH 09/15] arc: libgloss: Add UART 8250 library kolerov93
2024-05-21 9:56 ` [PATCH 10/15] arc: libgloss: Add a linker script common for all boards kolerov93
2024-05-21 9:56 ` [PATCH 11/15] arc: libgloss: Add support of IoT Development Kit board kolerov93
2024-05-21 9:56 ` [PATCH 12/15] arc: libgloss: Add support of HS " kolerov93
2024-05-21 9:56 ` [PATCH 13/15] arc: libgloss: Add support of EM SDP board kolerov93
2024-05-21 9:56 ` [PATCH 14/15] arc: libgloss: Add support of EM Starter Kit board kolerov93
2024-05-21 9:56 ` [PATCH 15/15] arc: libgloss: Add build rules for new boards kolerov93
2024-05-22 18:28 ` [PATCH 00/15] A series of fixes for ARC and libgloss update Jeff Johnston
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240521095658.10311-2-kolerov93@gmail.com \
--to=kolerov93@gmail.com \
--cc=claziss@gmail.com \
--cc=newlib@sourceware.org \
--cc=shahab@synopsys.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).