From: Matthias Kaehlcke <mka@chromium.org>
To: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Michal Marek <mmarek@suse.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux Kbuild mailing list <linux-kbuild@vger.kernel.org>,
Grant Grundler <grundler@chromium.org>,
Michael Davidson <md@google.com>,
Greg Hackmann <ghackmann@google.com>,
Behan Webster <behanw@converseincode.com>,
Peter Foley <pefoley2@pefoley.com>
Subject: Re: [RFC PATCH] kbuild: Fix asm-offset generation to work with clang
Date: Thu, 13 Apr 2017 17:37:45 -0700 [thread overview]
Message-ID: <20170414003745.GI28657@google.com> (raw)
In-Reply-To: <20170411180354.GD28657@google.com>
El Tue, Apr 11, 2017 at 11:03:54AM -0700 Matthias Kaehlcke ha dit:
> El Tue, Apr 11, 2017 at 09:01:41PM +0900 Masahiro Yamada ha dit:
>
> > 2017-04-04 6:25 GMT+09:00 Matthias Kaehlcke <mka@chromium.org>:
> > > When using clang with -no-integerated-as clang will use the gnu
> > > assembler instead of the integrated assembler. However clang will
> > > still perform asm error checking before sending the inline assembly
> > > language to gas.
> > >
> > > The generation of asm-offsets from within C code is dependent on gcc's
> > > blind passing of whatever is in asm() through to gas. Arbirary text is
> > > passed through which is then modified by a sed script into the
> > > appropriate .h and .S code. Since the arbitrary text is not valid
> > > assembly language, clang fails.
> > >
> > > This can be fixed by making the arbitrary text into an ASM comment and
> > > then updating the sed scripts accordingly to work as expected.
> > >
> > > This solution works for both gcc and clang.
> > >
> > > Based-on-patch-from: Behan Webster <behanw@converseincode.com>
> > > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> >
> >
> >
> > Could you check Jeroen Hofstee's work for U-Boot?
> >
> > http://patchwork.ozlabs.org/patch/375026/
>
> No I didn't come across it, thanks for the pointer!
>
> > His idea is to use .ascii string
> > in order to handle this in arch-agnostic way.
>
> Looks good, way cleaner than my proposed solution :)
>
> > If you are happy about this idea,
> > I can forward his patch (with a little bit adjustment).
>
> With forward you mean you plan to port it? Otherwise I'm also happy to
> give it a go, just let me know.
>
> > We may want to refactor the patch because
> > the double mark ".ascii" and "->" seem redundant,
> > but it is just a detail.
>
> Agree, since we are already touching this part we might as well remove
> the "->".
Thinking about it a bit more it seems safer to keep the "->" since
the input file might contain actual ".ascii" directives.
Cheers
Matthias
next prev parent reply other threads:[~2017-04-14 0:37 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-03 21:25 [RFC PATCH] kbuild: Fix asm-offset generation to work with clang Matthias Kaehlcke
2017-04-11 12:01 ` Masahiro Yamada
2017-04-11 18:03 ` Matthias Kaehlcke
2017-04-14 0:37 ` Matthias Kaehlcke [this message]
2017-04-14 5:53 ` Masahiro Yamada
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=20170414003745.GI28657@google.com \
--to=mka@chromium.org \
--cc=behanw@converseincode.com \
--cc=ghackmann@google.com \
--cc=grundler@chromium.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=md@google.com \
--cc=mmarek@suse.com \
--cc=pefoley2@pefoley.com \
--cc=yamada.masahiro@socionext.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 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.