diff runtime/import/ldc/llvmasm.di @ 1154:9279a9dc6df3

Added support for tuple return with __asmtuple!(int,int) etc.
author Tomas Lindquist Olsen <tomas.l.olsen gmail.com>
date Sat, 28 Mar 2009 08:25:58 +0100
parents 4454126b4345
children
line wrap: on
line diff
--- a/runtime/import/ldc/llvmasm.di	Sat Mar 28 07:24:53 2009 +0100
+++ b/runtime/import/ldc/llvmasm.di	Sat Mar 28 08:25:58 2009 +0100
@@ -1,13 +1,17 @@
 module ldc.llvmasm;
 
-pragma(llvm_inline_asm)
-template __asm()
+struct __asmtuple_t(T...)
 {
-    void __asm(char[] asmcode, char[] constraints, ...);
+    T v;
 }
 
 pragma(llvm_inline_asm)
-template __asm(T)
 {
-    T __asm(char[] asmcode, char[] constraints, ...);
+    void __asm( )(char[] asmcode, char[] constraints, ...);
+    T    __asm(T)(char[] asmcode, char[] constraints, ...);
+
+    template __asmtuple(T...)
+    {
+        __asmtuple_t!(T) __asmtuple(char[] asmcode, char[] constraints, ...);
+    }
 }