[ gas/testsuite/ChangeLog ]
[deliverable/binutils-gdb.git] / gas / testsuite / gas / bfin / move2.s
CommitLineData
8df55cb8
CM
1\r
2.EXTERN MY_LABEL2;\r
3.section .text;\r
4\r
5//\r
6//4 MOVE\r
7//\r
8\r
9//genreg = genreg ; /* (a) */\r
10R0 = R0;\r
11R1 = R1;\r
12R2 = R2;\r
13R3 = R3;\r
14R4 = R4;\r
15R5 = R5;\r
16R6 = R6;\r
17R7 = R7;\r
18 \r
19P0 = P0;\r
20P1 = P1;\r
21P2 = P2;\r
22P3 = P3;\r
23P4 = P4;\r
24P5 = P5;\r
25SP = SP;\r
26FP = FP;\r
27\r
28A0.X = A0.X;\r
29A0.W = A0.W;\r
30A1.X = A1.X;\r
31A1.W = A1.W;\r
32\r
33\r
34R0 = A1.W;\r
35R1 = A1.X;\r
36R2 = A0.W;\r
37R3 = A0.X;\r
38R4 = FP;\r
39R5 = SP;\r
40R6 = P5;\r
41R7 = P4;\r
42 \r
43P0 = P3;\r
44P1 = P2;\r
45P2 = P1;\r
46P3 = P0;\r
47P4 = R7;\r
48P5 = R6;\r
49SP = R5;\r
50FP = R4;\r
51\r
52A0.X = R3;\r
53A0.W = R2;\r
54A1.X = R1;\r
55A1.W = R0;\r
56\r
57A0.X = A0.W;\r
58A0.X = A1.W;\r
59A0.X = A1.X;\r
60\r
61A1.X = A1.W;\r
62A1.X = A0.W;\r
63A1.X = A0.X;\r
64\r
65A0.W = A0.W;\r
66A0.W = A1.W;\r
67A0.W = A1.X;\r
68\r
69A1.W = A1.W;\r
70A1.W = A0.W;\r
71A1.W = A0.X;\r
72\r
73//genreg = dagreg ; /* (a) */\r
74R0 = I0;\r
75R1 = I1;\r
76R2 = I2;\r
77R3 = I3;\r
78R4 = M0;\r
79R5 = M1;\r
80R6 = M2;\r
81R7 = M3;\r
82 \r
83R0 = B0;\r
84R1 = B1;\r
85R2 = B2;\r
86R3 = B3;\r
87R4 = L0;\r
88R5 = L1;\r
89R6 = L2;\r
90R7 = L3;\r
91\r
92P0 = I0;\r
93P1 = I1;\r
94P2 = I2;\r
95P3 = I3;\r
96P4 = M0;\r
97P5 = M1;\r
98SP = M2;\r
99FP = M3;\r
100 \r
101P0 = B0;\r
102P1 = B1;\r
103P2 = B2;\r
104P3 = B3;\r
105P4 = L0;\r
106P5 = L1;\r
107SP = L2;\r
108FP = L3;\r
109\r
110\r
111A0.X = I0;\r
112A0.W = I1;\r
113A1.X = I2;\r
114A1.W = I3;\r
115\r
116A0.X = M0;\r
117A0.W = M1;\r
118A1.X = M2;\r
119A1.W = M3;\r
120\r
121A0.X = B0;\r
122A0.W = B1;\r
123A1.X = B2;\r
124A1.W = B3;\r
125\r
126A0.X = L0;\r
127A0.W = L1;\r
128A1.X = L2;\r
129A1.W = L3;\r
130\r
131//dagreg = genreg ; /* (a) */\r
132I0 = R0;\r
133I1 = P0;\r
134I2 = SP;\r
135I3 = FP;\r
136I0 = A0.X;\r
137I1 = A0.W;\r
138I2 = A1.X;\r
139I3 = A1.W;\r
140\r
141M0 = R0;\r
142M1 = P0;\r
143M2 = SP;\r
144M3 = FP;\r
145M0 = A0.X;\r
146M1 = A0.W;\r
147M2 = A1.X;\r
148M3 = A1.W;\r
149\r
150B0 = R0;\r
151B1 = P0;\r
152B2 = SP;\r
153B3 = FP;\r
154B0 = A0.X;\r
155B1 = A0.W;\r
156B2 = A1.X;\r
157B3 = A1.W;\r
158\r
159L0 = R0;\r
160L1 = P0;\r
161L2 = SP;\r
162L3 = FP;\r
163L0 = A0.X;\r
164L1 = A0.W;\r
165L2 = A1.X;\r
166L3 = A1.W;\r
167\r
168\r
169//dagreg = dagreg ; /* (a) */\r
170\r
171I0 = I1;\r
172I1 = M0;\r
173I2 = B1;\r
174I3 = L0;\r
175\r
176M0 = I1;\r
177M1 = M0;\r
178M2 = B1;\r
179M3 = L0;\r
180\r
181B0 = I1;\r
182B1 = M0;\r
183B2 = B1;\r
184B3 = L0;\r
185\r
186L0 = I1;\r
187L1 = M0;\r
188L2 = B1;\r
189L3 = L0;\r
190\r
191//genreg = USP ; /* (a)*/\r
192R1 = USP;\r
193P2 = USP;\r
194SP = USP;\r
195FP = USP;\r
196A0.X = USP;\r
197A1.W = USP;\r
198\r
199//USP = genreg ; /* (a)*/\r
200USP = R2;\r
201USP = P4;\r
202USP = SP;\r
203USP = FP;\r
204USP = A0.X;\r
205USP = A1.W;\r
206\r
207//Dreg = sysreg ; /* sysreg to 32-bit D-register (a) */\r
208R0 = ASTAT;\r
209R1 = SEQSTAT;\r
210R2 = SYSCFG;\r
211R3 = RETI;\r
212R4 = RETX;\r
213R5 = RETN;\r
214R6 = RETE;\r
215R7 = RETS;\r
216R0 = LC0;\r
217R1 = LC1;\r
218R2 = LT0;\r
219R3 = LT1;\r
220R4 = LB0;\r
221R5 = LB1;\r
222R6 = CYCLES;\r
223R7 = CYCLES2;\r
224//R0 = EMUDAT; \r
225//sysreg = Dreg ; /* 32-bit D-register to sysreg (a) */\r
226ASTAT = R0;\r
227SEQSTAT = R1;\r
228SYSCFG = R3;\r
229RETI = R4;\r
230RETX =R5;\r
231RETN = R6;\r
232RETE = R7;\r
233RETS = R0;\r
234LC0 = R1;\r
235LC1 = R2;\r
236LT0 = R3;\r
237LT1 = R4;\r
238LB0 = R5;\r
239LB1 = R6;\r
240CYCLES = R7;\r
241CYCLES2 = R0;\r
242//EMUDAT = R1; \r
243//sysreg = Preg ; /* 32-bit P-register to sysreg (a) */\r
244ASTAT = P0;\r
245SEQSTAT = P1;\r
246SYSCFG = P3;\r
247RETI = P4;\r
248RETX =P5;\r
249RETN = SP;\r
250RETE = FP;\r
251RETS = P0;\r
252LC0 = P1;\r
253LC1 = P2;\r
254LT0 = P3;\r
255LT1 = P4;\r
256LB0 = P5;\r
257LB1 = SP;\r
258CYCLES = SP;\r
259CYCLES2 = P0;\r
260//EMUDAT = P1; \r
261\r
262\r
263//sysreg = USP ; /* (a) */\r
264//ASTAT = USP;\r
265//SEQSTAT = USP;\r
266//SYSCFG = USP;\r
267//RETI = USP;\r
268//RETX =USP;\r
269//RETN = USP;\r
270//RETE = USP;\r
271//RETS = USP;\r
272//LC0 = USP;\r
273//LC1 = USP;\r
274//LT0 = USP;\r
275//LT1 = USP;\r
276//LB0 = USP;\r
277//LB1 = USP;\r
278//CYCLES = USP;\r
279//CYCLES2 = USP;\r
280//EMUDAT = USP; \r
281\r
282A0 = A1 ; /* move 40-bit Accumulator value (b) */\r
283\r
284A1 = A0 ; /* move 40-bit Accumulator value (b) */\r
285\r
286//A0 = Dreg ; /* 32-bit D-register to 40-bit A0, sign extended (b)*/\r
287A0 = R0;\r
288A0 = R1;\r
289A0 = R2;\r
290\r
291//A1 = Dreg ; /* 32-bit D-register to 40-bit A1, sign extended (b)*/\r
292\r
293A1 = R0;\r
294A1 = R1;\r
295A1 = R2;\r
296//Dreg_even = A0 (opt_mode) ; /* move 32-bit A0.W to even Dreg (b) */\r
297R0 = A0;\r
298R2 = A0(FU);\r
299R4 = A0(ISS2);\r
300\r
301//Dreg_odd = A1 (opt_mode) ; /* move 32-bit A1.W to odd Dreg (b) */\r
302R1 = A1;\r
303R3 = A1(FU);\r
304R5 = A1(ISS2);\r
305\r
306//Dreg_even = A0, Dreg_odd = A1 (opt_mode) ; /* move both Accumulators to a register pair (b) */\r
307R0 = A0, R1 = A1;\r
308R0 = A0, R1 = A1(FU);\r
309R6 = A0, R7 = A1(ISS2);\r
310\r
311\r
312//Dreg_odd = A1, Dreg_even = A0 (opt_mode) ; /* move both Accumulators to a register pair (b) */\r
313R1 = A1, R0 = A0;\r
314R3 = A1, R2 = A0(FU);\r
315R5 = A1, R4 = A0(ISS2);\r
316\r
317//IF CC DPreg = DPreg ; /* move if CC = 1 (a) */\r
318\r
319IF CC R3 = R0;\r
320IF CC R2 = R0;\r
321IF CC R7 = R0;\r
322\r
323IF CC R2 = P2;\r
324IF CC R4 = P1;\r
325IF CC R0 = P0;\r
326IF CC R7 = P4;\r
327\r
328IF CC P0 = P2;\r
329IF CC P4 = P5;\r
330IF CC P1 = P3;\r
331IF CC P5 = P4;\r
332\r
333IF CC P0 = R2;\r
334IF CC P4 = R3;\r
335IF CC P5 = R7;\r
336IF CC P2 = R6;\r
337\r
338//IF ! CC DPreg = DPreg ; /* move if CC = 0 (a) */\r
339IF !CC R3 = R0;\r
340IF !CC R2 = R0;\r
341IF !CC R7 = R0;\r
342\r
343IF !CC R2 = P2;\r
344IF !CC R4 = P1;\r
345IF !CC R0 = P0;\r
346IF !CC R7 = P4;\r
347\r
348IF !CC P0 = P2;\r
349IF !CC P4 = P5;\r
350IF !CC P1 = P3;\r
351IF !CC P5 = P4;\r
352\r
353IF !CC P0 = R2;\r
354IF !CC P4 = R3;\r
355IF !CC P5 = R7;\r
356IF !CC P2 = R6;\r
357\r
358//Dreg = Dreg_lo (Z) ; /* (a) */\r
359\r
360R0 = R0.L(Z);\r
361R2 = R1.L(Z);\r
362R1 = R2.L(Z);\r
363R7 = R6.L(Z);\r
364\r
365//Dreg = Dreg_lo (X) ; /* (a)*/\r
366R0 = R0.L(X);\r
367R2 = R1.L(X);\r
368R1 = R2.L(X);\r
369R7 = R6.L(X);\r
370\r
371R0 = R0.L;\r
372R2 = R1.L;\r
373R1 = R2.L;\r
374R7 = R6.L;\r
375\r
376//A0.X = Dreg_lo ; /* least significant 8 bits of Dreg into A0.X (b) */\r
377A0.X = R0.L;\r
378A0.X = R1.L;\r
379\r
380//A1.X = Dreg_lo ; /* least significant 8 bits of Dreg into A1.X (b) */\r
381A1.X = R0.L;\r
382A1.X = R1.L;\r
383\r
384//Dreg_lo = A0.X ; /* 8-bit A0.X, sign-extended, into least significant 16 bits of Dreg (b) */\r
385R0.L = A0.X;\r
386R1.L = A0.X;\r
387R7.L = A0.X;\r
388\r
389//Dreg_lo = A1.X ; /* 8-bit A1.X, sign-extended, into least significant 16 bits of Dreg (b) */\r
390R0.L = A1.X;\r
391R1.L = A1.X;\r
392R7.L = A1.X;\r
393\r
394//A0.L = Dreg_lo ; /* least significant 16 bits of Dreg into least significant 16 bits of A0.W (b) */\r
395A0.L = R0.L;\r
396A0.L = R1.L;\r
397A0.L = R6.L;\r
398\r
399//A1.L = Dreg_lo ; /* least significant 16 bits of Dreg into least significant 16 bits of A1.W (b) */\r
400A1.L = R0.L;\r
401A1.L = R1.L;\r
402A1.L = R6.L;\r
403\r
404//A0.H = Dreg_hi ; /* most significant 16 bits of Dreg into most significant 16 bits of A0.W (b) */\r
405A0.H = R0.H;\r
406A0.H = R1.H;\r
407A0.H = R6.H;\r
408//A1.H = Dreg_hi ; /* most significant 16 bits of Dreg into most significant 16 bits of A1.W (b) */\r
409A1.H = R0.H;\r
410A1.H = R1.H;\r
411A1.H = R6.H;\r
412\r
413//Dreg_lo = A0 (opt_mode) ; /* move A0 to lower half of Dreg (b) */\r
414R0.L = A0;\r
415R1.L = A0;\r
416\r
417R0.L = A0(FU);\r
418R1.L = A0(FU);\r
419\r
420R0.L = A0(IS);\r
421R1.L = A0(IS);\r
422\r
423R0.L = A0(IU);\r
424R1.L = A0(IU);\r
425\r
426R0.L = A0(T);\r
427R1.L = A0(T);\r
428\r
429R0.L = A0(S2RND);\r
430R1.L = A0(S2RND);\r
431\r
432R0.L = A0(ISS2);\r
433R1.L = A0(ISS2);\r
434\r
435R0.L = A0(IH);\r
436R1.L = A0(IH);\r
437\r
438//Dreg_hi = A1 (opt_mode) ; /* move A1 to upper half of Dreg (b) */\r
439R0.H = A1;\r
440R1.H = A1;\r
441\r
442R0.H = A1(FU);\r
443R1.H = A1(FU);\r
444\r
445R0.H = A1(IS);\r
446R1.H = A1(IS);\r
447\r
448R0.H = A1(IU);\r
449R1.H = A1(IU);\r
450\r
451R0.H = A1(T);\r
452R1.H = A1(T);\r
453\r
454R0.H = A1(S2RND);\r
455R1.H = A1(S2RND);\r
456\r
457R0.H = A1(ISS2);\r
458R1.H = A1(ISS2);\r
459\r
460R0.H = A1(IH);\r
461R1.H = A1(IH);\r
462\r
463\r
464//Dreg_lo = A0, Dreg_hi = A1 (opt_mode) ; /* move both values at once; must go to the lower and upper halves of the same Dreg (b)*/\r
465\r
466R0.L = A0, R0.H = A1; \r
467R1.L = A0, R1.H = A1; \r
468\r
469R0.L = A0, R0.H = A1(FU); \r
470R1.L = A0, R1.H = A1(FU);\r
471 \r
472R0.L = A0, R0.H = A1(IS); \r
473R1.L = A0, R1.H = A1(IS);\r
474 \r
475R0.L = A0, R0.H = A1(IU); \r
476R1.L = A0, R1.H = A1(IU);\r
477 \r
478R0.L = A0, R0.H = A1(T); \r
479R1.L = A0, R1.H = A1(T);\r
480 \r
481R0.L = A0, R0.H = A1(S2RND); \r
482R1.L = A0, R1.H = A1(S2RND);\r
483 \r
484R0.L = A0, R0.H = A1(ISS2); \r
485R1.L = A0, R1.H = A1(ISS2);\r
486\r
487R0.L = A0, R0.H = A1(IH); \r
488R1.L = A0, R1.H = A1(IH);\r
489 \r
490//Dreg_hi = A1, Dreg_lo = AO (opt_mode) ; /* move both values at once; must go to the upper and lower halves of the same Dreg (b) */\r
491\r
492R0.H = A1,R0.L = A0; \r
493R1.H = A1,R1.L = A0; \r
494 \r
495R0.H = A1,R0.L = A0 (FU); \r
496R1.H = A1,R1.L = A0 (FU);\r
497 \r
498R0.H = A1,R0.L = A0 (IS); \r
499R1.H = A1,R1.L = A0 (IS);\r
500 \r
501R0.H = A1,R0.L = A0 (IU); \r
502R1.H = A1,R1.L = A0 (IU);\r
503 \r
504R0.H = A1,R0.L = A0 (T); \r
505R1.H = A1,R1.L = A0 (T);\r
506 \r
507R0.H = A1,R0.L = A0 (S2RND); \r
508R1.H = A1,R1.L = A0 (S2RND);\r
509 \r
510R0.H = A1,R0.L = A0 (ISS2); \r
511R1.H = A1,R1.L = A0 (ISS2);\r
512 \r
513R0.H = A1,R0.L = A0 (IH); \r
514R1.H = A1,R1.L = A0 (IH);\r
515 \r
516//Dreg = Dreg_byte (Z) ; /* (a)*/\r
517\r
518R0 = R1.B(Z);\r
519R0 = R2.B(Z);\r
520\r
521R7 = R1.B(Z);\r
522R7 = R2.B(Z);\r
523\r
524//Dreg = Dreg_byte (X) ; /* (a) */\r
525R0 = R1.B(X);\r
526R0 = R2.B(X);\r
527\r
528R7 = R1.B(X);\r
529R7 = R2.B(X);\r
530\r
This page took 0.060265 seconds and 4 git commands to generate.