From: "Alexander van Heukelum" <heukelum@fastmail.fm>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: "Cyrill Gorcunov" <gorcunov@gmail.com>,
"Ingo Molnar" <mingo@elte.hu>,
"Jan Beulich" <jbeulich@novell.com>,
linux-kernel@vger.kernel.org
Subject: Re: [RFC 0/6] x86 tip asm ENTRY,ENDPROC cleanup
Date: Sat, 14 Feb 2009 12:42:55 +0100 [thread overview]
Message-ID: <1234611775.19975.1300340003@webmail.messagingengine.com> (raw)
In-Reply-To: <49961178.6040101@zytor.com>
On Fri, 13 Feb 2009 16:34:00 -0800, "H. Peter Anvin" <hpa@zytor.com>
said:
> Alexander van Heukelum wrote:
> >
> > Hi Cyrill,
> >
> > I like this direction. If I understand correctly:
> >
> > ENTRY/END or GLOBAL/END for data.
> > ENTRY/ENDPROC or GLOBAL/ENDPROC for functions.
> >
>
> Fine for functions, but it's really not okay to use the same macros for
> data. Furthermore, we need to consider special entry points that don't
> behave like normal functions -- like system call or interrupt entry.
>
> Why? Because if we're compiling with frame pointers, we would like the
> wrapper macros for functions to handle setting up and tearing down the
> frame pointer, at least in the common case.
Hi Peter,
I see. But that would be new behaviour. I would propose to use
completely separate macro's to handle frame-setup code generation,
and keep ENTRY/GLOBAL/END/ENDPROC only for setting metadata and
alignment. I think it's worth it to spell out code-generating
macro's explicitly: there are not that many asm functions, and
quite a few of them would need special handling. I think noone
wants to see an ENDPROC_NOFRAMETEARDOWN ;).
The common-case example would look like this.
GLOBAL(c_callable_function)
ENTER
[asm-code]
LEAVE
ret
ENDPROC(c_callable_function)
Greetings,
Alexander
> -hpa
--
Alexander van Heukelum
heukelum@fastmail.fm
--
http://www.fastmail.fm - I mean, what is it about a decent email service?
next prev parent reply other threads:[~2009-02-14 11:43 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-13 21:50 [RFC 0/6] x86 tip asm ENTRY,ENDPROC cleanup Cyrill Gorcunov
2009-02-13 21:50 ` [RFC 1/6] x86: asm linkage - introduce GLOBAL macro Cyrill Gorcunov
2009-02-13 21:50 ` [RFC 2/6] x86: linkage - get rid of _X86 macros Cyrill Gorcunov
2009-02-13 21:50 ` [RFC 3/6] x86: copy.S - use GLOBAL,ENDPROC macros Cyrill Gorcunov
2009-02-13 21:50 ` [RFC 4/6] x86: pmjump " Cyrill Gorcunov
2009-02-13 21:50 ` [RFC 5/6] x86: compressed head_64 - use ENTRY,ENDPROC macros Cyrill Gorcunov
2009-02-13 21:50 ` [RFC 6/6] x86: compressed head_32 " Cyrill Gorcunov
2009-02-13 23:23 ` [RFC 0/6] x86 tip asm ENTRY,ENDPROC cleanup Alexander van Heukelum
2009-02-14 0:34 ` H. Peter Anvin
2009-02-14 8:21 ` Cyrill Gorcunov
2009-02-14 11:42 ` Alexander van Heukelum [this message]
2009-02-14 20:02 ` H. Peter Anvin
2009-02-19 16:13 ` Ingo Molnar
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=1234611775.19975.1300340003@webmail.messagingengine.com \
--to=heukelum@fastmail.fm \
--cc=gorcunov@gmail.com \
--cc=hpa@zytor.com \
--cc=jbeulich@novell.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.