From: Jiri Slaby <jslaby@suse.cz>
To: Christopher Li <sparse@chrisli.org>
Cc: Linux-Sparse <linux-sparse@vger.kernel.org>
Subject: Re: [PATCH 1/1] parser: add support for asm goto
Date: Fri, 18 Jun 2010 10:21:41 +0200 [thread overview]
Message-ID: <4C1B2C95.8000903@suse.cz> (raw)
In-Reply-To: <AANLkTimGxxcjL74Yxshk3ybzQld3uf3Yhuk6VNAvQZWA@mail.gmail.com>
On 06/18/2010 02:35 AM, Christopher Li wrote:
> On Fri, Jun 11, 2010 at 1:21 PM, Christopher Li <sparse@chrisli.org> wrote:
>>> static inline int __static_cpu_has(unsigned char bit)
>>> {
>>> asm goto("1: jmp %l[t_no]\n"
>>> "2:\n"
>>> ".section .altinstructions,\"a\"\n"
>>> "\n"
>>> "1b\n"
>>> "0\n" /* no replacement */
>>> " .byte %P0\n" /* feature bit */
>>> " .byte 2b - 1b\n" /* source len */
>>> " .byte 0\n" /* replacement len */
>>> " .byte 0xff + 0 - (2b-1b)\n" /* padding */
>>> ".previous\n"
>>> : : "i" (bit) : : t_no, ble);
>>> return 1;
>>> t_no:
>>> return 0;
>>> }
>>>
>
> Hi, I update the chrisl branch with your change and the test case.
>
> Please verify it. I hope I did not do some thing stupid there.
Where can I find it?
> It just hit me, is "asm volatile goto" or "asm goto volatile" valid?
> If so, the asm goto code needs some change.
Holy crap, in docco, there is nothing like that, but I checked gcc
parser sources to be sure, and there indeed is:
asm type-qualifier[opt] ( asm-argument ) ;
asm type-qualifier[opt] goto ( asm-goto-argument ) ;
So yes, asm volatile goto is valid. Would you take care of that?
--
js
suse labs
next prev parent reply other threads:[~2010-06-18 8:21 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1276158810-21313-1-git-send-email-jslaby@suse.cz>
2010-06-10 19:18 ` [PATCH 1/1] parser: add support for asm goto Christopher Li
2010-06-11 15:05 ` Jiri Slaby
2010-06-11 20:21 ` Christopher Li
2010-06-18 0:35 ` Christopher Li
2010-06-18 8:21 ` Jiri Slaby [this message]
2010-06-18 8:23 ` Jiri Slaby
2010-06-18 8:29 ` Jiri Slaby
2010-06-18 9:40 ` Christopher Li
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=4C1B2C95.8000903@suse.cz \
--to=jslaby@suse.cz \
--cc=linux-sparse@vger.kernel.org \
--cc=sparse@chrisli.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 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.