annotate tests/mini/gc_datasegment.d @ 978:6a32d2e18175

Fix a latent bug in the asm code. I think that technically, using "*m0" instead of "*0" allows LLVM to pick between using the same memory as output 0 and using a new memory location. (So far I haven't been able to construct a testcase that actually breaks because of this, though)
author Frits van Bommel <fvbommel wxs.nl>
date Wed, 18 Feb 2009 03:38:12 +0100
parents d159da5201f1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
576
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
1 extern(C) void gc_collect();
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
2
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
3 class C
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
4 {
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
5 int i = 42;
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
6 }
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
7
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
8 C data;
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
9
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
10 void main()
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
11 {
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
12 data = new C;
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
13 gc_collect();
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
14 assert(data.i == 42);
d159da5201f1 Add test for GC scanning data segment.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
15 }