[Xen-devel,for-4.13,0/6] xen/arm: Add support to build with clang

Message ID 20191002180047.17144-1-julien.grall@arm.com
Headers show
Series
  • xen/arm: Add support to build with clang
Related show

Message

Julien Grall Oct. 2, 2019, 6 p.m.
Hi all,

After this series, I am able to build Xen on Arm64 with clang 7.0. There
are still some issues when building Xen on Arm32 and also using lld.

Cross-compilation is left outside for now, but this is still a good start
for clang (and armclang).

Cheers,

Julien Grall (6):
  xen/arm: fix get_cpu_info() when built with clang
  xen/arm64: bitops: Match the register size with the value size in flsl
  xen/arm: cpuerrata: Match register size with value size in
    check_workaround_*
  xen/arm: cpufeature: Match register size with value size in
    cpus_have_const_cap
  xen/arm: mm: Mark check_memory_layout_alignment_constraints as unused
  xen/arm: traps: Mark check_stack_alignment_constraints as unused

 xen/arch/arm/mm.c                  |  3 ++-
 xen/arch/arm/traps.c               |  3 ++-
 xen/include/asm-arm/arm64/bitops.h |  3 ++-
 xen/include/asm-arm/cpuerrata.h    |  4 ++--
 xen/include/asm-arm/cpufeature.h   |  4 ++--
 xen/include/asm-arm/current.h      | 10 +++++++++-
 6 files changed, 19 insertions(+), 8 deletions(-)

Comments

Jürgen Groß Oct. 3, 2019, 7:37 a.m. | #1
On 02.10.19 20:00, Julien Grall wrote:
> Hi all,
> 
> After this series, I am able to build Xen on Arm64 with clang 7.0. There
> are still some issues when building Xen on Arm32 and also using lld.
> 
> Cross-compilation is left outside for now, but this is still a good start
> for clang (and armclang).
> 
> Cheers,
> 
> Julien Grall (6):
>    xen/arm: fix get_cpu_info() when built with clang
>    xen/arm64: bitops: Match the register size with the value size in flsl
>    xen/arm: cpuerrata: Match register size with value size in
>      check_workaround_*
>    xen/arm: cpufeature: Match register size with value size in
>      cpus_have_const_cap
>    xen/arm: mm: Mark check_memory_layout_alignment_constraints as unused
>    xen/arm: traps: Mark check_stack_alignment_constraints as unused

For the series:

Release-acked-by: Juergen Gross <jgross@suse.com>


Juergen
Artem Mygaiev Oct. 3, 2019, 8:31 a.m. | #2
Hi Julien

Just to confirm - with this series, we are able to run xen master
(4.13-unstable) on R-Car H3:
 * built using clang
 * built using clang-based arm compiler (with further modifications
needed for armlink)

Note we didn't perform full testing, just start xen on its own.

 -- Artem

On Wed, 2019-10-02 at 19:00 +0100, Julien Grall wrote:
> Hi all,

> 

> After this series, I am able to build Xen on Arm64 with clang 7.0.

> There

> are still some issues when building Xen on Arm32 and also using lld.

> 

> Cross-compilation is left outside for now, but this is still a good

> start

> for clang (and armclang).

> 

> Cheers,

> 

> Julien Grall (6):

>   xen/arm: fix get_cpu_info() when built with clang

>   xen/arm64: bitops: Match the register size with the value size in

> flsl

>   xen/arm: cpuerrata: Match register size with value size in

>     check_workaround_*

>   xen/arm: cpufeature: Match register size with value size in

>     cpus_have_const_cap

>   xen/arm: mm: Mark check_memory_layout_alignment_constraints as

> unused

>   xen/arm: traps: Mark check_stack_alignment_constraints as unused

> 

>  xen/arch/arm/mm.c                  |  3 ++-

>  xen/arch/arm/traps.c               |  3 ++-

>  xen/include/asm-arm/arm64/bitops.h |  3 ++-

>  xen/include/asm-arm/cpuerrata.h    |  4 ++--

>  xen/include/asm-arm/cpufeature.h   |  4 ++--

>  xen/include/asm-arm/current.h      | 10 +++++++++-

>  6 files changed, 19 insertions(+), 8 deletions(-)

> 

>