ld: Move the .note.build-id section to near the start of the memory map.
[binutils-gdb.git] / sim / testsuite / bfin / s16.s
blob6741cf3834890b71dc38bfd0d4439da24a9672d8
1 // reg-based SHIFT test program.
2 # mach: bfin
4 .include "testutils.inc"
5 start
8 // Test FDEP with no sign extension
10 R0.L = 0xdead;
11 R0.H = 0x1234;
12 R1.L = 0x0c08; // pos=12 len=8
13 R1.H = 0x00ff;
14 R7 = DEPOSIT( R0, R1 );
15 DBGA ( R7.L , 0xfead );
16 DBGA ( R7.H , 0x123f );
18 R0.L = 0xdead;
19 R0.H = 0x1234;
20 R1.L = 0x0c04; // pos=12 len=4
21 R1.H = 0x00ff;
22 R7 = DEPOSIT( R0, R1 );
23 DBGA ( R7.L , 0xfead );
24 DBGA ( R7.H , 0x1234 );
26 R0.L = 0xdead;
27 R0.H = 0x1234;
28 R1.L = 0x0c05; // pos=12 len=5
29 R1.H = 0x00ff;
30 R7 = DEPOSIT( R0, R1 );
31 DBGA ( R7.L , 0xfead );
32 DBGA ( R7.H , 0x1235 );
34 R0.L = 0xdead;
35 R0.H = 0x1234;
36 R1.L = 0x0010; // pos=0 len=16
37 R1.H = 0xffff;
38 R7 = DEPOSIT( R0, R1 );
39 DBGA ( R7.L , 0xffff );
40 DBGA ( R7.H , 0x1234 );
42 R0.L = 0xdead;
43 R0.H = 0x1234;
44 R1.L = 0x0011; // pos=0 len=17
45 R1.H = 0xffff;
46 R7 = DEPOSIT( R0, R1 );
47 DBGA ( R7.L , 0xffff );
48 DBGA ( R7.H , 0x1234 );
50 R0.L = 0xdead;
51 R0.H = 0x1234;
52 R1.L = 0x0114; // pos=1 len=20
53 R1.H = 0xffff;
54 R7 = DEPOSIT( R0, R1 );
55 DBGA ( R7.L , 0xffff );
56 DBGA ( R7.H , 0x1235 );
58 R0.L = 0xdead;
59 R0.H = 0x1234;
60 R1.L = 0x001f; // pos=0 len=31
61 R1.H = 0xffff;
62 R7 = DEPOSIT( R0, R1 );
63 DBGA ( R7.L , 0xffff );
64 DBGA ( R7.H , 0x1234 );
66 R0.L = 0xdead;
67 R0.H = 0x1234;
68 R1.L = 0x1c04; // pos=28 len=4
69 R1.H = 0xffff;
70 R7 = DEPOSIT( R0, R1 );
71 DBGA ( R7.L , 0xdead );
72 DBGA ( R7.H , 0xf234 );
74 R0.L = 0xdead;
75 R0.H = 0x0234;
76 R1.L = 0x1d04; // pos=29 len=4
77 R1.H = 0xffff;
78 R7 = DEPOSIT( R0, R1 );
79 DBGA ( R7.L , 0xdead );
80 DBGA ( R7.H , 0xe234 );
82 R0.L = 0xdead;
83 R0.H = 0x0234;
84 R1.L = 0x1f04; // pos=31 len=4
85 R1.H = 0xffff;
86 R7 = DEPOSIT( R0, R1 );
87 DBGA ( R7.L , 0xdead );
88 DBGA ( R7.H , 0x8234 );
90 R0.L = 0xdead;
91 R0.H = 0x0234;
92 R1.L = 0x2004; // pos=32 len=4, same as pos=0 len=4
93 R1.H = 0xffff;
94 R7 = DEPOSIT( R0, R1 );
95 DBGA ( R7.L , 0xdeaf );
96 DBGA ( R7.H , 0x0234 );
98 // Test FDEP with sign extension
100 R0.L = 0xdead;
101 R0.H = 0x1234;
102 R1.L = 0x0c08; // pos=12 len=8
103 R1.H = 0x00ff;
104 R7 = DEPOSIT( R0, R1 ) (X);
105 DBGA ( R7.L , 0xfead );
106 DBGA ( R7.H , 0xffff );
107 CC = AZ; R7 = CC; DBGA ( R7.L , 0x0 );
108 CC = AN; R7 = CC; DBGA ( R7.L , 0x1 );
110 R0.L = 0xdead;
111 R0.H = 0x1234;
112 R1.L = 0x0c08; // pos=12 len=8
113 R1.H = 0x007f;
114 R7 = DEPOSIT( R0, R1 ) (X);
115 DBGA ( R7.L , 0xfead );
116 DBGA ( R7.H , 0x0007 );
117 CC = AZ; R7 = CC; DBGA ( R7.L , 0x0 );
118 CC = AN; R7 = CC; DBGA ( R7.L , 0x0 );
120 R0.L = 0xdea0;
121 R0.H = 0x1234;
122 R1.L = 0x0110; // pos=1 len=16
123 R1.H = 0xffff;
124 R7 = DEPOSIT( R0, R1 ) (X);
125 DBGA ( R7.L , 0xfffe );
126 DBGA ( R7.H , 0xffff );
127 CC = AZ; R7 = CC; DBGA ( R7.L , 0x0 );
128 CC = AN; R7 = CC; DBGA ( R7.L , 0x1 );
130 R0.L = 0xdea0;
131 R0.H = 0x1234;
132 R1.L = 0x0101; // pos=1 len=1
133 R1.H = 0xffff;
134 R7 = DEPOSIT( R0, R1 ) (X);
135 DBGA ( R7.L , 0xfffe );
136 DBGA ( R7.H , 0xffff );
137 CC = AZ; R7 = CC; DBGA ( R7.L , 0x0 );
138 CC = AN; R7 = CC; DBGA ( R7.L , 0x1 );
140 R0.L = 0xdea0;
141 R0.H = 0x1234;
142 R1.L = 0x0102; // pos=1 len=2
143 R1.H = 0x0001;
144 R7 = DEPOSIT( R0, R1 ) (X);
145 DBGA ( R7.L , 0x0002 );
146 DBGA ( R7.H , 0x0000 );
147 CC = AZ; R7 = CC; DBGA ( R7.L , 0x0 );
148 CC = AN; R7 = CC; DBGA ( R7.L , 0x0 );
150 R0.L = 0xdea0;
151 R0.H = 0x1234;
152 R1.L = 0x0002; // pos=0 len=2
153 R1.H = 0x0001;
154 R7 = DEPOSIT( R0, R1 ) (X);
155 DBGA ( R7.L , 0x0001 );
156 DBGA ( R7.H , 0x0000 );
157 CC = AZ; R7 = CC; DBGA ( R7.L , 0x0 );
158 CC = AN; R7 = CC; DBGA ( R7.L , 0x0 );
160 R0.L = 0xdea0;
161 R0.H = 0x1234;
162 R1.L = 0x0000; // pos=0 len=0
163 R1.H = 0x000f;
164 R7 = DEPOSIT( R0, R1 ) (X);
165 DBGA ( R7.L , 0x0000 );
166 DBGA ( R7.H , 0x0000 );
167 CC = AZ; R7 = CC; DBGA ( R7.L , 0x1 );
168 CC = AN; R7 = CC; DBGA ( R7.L , 0x0 );
170 pass