annotate tests/mini/asm2.d @ 443:44f08170f4ef

Removed tango from the repository and instead added a runtime dir with the files needed to patch and build tango from svn. Reworked the LLVMDC specific pragmas.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Fri, 01 Aug 2008 00:32:06 +0200
parents 1bb99290e03a
children 4ac97ec7c18e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
221
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
1 module tangotests.asm2;
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
2
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
3 extern(C) int printf(char*, ...);
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
4
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
5 int main()
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
6 {
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
7 int i = 40;
225
74701ba40398 [svn r241] Fixed missing terminator for void main() with inline asm block.
lindquist
parents: 221
diff changeset
8 int j = 2;
221
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
9 asm
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
10 {
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
11 mov EAX, i;
225
74701ba40398 [svn r241] Fixed missing terminator for void main() with inline asm block.
lindquist
parents: 221
diff changeset
12 mov EBX, j;
74701ba40398 [svn r241] Fixed missing terminator for void main() with inline asm block.
lindquist
parents: 221
diff changeset
13 add EAX, EBX;
221
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
14 mov i, EAX;
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
15 }
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
16 printf("42 = %d\n", i);
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
17 assert(i == 42);
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
18 return 0;
68687d8c3e9a [svn r237] some inline asm output now seems to work, see tangotests/asm2.d
lindquist
parents:
diff changeset
19 }