715
|
1 // $HeadURL: svn://127.0.0.1/run/a/asm_fcos_01.d $
|
|
2 // $Date: 2005-10-04 11:25:00 +0200 (星期二, 04 十月 2005) $
|
|
3 // $Author: thomask $
|
|
4
|
|
5 // __DSTRESS_DFLAGS__ addon/cpuinfo.d
|
|
6
|
|
7 module dstress.run.a.asm_fdivr_01_D;
|
|
8 import addon.cpuinfo;
|
|
9
|
|
10 int main(){
|
|
11 version(D_InlineAsm){
|
|
12 haveFPU();
|
|
13
|
|
14 float a = 12.0;
|
|
15 float b = -3.0;
|
|
16 float c = 9.9;
|
|
17
|
|
18 asm{
|
|
19 fld b;
|
|
20 fldz;
|
|
21 fld a;
|
|
22 fdivr ST(2),ST;
|
|
23 fstp a;
|
|
24 fstp b;
|
|
25 fstp c;
|
|
26 }
|
|
27
|
|
28 assert(a == 12.0);
|
|
29 assert(b == 0.0);
|
|
30 assert(c == -4.0);
|
|
31
|
|
32 return 0;
|
|
33 }else{
|
|
34 pragma(msg, "no inline asm support");
|
|
35 static assert(0);
|
|
36 }
|
|
37 } |