[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 6/6] xen: arm: Correctly use GLOBAL/ENTRY in head.S, avoid .global
Hi Ian, On 07/21/2014 02:00 PM, Ian Campbell wrote: > Use ENTRY() for function entry points since it ensures correct > alignment where GLOBAL() doesn't. The exception is the initial start > label which must be at offset 0, so just use GLOBAL() to avoid the > possibility of realignment. > > Since everything happens to already be aligned there should be no > difference to the actual binary. objdump agrees. > > Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> Acked-by: Julien Grall <julien.grall@xxxxxxxxxx> Regards, > --- > v3: New patch > --- > xen/arch/arm/arm32/head.S | 8 +++----- > xen/arch/arm/arm64/head.S | 8 +++----- > 2 files changed, 6 insertions(+), 10 deletions(-) > > diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S > index 14b172f..6573a42 100644 > --- a/xen/arch/arm/arm32/head.S > +++ b/xen/arch/arm/arm32/head.S > @@ -76,8 +76,7 @@ > * It should be linked at XEN_VIRT_START, and loaded at any > * 4K-aligned address. All of text+data+bss must fit in 2MB, > * or the initial pagetable code below will need adjustment. */ > - .global start > -start: > +GLOBAL(start) > /* zImage magic header, see: > * > http://www.simtec.co.uk/products/SWLINUX/files/booting_article.html#d0e309 > */ > @@ -583,16 +582,15 @@ hex: .ascii "0123456789abcdef" > > #else /* CONFIG_EARLY_PRINTK */ > > +ENTRY(early_puts) > init_uart: > -.global early_puts > -early_puts: > puts: > putn: mov pc, lr > > #endif /* !CONFIG_EARLY_PRINTK */ > > /* This provides a C-API version of __lookup_processor_type */ > -GLOBAL(lookup_processor_type) > +ENTRY(lookup_processor_type) > stmfd sp!, {r4, r10, lr} > mov r10, #0 /* r10 := offset between virt&phys */ > bl __lookup_processor_type > diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S > index 9497ca1..99cc6e0 100644 > --- a/xen/arch/arm/arm64/head.S > +++ b/xen/arch/arm/arm64/head.S > @@ -100,8 +100,7 @@ > * or the initial pagetable code below will need adjustment. > */ > > - .global start > -start: > +GLOBAL(start) > /* > * DO NOT MODIFY. Image header expected by Linux boot-loaders. > */ > @@ -604,9 +603,8 @@ hex: .ascii "0123456789abcdef" > > #else /* CONFIG_EARLY_PRINTK */ > > +ENTRY(early_puts) > init_uart: > -.global early_puts > -early_puts: > puts: > putn: ret > > @@ -615,7 +613,7 @@ putn: ret > /* This provides a C-API version of __lookup_processor_type > * TODO: For now, the implementation return NULL every time > */ > -GLOBAL(lookup_processor_type) > +ENTRY(lookup_processor_type) > mov x0, #0 > ret > > -- Julien Grall _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |