diff tests/mini/callingconv1.d @ 1447:a400b1dd657f

fix assembly code for mingw32 in minitests
author Kelly Wilson <wilsonk cpsc.ucalgary.ca>
date Sun, 31 May 2009 11:01:02 -0600
parents 12b423e17860
children e92e14690a4f
line wrap: on
line diff
--- a/tests/mini/callingconv1.d	Sun May 31 12:43:59 2009 +0200
+++ b/tests/mini/callingconv1.d	Sun May 31 11:01:02 2009 -0600
@@ -15,15 +15,32 @@
 
     version(D_InlineAsm_X86)
     {
-	asm
-    	{
-		mov EAX, [a];
-        	push EAX;
-        	mov EAX, [b];
-        	push EAX;
-        	call foo;
-        	fstp c;
-    	}
+	    version(mingw32) 
+	    {
+    		asm
+    		{
+				movss XMM0, [a];
+				movss XMM1, [b];
+				movss [ESP], XMM1;
+				movss [ESP]+4, XMM0;		
+					call foo;
+				fstp [c]-4;
+				movss XMM0, [c]-4;
+				movss [c], XMM0;
+    		}
+		} else 
+		{
+		   
+			asm
+    		{
+				mov EAX, [a];
+        		push EAX;
+        		mov EAX, [b];
+        		push EAX;
+        		call foo;
+        		fstp c;
+    		}
+		}
     }
     else version(D_InlineAsm_X86_64)
     {