All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [RFC 00/10] clang support for ARM
@ 2014-05-31 20:32 Jeroen Hofstee
  2014-05-31 20:32 ` [U-Boot] [RFC 01/10] ARM: crt0.S: clear the global data Jeroen Hofstee
                   ` (10 more replies)
  0 siblings, 11 replies; 55+ messages in thread
From: Jeroen Hofstee @ 2014-05-31 20:32 UTC (permalink / raw)
  To: u-boot

Hi, I rebased some patches with should compile a working u-boot
with clang and gcc (besides a couple which don't have memset),
but I didn't bother too much about that for now.

Obviously this is not intended for the next release, but a
request for comment. Clang is not really fond of the gd
assignment and I tried to get rid of them since crt0.S already
handles this. I also added clearing gd (in a broken way) to
crt0.S to prevent all board_init_f having to do it again and
again (i2c / serial typically depends on it).

The most important question is if these patches break any
existing board. Your feedback is welcome.

Kind regards,
Jeroen

patches are also at (with some twister board specific ones):
https://github.com/jhofstee/u-boot/commits/v2014.07-rc2-clang

Jeroen Hofstee (10):
  ARM: crt0.S: clear the global data
  ARM: omap3/board: add spl specific board_init_f
  board_r: only assign gd when requested
  ARM: do not set gd in generic board again
  ARM: SPL: do not set gd again
  cc-option: make it work with clang
  ARM: make gd a function a function for clang
  inline: use the gcc inline version instead of the c99 one.
  eabi_compat: add __aeabi_memcpy __aeabi_memset
  README.clang: build command with clang

 arch/arm/cpu/armv7/omap3/board.c   | 15 ++++++++++-----
 arch/arm/include/asm/config.h      |  2 --
 arch/arm/include/asm/global_data.h | 17 +++++++++++++++++
 arch/arm/lib/crt0.S                |  6 ++++++
 arch/arm/lib/eabi_compat.c         | 15 +++++++++++++--
 arch/arm/lib/spl.c                 |  3 ---
 common/board_r.c                   |  2 +-
 doc/README.clang                   | 15 +++++++++++++++
 include/linux/compiler-gcc.h       |  7 ++++---
 scripts/Kbuild.include             |  4 ++--
 10 files changed, 68 insertions(+), 18 deletions(-)
 create mode 100644 doc/README.clang

-- 
1.8.3.2

^ permalink raw reply	[flat|nested] 55+ messages in thread

end of thread, other threads:[~2014-09-11 20:12 UTC | newest]

Thread overview: 55+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
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
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

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.