ia64/xen-unstable

changeset 18042:54dec90cbea9

stubdom: fixes for old gcc & binutils

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Fri Jul 11 15:37:31 2008 +0100 (2008-07-11)
parents 86e3027df9d9
children f5d23ee2134e
files extras/mini-os/arch/ia64/minios-ia64.lds extras/mini-os/arch/x86/minios-x86_32.lds extras/mini-os/arch/x86/minios-x86_64.lds stubdom/newlib.patch
line diff
     1.1 --- a/extras/mini-os/arch/ia64/minios-ia64.lds	Fri Jul 11 15:36:40 2008 +0100
     1.2 +++ b/extras/mini-os/arch/ia64/minios-ia64.lds	Fri Jul 11 15:37:31 2008 +0100
     1.3 @@ -55,8 +55,8 @@ SECTIONS
     1.4    .ctors : {
     1.5          __CTOR_LIST__ = .;
     1.6          QUAD((__CTOR_END__ - __CTOR_LIST__) / 8 - 2)
     1.7 -        *(SORT_BY_NAME(.ctors))
     1.8 -	SORT_BY_NAME(CONSTRUCTORS)
     1.9 +        *(.ctors)
    1.10 +	CONSTRUCTORS
    1.11          QUAD(0)
    1.12          __CTOR_END__ = .;
    1.13          }
    1.14 @@ -64,7 +64,7 @@ SECTIONS
    1.15    .dtors : {
    1.16          __DTOR_LIST__ = .;
    1.17          QUAD((__DTOR_END__ - __DTOR_LIST__) / 8 - 2)
    1.18 -        *(SORT_BY_NAME(.dtors))
    1.19 +        *(.dtors)
    1.20          QUAD(0)
    1.21          __DTOR_END__ = .;
    1.22          }
     2.1 --- a/extras/mini-os/arch/x86/minios-x86_32.lds	Fri Jul 11 15:36:40 2008 +0100
     2.2 +++ b/extras/mini-os/arch/x86/minios-x86_32.lds	Fri Jul 11 15:37:31 2008 +0100
     2.3 @@ -31,8 +31,8 @@ SECTIONS
     2.4    .ctors : {
     2.5          __CTOR_LIST__ = .;
     2.6          LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)
     2.7 -        *(SORT_BY_NAME(.ctors))
     2.8 -	SORT_BY_NAME(CONSTRUCTORS)
     2.9 +        *(.ctors)
    2.10 +	CONSTRUCTORS
    2.11          LONG(0)
    2.12          __CTOR_END__ = .;
    2.13          }
    2.14 @@ -40,7 +40,7 @@ SECTIONS
    2.15    .dtors : {
    2.16          __DTOR_LIST__ = .;
    2.17          LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)
    2.18 -        *(SORT_BY_NAME(.dtors))
    2.19 +        *(.dtors)
    2.20          LONG(0)
    2.21          __DTOR_END__ = .;
    2.22          }
     3.1 --- a/extras/mini-os/arch/x86/minios-x86_64.lds	Fri Jul 11 15:36:40 2008 +0100
     3.2 +++ b/extras/mini-os/arch/x86/minios-x86_64.lds	Fri Jul 11 15:37:31 2008 +0100
     3.3 @@ -31,8 +31,8 @@ SECTIONS
     3.4    .ctors : {
     3.5          __CTOR_LIST__ = .;
     3.6          QUAD((__CTOR_END__ - __CTOR_LIST__) / 8 - 2)
     3.7 -        *(SORT_BY_NAME(.ctors))
     3.8 -	SORT_BY_NAME(CONSTRUCTORS)
     3.9 +        *(.ctors)
    3.10 +	CONSTRUCTORS
    3.11          QUAD(0)
    3.12          __CTOR_END__ = .;
    3.13          }
    3.14 @@ -40,7 +40,7 @@ SECTIONS
    3.15    .dtors : {
    3.16          __DTOR_LIST__ = .;
    3.17          QUAD((__DTOR_END__ - __DTOR_LIST__) / 8 - 2)
    3.18 -        *(SORT_BY_NAME(.dtors))
    3.19 +        *(.dtors)
    3.20          QUAD(0)
    3.21          __DTOR_END__ = .;
    3.22          }
     4.1 --- a/stubdom/newlib.patch	Fri Jul 11 15:36:40 2008 +0100
     4.2 +++ b/stubdom/newlib.patch	Fri Jul 11 15:37:31 2008 +0100
     4.3 @@ -201,3 +201,340 @@ diff -u -p -r1.1 memcpy.S
     4.4     ret
     4.5   
     4.6   
     4.7 +--- newlib/libc/machine/x86_64/x86_64mach.h.orig	2008-07-11 14:57:23.062269000 +0100
     4.8 ++++ newlib/libc/machine/x86_64/x86_64mach.h	2008-07-11 14:58:01.262503000 +0100
     4.9 +@@ -22,81 +22,81 @@
    4.10 + 
    4.11 + #define REG(x) CONCAT1(__REG_PREFIX__, x)
    4.12 + 
    4.13 +-#define rax REG(rax)
    4.14 +-#define rbx REG(rbx)
    4.15 +-#define rcx REG(rcx)
    4.16 +-#define rdx REG(rdx)
    4.17 +-#define rsi REG(rsi)
    4.18 +-#define rdi REG(rdi)
    4.19 +-#define rbp REG(rbp)
    4.20 +-#define rsp REG(rsp)
    4.21 +-
    4.22 +-#define r8  REG(r8)
    4.23 +-#define r9  REG(r9)
    4.24 +-#define r10 REG(r10)
    4.25 +-#define r11 REG(r11)
    4.26 +-#define r12 REG(r12)
    4.27 +-#define r13 REG(r13)
    4.28 +-#define r14 REG(r14)
    4.29 +-#define r15 REG(r15)
    4.30 +-
    4.31 +-#define eax REG(eax)
    4.32 +-#define ebx REG(ebx)
    4.33 +-#define ecx REG(ecx)
    4.34 +-#define edx REG(edx)
    4.35 +-#define esi REG(esi)
    4.36 +-#define edi REG(edi)
    4.37 +-#define ebp REG(ebp)
    4.38 +-#define esp REG(esp)
    4.39 +-
    4.40 +-#define st0 REG(st)
    4.41 +-#define st1 REG(st(1))
    4.42 +-#define st2 REG(st(2))
    4.43 +-#define st3 REG(st(3))
    4.44 +-#define st4 REG(st(4))
    4.45 +-#define st5 REG(st(5))
    4.46 +-#define st6 REG(st(6))
    4.47 +-#define st7 REG(st(7))
    4.48 +-
    4.49 +-#define ax REG(ax)
    4.50 +-#define bx REG(bx)
    4.51 +-#define cx REG(cx)
    4.52 +-#define dx REG(dx)
    4.53 +-
    4.54 +-#define ah REG(ah)
    4.55 +-#define bh REG(bh)
    4.56 +-#define ch REG(ch)
    4.57 +-#define dh REG(dh)
    4.58 +-
    4.59 +-#define al REG(al)
    4.60 +-#define bl REG(bl)
    4.61 +-#define cl REG(cl)
    4.62 +-#define dl REG(dl)
    4.63 +-
    4.64 +-#define sil REG(sil)
    4.65 +-
    4.66 +-#define mm1 REG(mm1)
    4.67 +-#define mm2 REG(mm2)
    4.68 +-#define mm3 REG(mm3)
    4.69 +-#define mm4 REG(mm4)
    4.70 +-#define mm5 REG(mm5)
    4.71 +-#define mm6 REG(mm6)
    4.72 +-#define mm7 REG(mm7)
    4.73 +-
    4.74 +-#define xmm0 REG(xmm0)
    4.75 +-#define xmm1 REG(xmm1)
    4.76 +-#define xmm2 REG(xmm2)
    4.77 +-#define xmm3 REG(xmm3)
    4.78 +-#define xmm4 REG(xmm4)
    4.79 +-#define xmm5 REG(xmm5)
    4.80 +-#define xmm6 REG(xmm6)
    4.81 +-#define xmm7 REG(xmm7)
    4.82 +-
    4.83 +-#define cr0 REG(cr0)
    4.84 +-#define cr1 REG(cr1)
    4.85 +-#define cr2 REG(cr2)
    4.86 +-#define cr3 REG(cr3)
    4.87 +-#define cr4 REG(cr4)
    4.88 ++#define rax %rax
    4.89 ++#define rbx %rbx
    4.90 ++#define rcx %rcx
    4.91 ++#define rdx %rdx
    4.92 ++#define rsi %rsi
    4.93 ++#define rdi %rdi
    4.94 ++#define rbp %rbp
    4.95 ++#define rsp %rsp
    4.96 ++
    4.97 ++#define r8  %r8
    4.98 ++#define r9  %r9
    4.99 ++#define r10 %r10
   4.100 ++#define r11 %r11
   4.101 ++#define r12 %r12
   4.102 ++#define r13 %r13
   4.103 ++#define r14 %r14
   4.104 ++#define r15 %r15
   4.105 ++
   4.106 ++#define eax %eax
   4.107 ++#define ebx %ebx
   4.108 ++#define ecx %ecx
   4.109 ++#define edx %edx
   4.110 ++#define esi %esi
   4.111 ++#define edi %edi
   4.112 ++#define ebp %ebp
   4.113 ++#define esp %esp
   4.114 ++
   4.115 ++#define st0 %st
   4.116 ++#define st1 %st(1)
   4.117 ++#define st2 %st(2)
   4.118 ++#define st3 %st(3)
   4.119 ++#define st4 %st(4)
   4.120 ++#define st5 %st(5)
   4.121 ++#define st6 %st(6)
   4.122 ++#define st7 %st(7)
   4.123 ++
   4.124 ++#define ax %ax
   4.125 ++#define bx %bx
   4.126 ++#define cx %cx
   4.127 ++#define dx %dx
   4.128 ++
   4.129 ++#define ah %ah
   4.130 ++#define bh %bh
   4.131 ++#define ch %ch
   4.132 ++#define dh %dh
   4.133 ++
   4.134 ++#define al %al
   4.135 ++#define bl %bl
   4.136 ++#define cl %cl
   4.137 ++#define dl %dl
   4.138 ++
   4.139 ++#define sil %sil
   4.140 ++
   4.141 ++#define mm1 %mm1
   4.142 ++#define mm2 %mm2
   4.143 ++#define mm3 %mm3
   4.144 ++#define mm4 %mm4
   4.145 ++#define mm5 %mm5
   4.146 ++#define mm6 %mm6
   4.147 ++#define mm7 %mm7
   4.148 ++
   4.149 ++#define xmm0 %xmm0
   4.150 ++#define xmm1 %xmm1
   4.151 ++#define xmm2 %xmm2
   4.152 ++#define xmm3 %xmm3
   4.153 ++#define xmm4 %xmm4
   4.154 ++#define xmm5 %xmm5
   4.155 ++#define xmm6 %xmm6
   4.156 ++#define xmm7 %xmm7
   4.157 ++
   4.158 ++#define cr0 %cr0
   4.159 ++#define cr1 %cr1
   4.160 ++#define cr2 %cr2
   4.161 ++#define cr3 %cr3
   4.162 ++#define cr4 %cr4
   4.163 + 
   4.164 + #ifdef _I386MACH_NEED_SOTYPE_FUNCTION
   4.165 + #define SOTYPE_FUNCTION(sym) .type SYM(sym),@function
   4.166 +--- newlib/libc/machine/x86_64/memcpy.S.orig	2008-07-11 15:12:27.494693000 +0100
   4.167 ++++ newlib/libc/machine/x86_64/memcpy.S	2008-07-11 15:12:29.448706000 +0100
   4.168 +@@ -60,14 +60,14 @@
   4.169 +   movq    48 (rsi), r13
   4.170 +   movq    56 (rsi), r14
   4.171 + 
   4.172 +-  movntiq rax,    (rdi)
   4.173 +-  movntiq r8 ,  8 (rdi)
   4.174 +-  movntiq r9 , 16 (rdi)
   4.175 +-  movntiq r10, 24 (rdi)
   4.176 +-  movntiq r11, 32 (rdi)
   4.177 +-  movntiq r12, 40 (rdi)
   4.178 +-  movntiq r13, 48 (rdi)
   4.179 +-  movntiq r14, 56 (rdi)
   4.180 ++  movnti rax,    (rdi)
   4.181 ++  movnti r8 ,  8 (rdi)
   4.182 ++  movnti r9 , 16 (rdi)
   4.183 ++  movnti r10, 24 (rdi)
   4.184 ++  movnti r11, 32 (rdi)
   4.185 ++  movnti r12, 40 (rdi)
   4.186 ++  movnti r13, 48 (rdi)
   4.187 ++  movnti r14, 56 (rdi)
   4.188 + 
   4.189 +   movq     64 (rsi), rax
   4.190 +   movq     72 (rsi), r8
   4.191 +@@ -78,14 +78,14 @@
   4.192 +   movq    112 (rsi), r13
   4.193 +   movq    120 (rsi), r14
   4.194 + 
   4.195 +-  movntiq rax,  64 (rdi)
   4.196 +-  movntiq r8 ,  72 (rdi)
   4.197 +-  movntiq r9 ,  80 (rdi)
   4.198 +-  movntiq r10,  88 (rdi)
   4.199 +-  movntiq r11,  96 (rdi)
   4.200 +-  movntiq r12, 104 (rdi)
   4.201 +-  movntiq r13, 112 (rdi)
   4.202 +-  movntiq r14, 120 (rdi)
   4.203 ++  movnti rax,  64 (rdi)
   4.204 ++  movnti r8 ,  72 (rdi)
   4.205 ++  movnti r9 ,  80 (rdi)
   4.206 ++  movnti r10,  88 (rdi)
   4.207 ++  movnti r11,  96 (rdi)
   4.208 ++  movnti r12, 104 (rdi)
   4.209 ++  movnti r13, 112 (rdi)
   4.210 ++  movnti r14, 120 (rdi)
   4.211 + 
   4.212 +   leaq    128 (rsi), rsi
   4.213 +   leaq    128 (rdi), rdi
   4.214 +--- newlib/libc/machine/i386/i386mach.h	2000-08-28 18:50:06.000000000 +0100
   4.215 ++++ newlib/libc/machine/i386/i386mach.h	2008-07-11 15:17:13.874409000 +0100
   4.216 +@@ -27,46 +27,46 @@
   4.217 +  
   4.218 + #define REG(x) CONCAT1(__REG_PREFIX__, x)
   4.219 +  
   4.220 +-#define eax REG(eax)
   4.221 +-#define ebx REG(ebx)
   4.222 +-#define ecx REG(ecx)
   4.223 +-#define edx REG(edx)
   4.224 +-#define esi REG(esi)
   4.225 +-#define edi REG(edi)
   4.226 +-#define ebp REG(ebp)
   4.227 +-#define esp REG(esp)
   4.228 +-
   4.229 +-#define st0 REG(st)
   4.230 +-#define st1 REG(st(1))
   4.231 +-#define st2 REG(st(2))
   4.232 +-#define st3 REG(st(3))
   4.233 +-#define st4 REG(st(4))
   4.234 +-#define st5 REG(st(5))
   4.235 +-#define st6 REG(st(6))
   4.236 +-#define st7 REG(st(7))
   4.237 +-
   4.238 +-#define ax REG(ax)
   4.239 +-#define bx REG(bx)
   4.240 +-#define cx REG(cx)
   4.241 +-#define dx REG(dx)
   4.242 +-
   4.243 +-#define ah REG(ah)
   4.244 +-#define bh REG(bh)
   4.245 +-#define ch REG(ch)
   4.246 +-#define dh REG(dh)
   4.247 +-
   4.248 +-#define al REG(al)
   4.249 +-#define bl REG(bl)
   4.250 +-#define cl REG(cl)
   4.251 +-#define dl REG(dl)
   4.252 +-
   4.253 +-#define mm1 REG(mm1)
   4.254 +-#define mm2 REG(mm2)
   4.255 +-#define mm3 REG(mm3)
   4.256 +-#define mm4 REG(mm4)
   4.257 +-#define mm5 REG(mm5)
   4.258 +-#define mm6 REG(mm6)
   4.259 +-#define mm7 REG(mm7)
   4.260 ++#define eax %eax
   4.261 ++#define ebx %ebx
   4.262 ++#define ecx %ecx
   4.263 ++#define edx %edx
   4.264 ++#define esi %esi
   4.265 ++#define edi %edi
   4.266 ++#define ebp %ebp
   4.267 ++#define esp %esp
   4.268 ++
   4.269 ++#define st0 %st
   4.270 ++#define st1 %st(1)
   4.271 ++#define st2 %st(2)
   4.272 ++#define st3 %st(3)
   4.273 ++#define st4 %st(4)
   4.274 ++#define st5 %st(5)
   4.275 ++#define st6 %st(6)
   4.276 ++#define st7 %st(7)
   4.277 ++
   4.278 ++#define ax %ax
   4.279 ++#define bx %bx
   4.280 ++#define cx %cx
   4.281 ++#define dx %dx
   4.282 ++
   4.283 ++#define ah %ah
   4.284 ++#define bh %bh
   4.285 ++#define ch %ch
   4.286 ++#define dh %dh
   4.287 ++
   4.288 ++#define al %al
   4.289 ++#define bl %bl
   4.290 ++#define cl %cl
   4.291 ++#define dl %dl
   4.292 ++
   4.293 ++#define mm1 %mm1
   4.294 ++#define mm2 %mm2
   4.295 ++#define mm3 %mm3
   4.296 ++#define mm4 %mm4
   4.297 ++#define mm5 %mm5
   4.298 ++#define mm6 %mm6
   4.299 ++#define mm7 %mm7
   4.300 + 
   4.301 + #ifdef _I386MACH_NEED_SOTYPE_FUNCTION
   4.302 + #define SOTYPE_FUNCTION(sym) .type SYM(sym),@function
   4.303 +--- newlib/libc/machine/x86_64/memset.S	2007-08-28 22:56:49.000000000 +0100
   4.304 ++++ newlib/libc/machine/x86_64/memset.S	2008-07-11 15:16:59.098320000 +0100
   4.305 +@@ -40,22 +40,22 @@
   4.306 + 
   4.307 +   .p2align 4
   4.308 + loop:
   4.309 +-  movntiq rax,     (rdi)
   4.310 +-  movntiq rax,   8 (rdi)
   4.311 +-  movntiq rax,  16 (rdi)
   4.312 +-  movntiq rax,  24 (rdi)
   4.313 +-  movntiq rax,  32 (rdi)
   4.314 +-  movntiq rax,  40 (rdi)
   4.315 +-  movntiq rax,  48 (rdi)
   4.316 +-  movntiq rax,  56 (rdi)
   4.317 +-  movntiq rax,  64 (rdi)
   4.318 +-  movntiq rax,  72 (rdi)
   4.319 +-  movntiq rax,  80 (rdi)
   4.320 +-  movntiq rax,  88 (rdi)
   4.321 +-  movntiq rax,  96 (rdi)
   4.322 +-  movntiq rax, 104 (rdi)
   4.323 +-  movntiq rax, 112 (rdi)
   4.324 +-  movntiq rax, 120 (rdi)
   4.325 ++  movnti rax,     (rdi)
   4.326 ++  movnti rax,   8 (rdi)
   4.327 ++  movnti rax,  16 (rdi)
   4.328 ++  movnti rax,  24 (rdi)
   4.329 ++  movnti rax,  32 (rdi)
   4.330 ++  movnti rax,  40 (rdi)
   4.331 ++  movnti rax,  48 (rdi)
   4.332 ++  movnti rax,  56 (rdi)
   4.333 ++  movnti rax,  64 (rdi)
   4.334 ++  movnti rax,  72 (rdi)
   4.335 ++  movnti rax,  80 (rdi)
   4.336 ++  movnti rax,  88 (rdi)
   4.337 ++  movnti rax,  96 (rdi)
   4.338 ++  movnti rax, 104 (rdi)
   4.339 ++  movnti rax, 112 (rdi)
   4.340 ++  movnti rax, 120 (rdi)
   4.341 + 
   4.342 +   leaq    128 (rdi), rdi
   4.343 +