Mercurial > projects > ldc
view tests/mini/asm4.d @ 745:5761d7e6f628
Tried using DtoDeclarationExp for VarDecls in Statements to fix nesting issues
(see bug #104), but a separate helper that doesn't initialize would be nicer.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Sat, 01 Nov 2008 16:48:17 +0100 |
parents | ef5f75ae6895 |
children | 693d681c846c |
line wrap: on
line source
module tangotests.asm4; extern(C) int printf(char*,...); void main() { char* stmt = "yay!\n"; char* fmt = "%s"; version (LLVM_InlineAsm_X86) { asm { jmp L2; L1:; jmp L3; L2:; jmp L1; L3:; push fmt; call printf; pop EAX; } } else version(LLVM_InlineAsm_X86_64) { asm { jmp L2; L1:; jmp L3; L2:; jmp L1; L3:; movq RDI, fmt; movq RSI, stmt; xor AL, AL; call printf; } } printf(fmt,stmt); }