Projet_SETI_RISC-V/riscv-gnu-toolchain/binutils/sim/testsuite/bfin/acp5_4.s
2023-03-06 14:48:14 +01:00

39 lines
647 B
ArmAsm

// test RND setting AZ
# mach: bfin
.include "testutils.inc"
start
// result is zero with overflow ==> AZ, therefore, is not set
R0.L = 0x8000;
R0 = R0.L (X);
R1.L = R0 (RND);
CC = AZ; R7 = CC;
DBGA(R1.L, 0);
DBGA ( R7.L , 0x1 );
// No Overflow, result is zero, AZ is set
R0 = 1 (X);
R1.L = r0 (RND);
CC = AZ; R7 = CC;
DBGA(R1.L, 0);
DBGA ( R7.L , 0x1 );
// result should be 1
R0.L = 0x8000;
R0.H = 0;
R1.L = R0 (RND);
CC = AZ; R7 = CC;
DBGA(R1.L, 1);
DBGA ( R7.L , 0x0 );
// Result should be non-zero
R0.H = 0x7ff0;
R0.L = 0x8000;
R1.L = R0 (RND);
CC = AZ; R7 = CC;
DBGA(R1.L, 0x7ff1);
DBGA ( R7.L , 0x0 );
pass