1 // Test ALU RND RND12 RND20
4 .include "testutils.inc"
15 R3 = A1
+ A0
, R4 = A1
- A0
(S
);
16 DBGA
( R3.H
, 0x7fff ); DBGA
( R3.
L , 0xffff );
17 DBGA
( R4.H
, 0x0000 ); DBGA
( R4.
L , 0x0000 );
26 R3 = A1
+ A0
, R4 = A1
- A0
(S
);
27 DBGA
( R3.H
, 0x8000 ); DBGA
( R3.
L , 0x0000 );
28 DBGA
( R4.H
, 0x0000 ); DBGA
( R4.
L , 0x0000 );
30 // positive saturation
37 R3 = A1
+ A0
, R4 = A1
- A0
(S
);
38 DBGA
( R3.H
, 0x7fff ); DBGA
( R3.
L , 0xffff );
39 DBGA
( R4.H
, 0x0000 ); DBGA
( R4.
L , 0x0000 );
48 R3 = A1
+ A0
, R4 = A1
- A0
(NS
);
49 DBGA
( R3.H
, 0xffff ); DBGA
( R3.
L , 0xffe0 );
50 DBGA
( R4.H
, 0x0000 ); DBGA
( R4.
L , 0x0000 );
61 R3 = A1
+ A0
, R4 = A1
- A0
(NS
);
62 DBGA
( R3.H
, 0x0000 ); DBGA
( R3.
L , 0x0000 );
// 0
63 DBGA
( R4.H
, 0xffff ); DBGA
( R4.
L , 0xfffe );
// -2
65 // should get the same with saturation
66 R3 = A1
+ A0
, R4 = A1
- A0
(S
);
67 DBGA
( R3.H
, 0x0000 ); DBGA
( R3.
L , 0x0000 );
// 0
68 DBGA
( R4.H
, 0xffff ); DBGA
( R4.
L , 0xfffe );
// -2
70 // add and sub -1 +1 but with reverse order of A0 A1
79 R3 = A0
+ A1
, R4 = A0
- A1
(NS
);
80 DBGA
( R3.H
, 0x0000 ); DBGA
( R3.
L , 0x0000 );
81 DBGA
( R4.H
, 0x0000 ); DBGA
( R4.
L , 0x0002 );