Mercurial > projects > ldc
annotate tango-0.99.8.patch @ 1404:11b122f92136
Now that templates instantiations are no longer emitted for all modules that
even blink at them they seem to break due to being linkonce (if compiled with
any optimization level > 0), so let's give them weak linkage instead.
The difference is that unreferenced linkonce symbols can be deleted, while
weak symbols need to be preserved.
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Thu, 21 May 2009 15:23:28 +0200 |
parents | 967d28b7febe |
children | 2a8d4f98b543 |
rev | line source |
---|---|
1371
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
1 Index: object.di |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
2 =================================================================== |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
3 --- object.di (revision 4655) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
4 +++ object.di (working copy) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
5 @@ -41,9 +41,11 @@ |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
6 // 2: // has no possible pointers into GC memory |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
7 // 4: // has offTi[] member |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
8 // 8: // has constructors |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
9 + // 32: // has typeinfo |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
10 void* deallocator; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
11 OffsetTypeInfo[] offTi; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
12 void* defaultConstructor; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
13 + TypeInfo typeinfo; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
14 |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
15 static ClassInfo find(char[] classname); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
16 Object create(); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
17 Index: lib/common/tango/core/Thread.d |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
18 =================================================================== |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
19 --- lib/common/tango/core/Thread.d (revision 4655) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
20 +++ lib/common/tango/core/Thread.d (working copy) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
21 @@ -295,7 +295,7 @@ |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
22 } |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
23 else version (X86_64) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
24 { |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
25 - ulong rax,rbx,rcx,rdx,rbp,rsi,rdi,rsp,r10,r11,r12,r13,r14,r15; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
26 + ulong rax,rbx,rcx,rdx,rbp,rsi,rdi,rsp,r8,r9,r10,r11,r12,r13,r14,r15; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
27 asm |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
28 { |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
29 movq rax[RBP], RAX ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
30 @@ -306,6 +306,8 @@ |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
31 movq rsi[RBP], RSI ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
32 movq rdi[RBP], RDI ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
33 movq rsp[RBP], RSP ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
34 + movq r8[RBP], R8 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
35 + movq r9[RBP], R9 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
36 movq r10[RBP], R10 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
37 movq r11[RBP], R11 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
38 movq r12[RBP], R12 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
39 Index: lib/gc/basic/gcx.d |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
40 =================================================================== |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
41 --- lib/gc/basic/gcx.d (revision 4655) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
42 +++ lib/gc/basic/gcx.d (working copy) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
43 @@ -2198,7 +2198,7 @@ |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
44 } |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
45 else version (X86_64) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
46 { |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
47 - ulong rax,rbx,rcx,rdx,rbp,rsi,rdi,rsp,r10,r11,r12,r13,r14,r15; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
48 + ulong rax,rbx,rcx,rdx,rbp,rsi,rdi,rsp,r8,r9,r10,r11,r12,r13,r14,r15; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
49 asm |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
50 { |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
51 movq rax[RBP], RAX ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
52 @@ -2209,6 +2209,8 @@ |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
53 movq rsi[RBP], RSI ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
54 movq rdi[RBP], RDI ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
55 movq rsp[RBP], RSP ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
56 + movq r8[RBP], R8 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
57 + movq r9[RBP], R9 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
58 movq r10[RBP], R10 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
59 movq r11[RBP], R11 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
60 movq r12[RBP], R12 ; |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
61 Index: tango/net/Socket.d |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
62 =================================================================== |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
63 --- tango/net/Socket.d (revision 4655) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
64 +++ tango/net/Socket.d (working copy) |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
65 @@ -1545,10 +1545,10 @@ |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
66 |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
67 abstract class Address |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
68 { |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
69 - protected sockaddr* name(); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
70 - protected int nameLen(); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
71 - AddressFamily addressFamily(); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
72 - char[] toString(); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
73 + abstract protected sockaddr* name(); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
74 + abstract protected int nameLen(); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
75 + abstract AddressFamily addressFamily(); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
76 + abstract char[] toString(); |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
77 |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
78 /*********************************************************************** |
967d28b7febe
Add patch for Tango 0.99.8.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
79 |