diff run/a/asm_fdivp_01_A.d @ 989:a468938b0160

inline ASM review
author thomask
date Tue, 09 May 2006 04:18:47 +0000
parents 7b2c5a101190
children 03c97933de98
line wrap: on
line diff
--- a/run/a/asm_fdivp_01_A.d	Sun May 07 18:20:25 2006 +0000
+++ b/run/a/asm_fdivp_01_A.d	Tue May 09 04:18:47 2006 +0000
@@ -2,17 +2,22 @@
 // $Date$
 // $Author$
 
-// __DSTRESS_DFLAGS__ addon/cpuinfo.d
+module dstress.run.a.asm_fdivp_01_A;
 
-module dstress.run.a.asm_fdivp_01_A;
-import addon.cpuinfo;
+version(D_InlineAsm_X86){
+	version = runTest;
+}else version(D_InlineAsm_X86_64){
+	version = runTest;
+}
 
-int main(){
-	version(D_InlineAsm){
-		haveFPU();
+version(runTest){
+	import addon.cpuinfo;
+
+	int main(){
+		haveFPU!()();
 		
-		double a = 12.0;
-		double b = -3.0;
+		float a = 12.0f;
+		float b = -3.0f;
 		
 		asm{
 			fld a;
@@ -23,12 +28,16 @@
 			fstp b;
 		}
 		
-		assert(a == 0.0);
-		assert(b == -4.0);
+		if(a != 0.0f){
+			assert(0);
+		}
+		if(b != -4.0f){
+			assert(0);
+		}
 		
 		return 0;
-	}else{
-		pragma(msg, "no inline asm support");
-		static assert(0);
 	}
-}
\ No newline at end of file
+}else{
+	pragma(msg, "DSTRESS{XFAIL}: no inline ASM support");
+	static assert(0);
+}