Home | History | Annotate | Line # | Download | only in bfin
      1 //  test RND setting AZ
      2 # mach: bfin
      3 
      4 .include "testutils.inc"
      5 	start
      6 
      7 
      8 //  result is zero with overflow ==> AZ, therefore, is not set
      9 	R0.L = 0x8000;
     10 	R0 = R0.L (X);
     11 	R1.L = R0 (RND);
     12 	CC = AZ;	R7 = CC;
     13 	DBGA(R1.L, 0);
     14 	DBGA ( R7.L , 0x1 );
     15 
     16 // No Overflow, result is zero, AZ is set
     17 	R0 = 1 (X);
     18 	R1.L = r0 (RND);
     19 	CC = AZ;	R7 = CC;
     20 	DBGA(R1.L, 0);
     21 	DBGA ( R7.L , 0x1 );
     22 
     23 // result should be 1
     24 	R0.L = 0x8000;
     25 	R0.H = 0;
     26 	R1.L = R0 (RND);
     27 	CC = AZ;	R7 = CC;
     28 	DBGA(R1.L, 1);
     29 	DBGA ( R7.L , 0x0 );
     30 
     31 // Result should be non-zero
     32 	R0.H = 0x7ff0;
     33 	R0.L = 0x8000;
     34 	R1.L = R0 (RND);
     35 	CC = AZ;	R7 = CC;
     36 	DBGA(R1.L, 0x7ff1);
     37 	DBGA ( R7.L , 0x0 );
     38 
     39 	pass
     40