ld: Move the .note.build-id section to near the start of the memory map.
[binutils-gdb.git] / sim / testsuite / bfin / a21.s
blobc621921f394cbfd0ab150e844f60e61fc75a6876
1 // Test ALU RND RND12 RND20
2 # mach: bfin
4 .include "testutils.inc"
5 start
8 // positive saturation
9 R0 = 0xffffffff;
10 A0.w = R0;
11 A1.w = R0;
12 R0 = 0x7f (X);
13 A0.x = R0;
14 A1.x = R0;
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 );
19 // neg saturation
20 R0 = 0;
21 A0.w = R0;
22 A1.w = R0;
23 R0 = 0x80 (X);
24 A0.x = R0;
25 A1.x = R0;
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
31 R0 = 0xfffffff0;
32 A0.w = R0;
33 A1.w = R0;
34 R0 = 0x01;
35 A0.x = R0;
36 A1.x = R0;
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 );
41 // no sat
42 R0 = 0xfffffff0;
43 A0.w = R0;
44 A1.w = R0;
45 R0 = 0x01;
46 A0.x = R0;
47 A1.x = R0;
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 );
52 // add and sub +1 -1
53 R0 = 0x00000001;
54 A0.w = R0;
55 R0 = 0xffffffff;
56 A1.w = R0;
57 R0 = 0;
58 A0.x = R0;
59 R0 = 0xff (X);
60 A1.x = R0;
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
71 R0 = 0x00000001;
72 A0.w = R0;
73 R0 = 0xffffffff;
74 A1.w = R0;
75 R0 = 0;
76 A0.x = R0;
77 R0 = 0xff (X);
78 A1.x = R0;
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 );
83 pass