1# This tests the XP-only instructions:
2#  ldint.x, ldio.x, stio.x, scyc.b, pfld.q
3# And control registers:
4#  %bear, %ccr, %p0, %p1, %p2, %p3
5
6	.text
7
8	# XP-only control registers
9	ld.c	%bear,%r31
10	ld.c	%bear,%r0
11	ld.c	%ccr,%r5
12	ld.c	%ccr,%r30
13	ld.c	%p0,%r10
14	ld.c	%p0,%r2
15	ld.c	%p1,%r21
16	ld.c	%p1,%r0
17	ld.c	%p2,%r28
18	ld.c	%p2,%r12
19	ld.c	%p3,%r31
20	ld.c	%p3,%r6
21
22	st.c	%r0,%bear
23	st.c	%r30,%bear
24	st.c	%r7,%ccr
25	st.c	%r31,%ccr
26	st.c	%r11,%p0
27	st.c	%r3,%p0
28	st.c	%r22,%p1
29	st.c	%r15,%p1
30	st.c	%r29,%p2
31	st.c	%r13,%p2
32	st.c	%r4,%p3
33	st.c	%r6,%p3
34
35	# ldint.{s,b,l}
36	ldint.l	%r0,%r5
37	ldint.l	%r6,%r31
38	ldint.l	%r7,%r30
39	ldint.l	%r8,%r29
40	ldint.l	%r9,%r28
41	ldint.l	%r0,%r27
42	ldint.l	%r1,%r26
43	ldint.l	%r12,%r25
44	ldint.l	%r13,%r24
45	ldint.l	%r14,%r23
46	ldint.l	%r15,%r22
47	ldint.l	%r16,%r21
48	ldint.l	%r17,%r20
49	ldint.l	%r28,%r19
50	ldint.l	%r31,%r18
51
52	ldint.s	%r0,%r5
53	ldint.s	%r6,%r31
54	ldint.s	%r7,%r30
55	ldint.s	%r8,%r29
56	ldint.s	%r9,%r28
57	ldint.s	%r0,%r27
58	ldint.s	%r1,%r26
59	ldint.s	%r12,%r25
60	ldint.s	%r13,%r24
61	ldint.s	%r14,%r23
62	ldint.s	%r15,%r22
63	ldint.s	%r16,%r21
64	ldint.s	%r17,%r20
65	ldint.s	%r28,%r19
66	ldint.s	%r31,%r18
67
68	ldint.b	%r0,%r5
69	ldint.b	%r6,%r31
70	ldint.b	%r7,%r30
71	ldint.b	%r8,%r29
72	ldint.b	%r9,%r28
73	ldint.b	%r0,%r27
74	ldint.b	%r1,%r26
75	ldint.b	%r12,%r25
76	ldint.b	%r13,%r24
77	ldint.b	%r14,%r23
78	ldint.b	%r15,%r22
79	ldint.b	%r16,%r21
80	ldint.b	%r17,%r20
81	ldint.b	%r28,%r19
82	ldint.b	%r31,%r18
83
84	# ldio.{s,b,l}
85	ldio.l	%r0,%r5
86	ldio.l	%r6,%r31
87	ldio.l	%r7,%r30
88	ldio.l	%r8,%r29
89	ldio.l	%r9,%r28
90	ldio.l	%r0,%r27
91	ldio.l	%r1,%r26
92	ldio.l	%r12,%r25
93	ldio.l	%r13,%r24
94	ldio.l	%r14,%r23
95	ldio.l	%r15,%r22
96	ldio.l	%r16,%r21
97	ldio.l	%r17,%r20
98	ldio.l	%r28,%r19
99	ldio.l	%r31,%r18
100
101	ldio.s	%r0,%r5
102	ldio.s	%r6,%r31
103	ldio.s	%r7,%r30
104	ldio.s	%r8,%r29
105	ldio.s	%r9,%r28
106	ldio.s	%r0,%r27
107	ldio.s	%r1,%r26
108	ldio.s	%r12,%r25
109	ldio.s	%r13,%r24
110	ldio.s	%r14,%r23
111	ldio.s	%r15,%r22
112	ldio.s	%r16,%r21
113	ldio.s	%r17,%r20
114	ldio.s	%r28,%r19
115	ldio.s	%r31,%r18
116
117	ldio.b	%r0,%r5
118	ldio.b	%r6,%r31
119	ldio.b	%r7,%r30
120	ldio.b	%r8,%r29
121	ldio.b	%r9,%r28
122	ldio.b	%r0,%r27
123	ldio.b	%r1,%r26
124	ldio.b	%r12,%r25
125	ldio.b	%r13,%r24
126	ldio.b	%r14,%r23
127	ldio.b	%r15,%r22
128	ldio.b	%r16,%r21
129	ldio.b	%r17,%r20
130	ldio.b	%r28,%r19
131	ldio.b	%r31,%r18
132
133	# stio.{s,b,l}
134	stio.l	%r0,%r5
135	stio.l	%r6,%r31
136	stio.l	%r7,%r30
137	stio.l	%r8,%r29
138	stio.l	%r9,%r28
139	stio.l	%r0,%r27
140	stio.l	%r1,%r26
141	stio.l	%r12,%r25
142	stio.l	%r13,%r24
143	stio.l	%r14,%r23
144	stio.l	%r15,%r22
145	stio.l	%r16,%r21
146	stio.l	%r17,%r20
147	stio.l	%r28,%r19
148	stio.l	%r31,%r18
149
150	stio.s	%r0,%r5
151	stio.s	%r6,%r31
152	stio.s	%r7,%r30
153	stio.s	%r8,%r29
154	stio.s	%r9,%r28
155	stio.s	%r0,%r27
156	stio.s	%r1,%r26
157	stio.s	%r12,%r25
158	stio.s	%r13,%r24
159	stio.s	%r14,%r23
160	stio.s	%r15,%r22
161	stio.s	%r16,%r21
162	stio.s	%r17,%r20
163	stio.s	%r28,%r19
164	stio.s	%r31,%r18
165
166	stio.b	%r0,%r5
167	stio.b	%r6,%r31
168	stio.b	%r7,%r30
169	stio.b	%r8,%r29
170	stio.b	%r9,%r28
171	stio.b	%r0,%r27
172	stio.b	%r1,%r26
173	stio.b	%r12,%r25
174	stio.b	%r13,%r24
175	stio.b	%r14,%r23
176	stio.b	%r15,%r22
177	stio.b	%r16,%r21
178	stio.b	%r17,%r20
179	stio.b	%r28,%r19
180	stio.b	%r31,%r18
181
182	# scyc.b
183	scyc.b	%r0
184	scyc.b	%r5
185	scyc.b	%r6
186	scyc.b	%r13
187	scyc.b	%r14
188	scyc.b	%r28
189	scyc.b	%r29
190	scyc.b	%r30
191	scyc.b	%r31
192
193	# pfld.q
194	# Immediate form, no auto-increment.
195	pfld.q	0(%r0),%f0
196	pfld.q	128(%r1),%f28
197	pfld.q	256(%r2),%f24
198	pfld.q	512(%r3),%f20
199	pfld.q	1024(%r4),%f16
200	pfld.q	4096(%r5),%f12
201	pfld.q	8192(%r6),%f8
202	pfld.q	16384(%r7),%f4
203	pfld.q	32760(%r7),%f0
204	pfld.q	-32768(%r7),%f28
205	pfld.q	-16384(%r8),%f24
206	pfld.q	-8192(%r9),%f20
207	pfld.q	-4096(%r10),%f16
208	pfld.q	-1024(%r11),%f12
209	pfld.q	-512(%r12),%f8
210	pfld.q	-248(%r13),%f4
211	pfld.q	-8(%r14),%f0
212
213	# Immediate form, with auto-increment.
214	pfld.q	0(%r0)++,%f0
215	pfld.q	128(%r1)++,%f4
216	pfld.q	256(%r2)++,%f8
217	pfld.q	512(%r3)++,%f12
218	pfld.q	1024(%r4)++,%f16
219	pfld.q	4096(%r5)++,%f20
220	pfld.q	8192(%r6)++,%f24
221	pfld.q	16384(%r7)++,%f28
222	pfld.q	32760(%r7)++,%f0
223	pfld.q	-32768(%r7)++,%f4
224	pfld.q	-16384(%r8)++,%f8
225	pfld.q	-8192(%r9)++,%f12
226	pfld.q	-4096(%r10)++,%f16
227	pfld.q	-1024(%r11)++,%f20
228	pfld.q	-512(%r12)++,%f24
229	pfld.q	-248(%r13)++,%f28
230	pfld.q	-8(%r14)++,%f16
231
232	# Index form, no auto-increment.
233	pfld.q	%r5(%r0),%f28
234	pfld.q	%r6(%r1),%f24
235	pfld.q	%r7(%r2),%f20
236	pfld.q	%r8(%r3),%f16
237	pfld.q	%r9(%r4),%f12
238	pfld.q	%r0(%r5),%f8
239	pfld.q	%r1(%r6),%f4
240	pfld.q	%r12(%r7),%f0
241	pfld.q	%r13(%r8),%f28
242	pfld.q	%r14(%r9),%f24
243	pfld.q	%r15(%r10),%f20
244	pfld.q	%r16(%r11),%f16
245	pfld.q	%r17(%r12),%f12
246	pfld.q	%r28(%r13),%f8
247	pfld.q	%r31(%r14),%f4
248
249	# Index form, with auto-increment.
250	pfld.q	%r5(%r0)++,%f0
251	pfld.q	%r6(%r1)++,%f4
252	pfld.q	%r7(%r2)++,%f8
253	pfld.q	%r8(%r3)++,%f12
254	pfld.q	%r9(%r4)++,%f16
255	pfld.q	%r0(%r5)++,%f20
256	pfld.q	%r1(%r6)++,%f24
257	pfld.q	%r12(%r7)++,%f28
258	pfld.q	%r13(%r8)++,%f0
259	pfld.q	%r14(%r9)++,%f4
260	pfld.q	%r15(%r10)++,%f8
261	pfld.q	%r16(%r11)++,%f12
262	pfld.q	%r17(%r12)++,%f16
263	pfld.q	%r28(%r13)++,%f20
264	pfld.q	%r31(%r14)++,%f24
265
266
267