[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH for-4.7 0/5] build: fixes for building Xen with clang



This series contain small bug-fixes for building the Xen microkernel with
clang. I think they are suitable for 4.7, but that's just my opinion.

I've also noticed that Xen always sets "-no-integrated-as" when using clang,
because previous versions (<3.8.0) didn't support .code16/.code32/.code64
in inline asm. This is solved at least in version 3.8.0 (haven't tested
older versions). The problem now to switch to the integrated clang assembler
is the usage of the rept instructions in some files in conjunction with
labels:

entry.S:403:15: error: unexpected token in '.rept' directive
        .rept 48 -((.-compat_hypercall_table)/8)
              ^
entry.S:405:14: error: unmatched '.endr' directive
        .endr
             ^
entry.S:408:15: error: unexpected token in '.rept' directive
        .rept 64 -((.-compat_hypercall_table)/8)
              ^
entry.S:410:14: error: unmatched '.endr' directive
        .endr
             ^
entry.S:455:15: error: unexpected token in '.rept' directive
        .rept 48 -(.-compat_hypercall_args_table)
              ^
entry.S:457:14: error: unmatched '.endr' directive
        .endr
             ^
entry.S:460:15: error: unexpected token in '.rept' directive
        .rept 64 -(.-compat_hypercall_args_table)
              ^
entry.S:462:14: error: unmatched '.endr' directive
        .endr
             ^

The entry.S file this errors come from is xen/arch/x86/x86_64/compat/entry.S

If anyone has any clever ideas about how to replace those instructions with
compatible ones, I'm more than willing to listen. AFAICT, this is the last
issue that prevents Xen from switch to the integrated clang assembler on
newer clang versions.

Thanks, Roger.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.