1//Original:/testcases/core/c_alu2op_conv_xh/c_alu2op_conv_xh.dsp
2// Spec Reference: alu2op convert xh
3# mach: bfin
4
5.include "testutils.inc"
6	start
7
8
9
10
11imm32 r0, 0x00789abc;
12imm32 r1, 0x12345678;
13imm32 r2, 0x23456789;
14imm32 r3, 0x3456789a;
15imm32 r4, 0x856789ab;
16imm32 r5, 0x96789abc;
17imm32 r6, 0xa789abcd;
18imm32 r7, 0xb89abcde;
19R0 = R0.L (X);
20R1 = R0.L (X);
21R2 = R0.L (X);
22R3 = R0.L (X);
23R4 = R0.L (X);
24R5 = R0.L (X);
25R6 = R0.L (X);
26R7 = R0.L (X);
27CHECKREG r0, 0xFFFF9ABC;
28CHECKREG r1, 0xFFFF9ABC;
29CHECKREG r2, 0xFFFF9ABC;
30CHECKREG r3, 0xFFFF9ABC;
31CHECKREG r4, 0xFFFF9ABC;
32CHECKREG r5, 0xFFFF9ABC;
33CHECKREG r6, 0xFFFF9ABC;
34CHECKREG r7, 0xFFFF9ABC;
35
36imm32 r0, 0x01230002;
37imm32 r1, 0x00374659;
38imm32 r2, 0x93456789;
39imm32 r3, 0xa456789a;
40imm32 r4, 0xb56789ab;
41imm32 r5, 0xc6789abc;
42imm32 r6, 0xd789abcd;
43imm32 r7, 0xe89abcde;
44R0 = R1.L (X);
45R2 = R1.L (X);
46R3 = R1.L (X);
47R4 = R1.L (X);
48R5 = R1.L (X);
49R6 = R1.L (X);
50R7 = R1.L (X);
51R1 = R1.L (X);
52CHECKREG r0, 0x00004659;
53CHECKREG r1, 0x00004659;
54CHECKREG r2, 0x00004659;
55CHECKREG r3, 0x00004659;
56CHECKREG r4, 0x00004659;
57CHECKREG r5, 0x00004659;
58CHECKREG r6, 0x00004659;
59CHECKREG r7, 0x00004659;
60
61imm32 r0, 0x10789abc;
62imm32 r1, 0x11345678;
63imm32 r2, 0x93156789;
64imm32 r3, 0xd451789a;
65imm32 r4, 0x856719ab;
66imm32 r5, 0x267891bc;
67imm32 r6, 0xa789ab1d;
68imm32 r7, 0x989ab1de;
69R0 = R2.L (X);
70R1 = R2.L (X);
71R3 = R2.L (X);
72R4 = R2.L (X);
73R5 = R2.L (X);
74R6 = R2.L (X);
75R7 = R2.L (X);
76R2 = R2.L (X);
77CHECKREG r0, 0x00006789;
78CHECKREG r1, 0x00006789;
79CHECKREG r2, 0x00006789;
80CHECKREG r3, 0x00006789;
81CHECKREG r4, 0x00006789;
82CHECKREG r5, 0x00006789;
83CHECKREG r6, 0x00006789;
84CHECKREG r7, 0x00006789;
85
86imm32 r0, 0x21230002;
87imm32 r1, 0x02374659;
88imm32 r2, 0x93256789;
89imm32 r3, 0xa952789a;
90imm32 r4, 0xb59729ab;
91imm32 r5, 0xc67992bc;
92imm32 r6, 0xd7899b2d;
93imm32 r7, 0xe89ab9d2;
94R0 = R3.L (X);
95R1 = R3.L (X);
96R2 = R3.L (X);
97R4 = R3.L (X);
98R5 = R3.L (X);
99R6 = R3.L (X);
100R7 = R3.L (X);
101R3 = R3.L (X);
102CHECKREG r0, 0x0000789A;
103CHECKREG r1, 0x0000789A;
104CHECKREG r2, 0x0000789A;
105CHECKREG r3, 0x0000789A;
106CHECKREG r4, 0x0000789A;
107CHECKREG r5, 0x0000789A;
108CHECKREG r6, 0x0000789A;
109CHECKREG r7, 0x0000789A;
110
111imm32 r0, 0xa0789abc;
112imm32 r1, 0x1a345678;
113imm32 r2, 0x23a56789;
114imm32 r3, 0x645a789a;
115imm32 r4, 0x8667a9ab;
116imm32 r5, 0x96689abc;
117imm32 r6, 0xa787abad;
118imm32 r7, 0xb89a7cda;
119R0 = R4.L (X);
120R1 = R4.L (X);
121R2 = R4.L (X);
122R3 = R4.L (X);
123R4 = R4.L (X);
124R5 = R4.L (X);
125R6 = R4.L (X);
126R7 = R4.L (X);
127CHECKREG r0, 0xFFFFA9AB;
128CHECKREG r1, 0xFFFFA9AB;
129CHECKREG r2, 0xFFFFA9AB;
130CHECKREG r3, 0xFFFFA9AB;
131CHECKREG r4, 0xFFFFA9AB;
132CHECKREG r5, 0xFFFFA9AB;
133CHECKREG r6, 0xFFFFA9AB;
134CHECKREG r7, 0xFFFFA9AB;
135
136imm32 r0, 0xf1230002;
137imm32 r1, 0x0f374659;
138imm32 r2, 0x93f56789;
139imm32 r3, 0xa45f789a;
140imm32 r4, 0xb567f9ab;
141imm32 r5, 0xc6789fbc;
142imm32 r6, 0xd789abfd;
143imm32 r7, 0xe89abcdf;
144R0 = R5.L (X);
145R1 = R5.L (X);
146R2 = R5.L (X);
147R3 = R5.L (X);
148R4 = R5.L (X);
149R6 = R5.L (X);
150R7 = R5.L (X);
151R5 = R5.L (X);
152CHECKREG r0, 0xFFFF9FBC;
153CHECKREG r1, 0xFFFF9FBC;
154CHECKREG r2, 0xFFFF9FBC;
155CHECKREG r3, 0xFFFF9FBC;
156CHECKREG r4, 0xFFFF9FBC;
157CHECKREG r5, 0xFFFF9FBC;
158CHECKREG r6, 0xFFFF9FBC;
159CHECKREG r7, 0xFFFF9FBC;
160
161imm32 r0, 0xe0789abc;
162imm32 r1, 0xe2345678;
163imm32 r2, 0x2e456789;
164imm32 r3, 0x34e6789a;
165imm32 r4, 0x856e89ab;
166imm32 r5, 0x9678eabc;
167imm32 r6, 0xa789aecd;
168imm32 r7, 0xb89abcee;
169R0 = R6.L (X);
170R1 = R6.L (X);
171R2 = R6.L (X);
172R3 = R6.L (X);
173R4 = R6.L (X);
174R5 = R6.L (X);
175R7 = R6.L (X);
176R6 = R6.L (X);
177CHECKREG r0, 0xFFFFAECD;
178CHECKREG r1, 0xFFFFAECD;
179CHECKREG r2, 0xFFFFAECD;
180CHECKREG r3, 0xFFFFAECD;
181CHECKREG r4, 0xFFFFAECD;
182CHECKREG r5, 0xFFFFAECD;
183CHECKREG r6, 0xFFFFAECD;
184CHECKREG r7, 0xFFFFAECD;
185
186imm32 r0, 0x012300f5;
187imm32 r1, 0x80374659;
188imm32 r2, 0x98456589;
189imm32 r3, 0xa486589a;
190imm32 r4, 0xb56589ab;
191imm32 r5, 0xc6588abc;
192imm32 r6, 0xd589a8cd;
193imm32 r7, 0x589abc88;
194R0 = R7.L (X);
195R1 = R7.L (X);
196R2 = R7.L (X);
197R3 = R7.L (X);
198R4 = R7.L (X);
199R5 = R7.L (X);
200R6 = R7.L (X);
201R7 = R7.L (X);
202CHECKREG r0, 0xFFFFBC88;
203CHECKREG r1, 0xFFFFBC88;
204CHECKREG r2, 0xFFFFBC88;
205CHECKREG r3, 0xFFFFBC88;
206CHECKREG r4, 0xFFFFBC88;
207CHECKREG r5, 0xFFFFBC88;
208CHECKREG r6, 0xFFFFBC88;
209CHECKREG r7, 0xFFFFBC88;
210
211
212pass
213