ia64/xen-unstable

changeset 6779:b5d91089e42c

Newer binutils is a bit stricter and errors out when you try
to use movl on a 16 bit word on x86_64. Using just a "mov"
compiles fine and should result in the same code.

{standard input}: Assembler messages:
{standard input}:2138: Error: suffix or operands invalid for `mov'
{standard input}:2140: Error: suffix or operands invalid for `mov'
{standard input}:2142: Error: suffix or operands invalid for `mov'
{standard input}:2144: Error: suffix or operands invalid for `mov'

Signed-off-by: Rik van Riel <riel@redhat.com>
author kaf24@firebug.cl.cam.ac.uk
date Tue Sep 13 10:21:22 2005 +0000 (2005-09-13)
parents bd951d23d713
children e17161930711
files xen/arch/x86/domain.c
line diff
     1.1 --- a/xen/arch/x86/domain.c	Tue Sep 13 10:14:20 2005 +0000
     1.2 +++ b/xen/arch/x86/domain.c	Tue Sep 13 10:21:22 2005 +0000
     1.3 @@ -674,10 +674,10 @@ static void save_segments(struct vcpu *v
     1.4      if ( VMX_DOMAIN(v) )
     1.5          rdmsrl(MSR_SHADOW_GS_BASE, v->arch.arch_vmx.msr_content.shadow_gs);
     1.6  
     1.7 -    __asm__ __volatile__ ( "movl %%ds,%0" : "=m" (regs->ds) );
     1.8 -    __asm__ __volatile__ ( "movl %%es,%0" : "=m" (regs->es) );
     1.9 -    __asm__ __volatile__ ( "movl %%fs,%0" : "=m" (regs->fs) );
    1.10 -    __asm__ __volatile__ ( "movl %%gs,%0" : "=m" (regs->gs) );
    1.11 +    __asm__ __volatile__ ( "mov %%ds,%0" : "=m" (regs->ds) );
    1.12 +    __asm__ __volatile__ ( "mov %%es,%0" : "=m" (regs->es) );
    1.13 +    __asm__ __volatile__ ( "mov %%fs,%0" : "=m" (regs->fs) );
    1.14 +    __asm__ __volatile__ ( "mov %%gs,%0" : "=m" (regs->gs) );
    1.15  
    1.16      if ( regs->ds )
    1.17          dirty_segment_mask |= DIRTY_DS;