1/*
2 * test relax
3 * mv <-> mv!   : for mv! : register number must be in 0-15
4 * mv <-> mhfl! : for mhfl! : rD must be in 16-31, rS must be in 0-15
5 * mv <-> mlfh! : for mhfl! : rD must be in 0-15, rS must be in 16-31
6
7 * Author: ligang
8 */
9
10/* This block test mv -> mv! */
11.align 4
12
13  mv  r0, r15      #32b -> 16b
14  mv! r0, r15
15
16  mv  r15, r15     #32b -> 16b
17  mv! r15, r15
18
19  mv  r3, r5       #32b -> 16b
20  mv  r3, r5       #32b -> 16b
21
22  mv! r6, r7
23  mv  r6, r7       #32b -> 16b
24
25  mv  r8, r10      #No transform
26  mv  r21, r23
27
28/* This block test mv! -> mv */
29.align 4
30
31  mv! r0, r15      #16b -> 32b
32  mv  r23, r27
33
34  mv! r2, r8       #No transform
35  mv! r2, r8       #No transform
36
37  mv! r2, r8       #No transform
38  mv  r2, r8
39
40/* This block test mv -> mhfl! */
41.align 4
42
43  mv    r31, r0        #32b -> 16b
44  mhfl! r31, r0
45
46  mv    r16, r15       #32b -> 16b
47  mv!   r16, r15
48
49  mv    r23, r5        #32b -> 16b
50  mv    r23, r5        #32b -> 16b
51
52  mhfl! r26, r7
53  mv    r26, r7        #32b -> 16b
54
55  mv    r28, r10       #No transform
56  mv    r21, r23
57
58/* This block test mhfl! -> mv */
59.align 4
60
61  mhfl! r31, r0       #16b -> 32b
62  mv    r23, r27
63
64  mhfl! r22, r8       #No transform
65  mhfl! r22, r8       #No transform
66
67  mhfl! r23, r15      #No transform
68  mv    r23, r15
69
70/* This block test mv -> mlfh! */
71.align 4
72
73  mv    r0, r31        #32b -> 16b
74  mlfh! r0, r31
75
76  mv    r15, r16       #32b -> 16b
77  mv!   r15, r16
78
79  mv    r5, r23        #32b -> 16b
80  mv    r5, r23        #32b -> 16b
81
82  mlfh! r7, r26
83  mv    r7, r26        #32b -> 16b
84
85  mv    r10, r28       #No transform
86  mv    r21, r23
87
88/* This block test mhfl! -> mv */
89.align 4
90
91  mlfh! r0, r31       #16b -> 32b
92  mv    r23, r27
93
94  mlfh! r8, r22       #No transform
95  mlfh! r8, r22       #No transform
96
97  mlfh! r15, r23      #No transform
98  mv    r15, r23
99