public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "hpa at zytor dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug target/113312] Update __attribute__((interrupt)) for Intel FRED
Date: Fri, 12 Jan 2024 01:25:37 +0000	[thread overview]
Message-ID: <bug-113312-4-u6e2RYm7NX@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-113312-4@http.gcc.gnu.org/bugzilla/>

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113312

--- Comment #15 from H. Peter Anvin <hpa at zytor dot com> ---
That should be fine for this use case, obviously.

I should add the following: the reason the assembly stub isn't a problem for
FRED whereas it is a bit of a nuisance for IDT-style delivery is that with
FRED, vector dispatch is done in software, not hardware. This is exactly
because *most* operating systems do need some amount of common entry/exit code
anyway, and having to duplicate it is a severe nuisance.

In the specific case of Linux, the full register set, including saved
registers, are a required part of the exception frame in order for things like
ptrace() and fork() to work correctly, so relying on the compiler to save the
"saved" registers doesn't work for us anyway.

So since there is only *one* instance of the assembly stub needed, it means
there isn't a whole separate stub needed for every handler.

  parent reply	other threads:[~2024-01-12  1:25 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-10 16:28 [Bug target/113312] New: " hjl.tools at gmail dot com
2024-01-11  1:39 ` [Bug target/113312] " hpa at zytor dot com
2024-01-11  1:48 ` hjl.tools at gmail dot com
2024-01-11  2:10 ` hpa at zytor dot com
2024-01-11  2:10 ` hpa at zytor dot com
2024-01-11  2:19 ` hjl.tools at gmail dot com
2024-01-11  2:35 ` hpa at zytor dot com
2024-01-11  4:09 ` hjl.tools at gmail dot com
2024-01-11  4:10 ` hjl.tools at gmail dot com
2024-01-11  4:11 ` hjl.tools at gmail dot com
2024-01-11  5:29 ` hpa at zytor dot com
2024-01-11  5:38 ` liuhongt at gcc dot gnu.org
2024-01-11 15:47 ` fw at gcc dot gnu.org
2024-01-11 15:55 ` hpa at zytor dot com
2024-01-12  1:00 ` hjl.tools at gmail dot com
2024-01-12  1:25 ` hpa at zytor dot com [this message]
2024-01-12  4:31 ` hjl.tools at gmail dot com
2024-01-13  5:03 ` hjl.tools at gmail dot com
2024-01-13 18:25 ` hjl.tools at gmail dot com
2024-01-13 20:02 ` hpa at zytor dot com
2024-01-13 20:22 ` hjl.tools at gmail dot com
2024-01-13 20:51 ` hpa at zytor dot com
2024-01-18  6:42 ` [Bug target/113312] Add __attribute__((no_callee_saved_registers)) " xin at zytor dot com
2024-01-18 13:01 ` hjl.tools at gmail dot com
2024-01-19  6:23 ` xin at zytor dot com
2024-01-19  6:25 ` xin at zytor dot com
2024-01-19 13:40 ` hjl.tools at gmail dot com
2024-01-27 12:19 ` cvs-commit at gcc dot gnu.org

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=bug-113312-4-u6e2RYm7NX@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /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).