public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Jeroen Hofstee <jeroen@myspectrum.nl>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC 07/10] ARM: make gd a function a function for clang
Date: Tue, 03 Jun 2014 21:44:55 +0200	[thread overview]
Message-ID: <1401824695.2465.46.camel@yellow> (raw)
In-Reply-To: <CAPnjgZ2OPZzZx3VVPAFntY7AYrfsLQY4im-m2k12d_G-3L1nPA@mail.gmail.com>

On ma, 2014-06-02 at 20:20 -0600, Simon Glass wrote:
> Hi Jeroen,
> 
> On 31 May 2014 14:32, Jeroen Hofstee <jeroen@myspectrum.nl> wrote:
> > ---
> >  arch/arm/include/asm/global_data.h | 17 +++++++++++++++++
> >  1 file changed, 17 insertions(+)
> >
> > diff --git a/arch/arm/include/asm/global_data.h b/arch/arm/include/asm/global_data.h
> > index 63e4ad5..646d694 100644
> > --- a/arch/arm/include/asm/global_data.h
> > +++ b/arch/arm/include/asm/global_data.h
> > @@ -44,10 +44,27 @@ struct arch_global_data {
> >
> >  #include <asm-generic/global_data.h>
> >
> > +#ifdef __clang__
> > +
> > +#define DECLARE_GLOBAL_DATA_PTR
> > +#define gd     get_gd()
> > +
> > +static __inline volatile gd_t *get_gd(void)
> > +{
> > +       gd_t *gd_ptr;
> > +
> > +       __asm__ volatile("mov %0, r9\n" : "=r" (gd_ptr));
> > +
> > +       return gd_ptr;
> > +}
> > +
> > +#else
> > +
> >  #ifdef CONFIG_ARM64
> >  #define DECLARE_GLOBAL_DATA_PTR                register volatile gd_t *gd asm ("x18")
> >  #else
> >  #define DECLARE_GLOBAL_DATA_PTR                register volatile gd_t *gd asm ("r9")
> >  #endif
> > +#endif
> >
> >  #endif /* __ASM_GBL_DATA_H */
> 
> Probably a good idea to copy Albert on these patches. What happens if
> you compile ARM64 with Clang?
> 
> Regards,
> Simon

  reply	other threads:[~2014-06-03 19:44 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-31 20:32 [U-Boot] [RFC 00/10] clang support for ARM Jeroen Hofstee
2014-05-31 20:32 ` [U-Boot] [RFC 01/10] ARM: crt0.S: clear the global data Jeroen Hofstee
2014-06-03  2:02   ` Simon Glass
2014-06-03 19:41     ` Jeroen Hofstee
2014-06-03 15:36   ` Tim Harvey
2014-07-11 17:55   ` Jeroen Hofstee
2014-05-31 20:32 ` [U-Boot] [RFC 02/10] ARM: omap3/board: add spl specific board_init_f Jeroen Hofstee
2014-05-31 20:32 ` [U-Boot] [RFC 03/10] board_r: only assign gd when requested Jeroen Hofstee
2014-06-03  2:05   ` Simon Glass
2014-06-03 20:52   ` Jeroen Hofstee
2014-06-04  3:52     ` Stefan Roese
2014-06-04  4:19       ` York Sun
2014-05-31 20:32 ` [U-Boot] [RFC 04/10] ARM: do not set gd in generic board again Jeroen Hofstee
2014-06-03  2:06   ` Simon Glass
2014-05-31 20:32 ` [U-Boot] [RFC 05/10] ARM: SPL: do not set gd again Jeroen Hofstee
2014-06-03  2:07   ` Simon Glass
2014-06-03 15:38   ` Tim Harvey
2014-05-31 20:32 ` [U-Boot] [RFC 06/10] cc-option: make it work with clang Jeroen Hofstee
2014-06-10  8:39   ` Masahiro Yamada
2014-06-10  8:52     ` Albert ARIBAUD
2014-07-05 13:34     ` Jeroen Hofstee
2014-05-31 20:32 ` [U-Boot] [RFC 07/10] ARM: make gd a function a function for clang Jeroen Hofstee
2014-06-03  2:20   ` Simon Glass
2014-06-03 19:44     ` Jeroen Hofstee [this message]
2014-06-03 19:58     ` Jeroen Hofstee
2014-06-03 20:00       ` Simon Glass
2014-05-31 20:32 ` [U-Boot] [RFC 08/10] inline: use the gcc inline version instead of the c99 one Jeroen Hofstee
2014-05-31 20:32 ` [U-Boot] [RFC 09/10] eabi_compat: add __aeabi_memcpy __aeabi_memset Jeroen Hofstee
2014-05-31 20:32 ` [U-Boot] [RFC 10/10] README.clang: build command with clang Jeroen Hofstee
2014-07-30 19:54 ` [U-Boot] [PATCH v2 0/8] add clang support for some ARM boards Jeroen Hofstee
2014-07-30 19:54   ` [U-Boot] [PATCH v2 1/8] board_r: ARM[64] do not set gd again Jeroen Hofstee
2014-07-30 19:54   ` [U-Boot] [PATCH v2 2/8] ARM: SPL: " Jeroen Hofstee
2014-07-30 19:54   ` [U-Boot] [PATCH v2 3/8] cc-option: also detect unsupported warnings options Jeroen Hofstee
2014-07-30 19:54   ` [U-Boot] [PATCH v2 4/8] ARM: make gd a function for clang Jeroen Hofstee
2014-07-30 19:54   ` [U-Boot] [PATCH v2 5/8] eabi_compat: add __aeabi_memcpy __aeabi_memset Jeroen Hofstee
2014-07-30 19:54   ` [U-Boot] [PATCH v2 6/8] clang: workaround for generated constants Jeroen Hofstee
2014-07-30 19:54   ` [U-Boot] [PATCH v2 7/8] Makefile: default to cc for host compiler Jeroen Hofstee
2014-07-31 10:01     ` Masahiro Yamada
2014-09-09 14:31       ` Albert ARIBAUD
2014-09-09 17:34         ` Jeroen Hofstee
2014-09-09 19:59           ` Albert ARIBAUD
2014-09-09 21:48             ` Jeroen Hofstee
2014-09-10 10:02             ` Jeroen Hofstee
2014-09-11  5:03           ` Masahiro Yamada
2014-07-30 19:54   ` [U-Boot] [PATCH v2 8/8] README.clang: build command with clang Jeroen Hofstee
2014-09-10 18:08   ` [U-Boot] [PATCH v3 0/8] add clang support for some ARM boards Jeroen Hofstee
2014-09-10 18:08     ` [U-Boot] [PATCH v3 7/8] Makefile: default to cc for host compiler Jeroen Hofstee
2014-09-10 18:08     ` [U-Boot] [PATCH v3 8/8] README.clang: build command with clang Jeroen Hofstee
2014-09-11  8:32     ` [U-Boot] [PATCH v3 0/8] add clang support for some ARM boards Albert ARIBAUD
2014-09-11 11:17       ` Jeroen Hofstee
2014-09-11 13:31         ` Albert ARIBAUD
2014-09-11 20:12           ` Jeroen Hofstee
2014-09-11 15:43         ` Albert ARIBAUD
2014-09-11 19:36           ` Jeroen Hofstee
2014-09-11 15:48     ` Albert ARIBAUD

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=1401824695.2465.46.camel@yellow \
    --to=jeroen@myspectrum.nl \
    --cc=u-boot@lists.denx.de \
    /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