Hi,
Broken constrain in inline asm.  Bytewise access works with a, b, c, d
registers only, thus "r" is wrong, it must be "q".  gcc 4.4 tries to use
the si register, which doesn't work and thus fails the build.
please apply,
  Gerd
 diff -up xen/arch/x86/hvm/vpic.c~ xen/arch/x86/hvm/vpic.c
--- xen/arch/x86/hvm/vpic.c~    2009-02-24 10:59:27.000000000 +0100
+++ xen/arch/x86/hvm/vpic.c     2009-02-24 12:20:46.000000000 +0100
@@ -56,7 +56,7 @@ static int vpic_get_priority(struct hvm_
 
     /* prio = ffs(mask ROR vpic->priority_add); */
     asm ( "ror %%cl,%b1 ; bsf %1,%0"
-          : "=r" (prio) : "r" ((uint32_t)mask), "c" (vpic->priority_add) );
+          : "=r" (prio) : "q" ((uint32_t)mask), "c" (vpic->priority_add) );
     return prio;
 }
 
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 
 |