Mercurial > projects > ldc
annotate tests/mini/asm3.d @ 1649:36da40ecbbe0
Added tag 0.9.2 for changeset 18bbb1436153
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Fri, 19 Mar 2010 09:31:25 +0100 |
parents | 4c524d80e6e1 |
children |
rev | line source |
---|---|
228 | 1 module tangotests.asm3; |
2 | |
3 extern(C) int printf(char*, ...); | |
4 | |
5 void main() | |
6 { | |
7 char* fmt = "Hello D World\n"; | |
8 printf(fmt); | |
1035
4c524d80e6e1
Move more tests to D_InlineAsm
Christian Kamm <kamm incasoftware de>
parents:
945
diff
changeset
|
9 version (D_InlineAsm_X86) |
228 | 10 { |
945
03d7c4aac654
SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
744
diff
changeset
|
11 asm |
03d7c4aac654
SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
744
diff
changeset
|
12 { |
03d7c4aac654
SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
744
diff
changeset
|
13 push fmt; |
03d7c4aac654
SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
744
diff
changeset
|
14 call printf; |
03d7c4aac654
SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
744
diff
changeset
|
15 pop EAX; |
03d7c4aac654
SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
744
diff
changeset
|
16 } |
228 | 17 } |
1035
4c524d80e6e1
Move more tests to D_InlineAsm
Christian Kamm <kamm incasoftware de>
parents:
945
diff
changeset
|
18 else version(D_InlineAsm_X86_64) |
741
4ac97ec7c18e
Applied easy part from wilsonk's x86-64 patch in #107
Christian Kamm <kamm incasoftware de>
parents:
341
diff
changeset
|
19 { |
4ac97ec7c18e
Applied easy part from wilsonk's x86-64 patch in #107
Christian Kamm <kamm incasoftware de>
parents:
341
diff
changeset
|
20 asm |
4ac97ec7c18e
Applied easy part from wilsonk's x86-64 patch in #107
Christian Kamm <kamm incasoftware de>
parents:
341
diff
changeset
|
21 { |
945
03d7c4aac654
SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
744
diff
changeset
|
22 movq RDI, fmt; |
03d7c4aac654
SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
744
diff
changeset
|
23 xor AL, AL; |
03d7c4aac654
SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents:
744
diff
changeset
|
24 call printf; |
741
4ac97ec7c18e
Applied easy part from wilsonk's x86-64 patch in #107
Christian Kamm <kamm incasoftware de>
parents:
341
diff
changeset
|
25 } |
4ac97ec7c18e
Applied easy part from wilsonk's x86-64 patch in #107
Christian Kamm <kamm incasoftware de>
parents:
341
diff
changeset
|
26 } |
228 | 27 } |