Mercurial > projects > dstress
view run/ieee_754_zerosdq_04.d @ 1610:db616bfa8a4a
Fix asm_jp_01_A which depended on EAX == 1, but only set AL = 1.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Sun, 10 May 2009 10:21:52 +0200 |
parents | 660f9196b52a |
children |
line wrap: on
line source
// $HeadURL$ // $Date$ // $Author$ module dstress.run.ieee_754_zerosdq_04; // Check whether IEEE 754 signed zero is correctly supported. union S{ idouble f; uint[2] i; } int main(){ S s; s.f=1.0i; int top = (s.i[0]==0) ? 1 : 0; s.f = 0.0i; if(s.i[top] != 0x00000000){ assert(0); } s.f = -0.0i; if(s.i[top] != 0x80000000){ assert(0); } s.f = 0.0i - 0.0i; if(s.i[top] != 0x00000000){ assert(0); } s.f = (-0.0i) - 0.0i; if(s.i[top] != 0x80000000){ assert(0); } s.f = 0.0i; s.f *= 1.0; if(s.i[top] != 0x00000000){ assert(0); } s.f = 0.0i; s.f *= -1.0; if(s.i[top] != 0x80000000){ assert(0); } return 0; }