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

Re: [Xen-devel] Re: [Xen-users] gcc 4.0.0 and xen-devel



> and as far as I remember they remove support for "movl %ds, ...".
> now is must use: "mov %ds, ..."

Yes, I found this on google.
http://www.kernel.org/pub/linux/devel/binutils/release.binutils-2.16.90.0.2


> does the following patch fix your problems ?

Part of it because there are more places. Thanks!

Well, now it breaks because of warnings.

===== xen/arch/x86/x86_32/entry.S 1.112 vs edited =====
--- 1.112/xen/arch/x86/x86_32/entry.S   2005-06-02 17:05:31 -04:00
+++ edited/xen/arch/x86/x86_32/entry.S  2005-06-09 10:32:50 -04:00
@@ -176,10 +176,10 @@
 restore_all_guest:
         testl $X86_EFLAGS_VM,UREGS_eflags(%esp)
         jnz  restore_all_vm86
-FLT1:   movl UREGS_ds(%esp),%ds
-FLT2:   movl UREGS_es(%esp),%es
-FLT3:   movl UREGS_fs(%esp),%fs
-FLT4:   movl UREGS_gs(%esp),%gs
+FLT1:   mov UREGS_ds(%esp),%ds
+FLT2:   mov UREGS_es(%esp),%es
+FLT3:   mov UREGS_fs(%esp),%fs
+FLT4:   mov UREGS_gs(%esp),%gs
 restore_all_vm86:
         popl %ebx
         popl %ecx
@@ -306,7 +306,7 @@
         testl $(2|X86_EFLAGS_VM),%ecx
         jz   ring1 /* jump if returning to an existing ring-1 activation */
         movl VCPU_kernel_sp(%ebx),%esi
-FLT6:   movl VCPU_kernel_ss(%ebx),%gs
+FLT6:   mov VCPU_kernel_ss(%ebx),%gs
         testl $X86_EFLAGS_VM,UREGS_eflags+4(%esp)
         jz   nvm86_1
         subl $16,%esi       /* push ES/DS/FS/GS (VM86 stack frame) */
@@ -326,7 +326,7 @@
         jmp 1f
 ring1:  /* obtain ss/esp from oldss/oldesp -- a ring-1 activation exists */
         movl UREGS_esp+4(%esp),%esi
-FLT13:  movl UREGS_ss+4(%esp),%gs 
+FLT13:  mov UREGS_ss+4(%esp),%gs 
 1:      /* Construct a stack frame: EFLAGS, CS/EIP */
         movb TRAPBOUNCE_flags(%edx),%cl
         subl $12,%esi
@@ -383,7 +383,7 @@
 nvm86_3:/* Rewrite our stack frame and return to ring 1. */
         /* IA32 Ref. Vol. 3: TF, VM, RF and NT flags are cleared on trap. */
         andl $0xfffcbeff,UREGS_eflags+4(%esp)
-        movl %gs,UREGS_ss+4(%esp)
+        mov %gs,UREGS_ss+4(%esp)
         movl %esi,UREGS_esp+4(%esp)
         movzwl TRAPBOUNCE_cs(%edx),%eax
         movl %eax,UREGS_cs+4(%esp)
@@ -670,7 +670,7 @@
 
         # GS:ESI == Ring-1 stack activation
         movl UREGS_esp(%esp),%esi
-VFLT1:  movl UREGS_ss(%esp),%gs
+VFLT1:  mov UREGS_ss(%esp),%gs
 
         # ES:EDI == Ring-0 stack activation
         leal UREGS_eip(%esp),%edi
===== xen/include/asm-x86/x86_32/asm_defns.h 1.10 vs edited =====
--- 1.10/xen/include/asm-x86/x86_32/asm_defns.h 2005-04-28 17:35:48 -04:00
+++ edited/xen/include/asm-x86/x86_32/asm_defns.h       2005-06-09 10:30:45 
-04:00
@@ -19,10 +19,10 @@
         "jmp 3f;"                                                       \
         "2:testb $3,"STR(UREGS_cs)"(%esp);"                             \
         "jz 1f;"                                                        \
-        "movl %ds,"STR(UREGS_ds)"(%esp);"                               \
-        "movl %es,"STR(UREGS_es)"(%esp);"                               \
-        "movl %fs,"STR(UREGS_fs)"(%esp);"                               \
-        "movl %gs,"STR(UREGS_gs)"(%esp);"                               \
+        "mov %ds,"STR(UREGS_ds)"(%esp);"                               \
+        "mov %es,"STR(UREGS_es)"(%esp);"                               \
+        "mov %fs,"STR(UREGS_fs)"(%esp);"                               \
+        "mov %gs,"STR(UREGS_gs)"(%esp);"                               \
         "3:"
 
 #define SAVE_ALL_NOSEGREGS(_reg)                \
@@ -31,8 +31,8 @@
 
 #define SET_XEN_SEGMENTS(_reg)                                  \
         "movl $("STR(__HYPERVISOR_DS)"),%e"STR(_reg)"x;"        \
-        "movl %e"STR(_reg)"x,%ds;"                              \
-        "movl %e"STR(_reg)"x,%es;"
+        "mov %e"STR(_reg)"x,%ds;"                              \
+        "mov %e"STR(_reg)"x,%es;"
 
 #define SAVE_ALL(_reg)                          \
         __SAVE_ALL_PRE                          \
@@ -56,10 +56,10 @@
         jmp 3f;                                         \
         2:testb $3,UREGS_cs(%esp);                      \
         jz 1f;                                          \
-        movl %ds,UREGS_ds(%esp);                        \
-        movl %es,UREGS_es(%esp);                        \
-        movl %fs,UREGS_fs(%esp);                        \
-        movl %gs,UREGS_gs(%esp);                        \
+        mov %ds,UREGS_ds(%esp);                        \
+        mov %es,UREGS_es(%esp);                        \
+        mov %fs,UREGS_fs(%esp);                        \
+        mov %gs,UREGS_gs(%esp);                        \
         3:
 
 #define SAVE_ALL_NOSEGREGS(_reg)                \
@@ -68,8 +68,8 @@
 
 #define SET_XEN_SEGMENTS(_reg)                          \
         movl $(__HYPERVISOR_DS),%e ## _reg ## x;        \
-        movl %e ## _reg ## x,%ds;                       \
-        movl %e ## _reg ## x,%es;
+        mov %e ## _reg ## x,%ds;                       \
+        mov %e ## _reg ## x,%es;
 
 #define SAVE_ALL(_reg)                          \
         __SAVE_ALL_PRE                          \

-- 
Flávio Bruno Leitner <fbl@xxxxxxxxxxxxxxxx>
[0EA2 7F40 4CF4 1E63 4AF6  33C0 3E10 E205 F251 EDDA]

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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