Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | /* |
2 | * ========== Copyright Header Begin ========================================== | |
3 | * | |
4 | * OpenSPARC T2 Processor File: isa3_asr_pr_hpr_f6.s | |
5 | * Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved | |
6 | * 4150 Network Circle, Santa Clara, California 95054, U.S.A. | |
7 | * | |
8 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | |
9 | * | |
10 | * This program is free software; you can redistribute it and/or modify | |
11 | * it under the terms of the GNU General Public License as published by | |
12 | * the Free Software Foundation; version 2 of the License. | |
13 | * | |
14 | * This program is distributed in the hope that it will be useful, | |
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 | * GNU General Public License for more details. | |
18 | * | |
19 | * You should have received a copy of the GNU General Public License | |
20 | * along with this program; if not, write to the Free Software | |
21 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
22 | * | |
23 | * For the avoidance of doubt, and except that if any non-GPL license | |
24 | * choice is available it will apply instead, Sun elects to use only | |
25 | * the General Public License version 2 (GPLv2) at this time for any | |
26 | * software where a choice of GPL license versions is made | |
27 | * available with the language indicating that GPLv2 or any later version | |
28 | * may be used, or where a choice of which version of the GPL is applied is | |
29 | * otherwise unspecified. | |
30 | * | |
31 | * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, | |
32 | * CA 95054 USA or visit www.sun.com if you need additional information or | |
33 | * have any questions. | |
34 | * | |
35 | * | |
36 | * ========== Copyright Header End ============================================ | |
37 | */ | |
38 | .ident "FOCUSCASE: focus.pm,v 1.1 2003/04/23 17:53:39 somePerson Exp somePerson $ ../focus/spc_basic_isa3.pl FOCUS_SEED=44886650" | |
39 | .ident "BY gg137162 ON Tue Sep 9 16:40:50 CDT 2003" | |
40 | .ident "Using Instruction Hash for Focus :$Id: isa3_asr_pr_hpr_f6.s,v 1.2 2007/07/05 21:59:53 drp Exp $" | |
41 | #include "defines.h" | |
42 | #include "nmacros.h" | |
43 | #include "old_boot.s" | |
44 | ||
45 | /************************************************************************ | |
46 | Test case code start | |
47 | ************************************************************************/ | |
48 | ||
49 | .text | |
50 | .global main | |
51 | ||
52 | main: /* test begin */ | |
53 | ||
54 | ||
55 | ta T_RD_THID | |
56 | mov %o1, %l6 | |
57 | umul %l6, 256, %l7 | |
58 | setx DIAG_DATA_AREA, %g1, %g3 | |
59 | add %l7, %g3, %l7 | |
60 | ||
61 | mov %l7, %g1 | |
62 | wrpr %g0, 0x0, %cwp | |
63 | mov %g1, %l7 | |
64 | wrpr %g0, 0x1, %cwp | |
65 | mov %g1, %l7 | |
66 | wrpr %g0, 0x2, %cwp | |
67 | mov %g1, %l7 | |
68 | wrpr %g0, 0x3, %cwp | |
69 | mov %g1, %l7 | |
70 | wrpr %g0, 0x4, %cwp | |
71 | mov %g1, %l7 | |
72 | wrpr %g0, 0x5, %cwp | |
73 | mov %g1, %l7 | |
74 | wrpr %g0, 0x6, %cwp | |
75 | mov %g1, %l7 | |
76 | wrpr %g0, 0x7, %cwp | |
77 | mov %g1, %l7 | |
78 | ! | |
79 | ! Thread 0 Start | |
80 | ! | |
81 | main_t0: | |
82 | ||
83 | !# Initialize registers .. | |
84 | ||
85 | !# Global registers | |
86 | set 0x9, %g1 | |
87 | set 0xD, %g2 | |
88 | set 0x1, %g3 | |
89 | set 0x7, %g4 | |
90 | set 0x7, %g5 | |
91 | set 0x7, %g6 | |
92 | set 0xF, %g7 | |
93 | !# Input registers | |
94 | set -0x8, %i0 | |
95 | set -0xA, %i1 | |
96 | set -0xF, %i2 | |
97 | set -0x4, %i3 | |
98 | set -0x4, %i4 | |
99 | set -0x2, %i5 | |
100 | set -0x3, %i6 | |
101 | set -0xC, %i7 | |
102 | !# Local registers | |
103 | set 0x50E750B9, %l0 | |
104 | set 0x206FCC1D, %l1 | |
105 | set 0x2A510B97, %l2 | |
106 | set 0x4C5993CF, %l3 | |
107 | set 0x5650C170, %l4 | |
108 | set 0x0D6B85DF, %l5 | |
109 | set 0x1225BFC3, %l6 | |
110 | !# Output registers | |
111 | set -0x198E, %o0 | |
112 | set -0x0601, %o1 | |
113 | set -0x1038, %o2 | |
114 | set -0x1E41, %o3 | |
115 | set 0x1312, %o4 | |
116 | set -0x0B8F, %o5 | |
117 | set -0x00E3, %o6 | |
118 | set -0x1EF2, %o7 | |
119 | !# Float registers | |
120 | INIT_TH_FP_REG(%l7,%f0,0x9E7C9F9E6CD9D260) | |
121 | INIT_TH_FP_REG(%l7,%f2,0x4319F96717D4B337) | |
122 | INIT_TH_FP_REG(%l7,%f4,0xB0A4ADB2F043FCB7) | |
123 | INIT_TH_FP_REG(%l7,%f6,0xCDE1BFFD1B7C866E) | |
124 | INIT_TH_FP_REG(%l7,%f8,0x25A86CA922335AC4) | |
125 | INIT_TH_FP_REG(%l7,%f10,0xEB2029F0B7758FA9) | |
126 | INIT_TH_FP_REG(%l7,%f12,0xDE7343FCAE12D7D7) | |
127 | INIT_TH_FP_REG(%l7,%f14,0xE4A4241B06965ACF) | |
128 | INIT_TH_FP_REG(%l7,%f16,0x09D6E73415A4D243) | |
129 | INIT_TH_FP_REG(%l7,%f18,0x42305BDA7F6CE8A0) | |
130 | INIT_TH_FP_REG(%l7,%f20,0x2380613669D682E3) | |
131 | INIT_TH_FP_REG(%l7,%f22,0xC1612338B8C29E97) | |
132 | INIT_TH_FP_REG(%l7,%f24,0x808BF4BCF27826C5) | |
133 | INIT_TH_FP_REG(%l7,%f26,0xF58F89D68B0C1222) | |
134 | INIT_TH_FP_REG(%l7,%f28,0xC0D25EFBB670BFBB) | |
135 | INIT_TH_FP_REG(%l7,%f30,0x3185789CF8DCEEE0) | |
136 | !# Other state | |
137 | ||
138 | or %g0, 0x8, %l0 | |
139 | sllx %l0, 0x3c, %l0 | |
140 | ||
141 | or %g0, 0x8, %l0 | |
142 | sllx %l0, 0x3c, %l0 | |
143 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
144 | ||
145 | ||
146 | !# Execute Main Diag .. | |
147 | ||
148 | ||
149 | or %g0, 0x8, %l0 | |
150 | sllx %l0, 0x3c, %l0 | |
151 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
152 | fcmpgt32 %f30, %f28, %l4 | |
153 | wrpr %i1, 0x1C16, %cwp | |
154 | fmovrslez %g1, %f12, %f11 | |
155 | wr %g5, 0x006E, %sys_tick | |
156 | srlx %o1, %i5, %i7 | |
157 | wrpr %o4, %i0, %cwp | |
158 | movrlez %l1, 0x399, %l5 | |
159 | tpos %xcc, 0x4 | |
160 | ||
161 | or %g0, 0x8, %l0 | |
162 | sllx %l0, 0x3c, %l0 | |
163 | wrhpr %l0, 0x33A, %hsys_tick_cmpr | |
164 | rdpr %otherwin, %i3 | |
165 | ||
166 | or %g0, 0x8, %l0 | |
167 | sllx %l0, 0x3c, %l0 | |
168 | wrhpr %l0, 0x9B9, %hsys_tick_cmpr | |
169 | rd %ccr, %g2 | |
170 | rdpr %tl, %l2 | |
171 | ldx [%l7 + 0x20], %o2 | |
172 | wrpr %g7, %i2, %tick | |
173 | rd %fprs, %o6 | |
174 | movge %xcc, %l0, %g3 | |
175 | movne %icc, %o0, %i6 | |
176 | rd %tick_cmpr, %o7 | |
177 | fpsub32 %f16, %f8, %f8 | |
178 | fnands %f29, %f12, %f7 | |
179 | fexpand %f29, %f14 | |
180 | lduw [%l7 + 0x14], %l3 | |
181 | saved | |
182 | rdpr %cwp, %g1 | |
183 | rdpr %cansave, %g2 | |
184 | rdpr %canrestore, %g3 | |
185 | rdpr %cleanwin, %g4 | |
186 | rdpr %otherwin, %g5 | |
187 | rdpr %wstate, %g6 | |
188 | rdpr %pil, %l6 | |
189 | rdhpr %hpstate, %i4 | |
190 | rdhpr %hsys_tick_cmpr, %l4 | |
191 | wr %g0, 0xe, %pcr ! changed. | |
192 | ||
193 | or %g0, 0x8, %l0 | |
194 | sllx %l0, 0x3c, %l0 | |
195 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
196 | tcs %xcc, 0x2 | |
197 | rdhpr %hintp, %g5 | |
198 | bcs loop_1 | |
199 | movcs %icc, %o1, %i5 | |
200 | brgz,a %i7, loop_2 | |
201 | rdhpr %hintp, %o4 | |
202 | loop_1: | |
203 | taddcctv %o5, %l1, %i0 | |
204 | popc %g4, %l5 | |
205 | loop_2: | |
206 | fmovrse %i3, %f4, %f25 | |
207 | rdhpr %hsys_tick_cmpr, %o3 | |
208 | rdhpr %hintp, %g6 | |
209 | rd %tick_cmpr, %l2 | |
210 | wr %g2, 0x0D3E, %clear_softint | |
211 | wr %g7, 0x1613, %softint | |
212 | wrpr %o2, 0x0C30, %tick | |
213 | rdhpr %hsys_tick_cmpr, %i2 | |
214 | wr %l0, %o6, %set_softint | |
215 | rdhpr %hsys_tick_cmpr, %o0 | |
216 | wr %g3, 0x0416, %set_softint | |
217 | rd %y, %o7 | |
218 | fmovsvc %xcc, %f21, %f1 | |
219 | rdpr %cwp, %l3 | |
220 | rd %softint, %i6 | |
221 | addccc %i4, %l6, %i1 | |
222 | bpos,a,pn %xcc, loop_3 | |
223 | rdpr %otherwin, %g1 | |
224 | rdpr %tl, %g5 | |
225 | fnegs %f26, %f19 | |
226 | loop_3: | |
227 | wrpr %l4, 0x17A0, %cwp | |
228 | wr %o1, 0x0FAF, %pic | |
229 | call loop_4 | |
230 | movl %icc, %i5, %i7 | |
231 | wr %o5, %l1, %sys_tick | |
232 | ldstub [%l7 + 0x6D], %o4 | |
233 | loop_4: | |
234 | array8 %g4, %i0, %l5 | |
235 | xor %i3, %g6, %l2 | |
236 | ||
237 | or %g0, 0x8, %l0 | |
238 | sllx %l0, 0x3c, %l0 | |
239 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
240 | add %o3, 0x122E, %g7 | |
241 | brlz,a %o2, loop_5 | |
242 | rd %sys_tick_cmpr, %l0 | |
243 | movle %xcc, %o6, %o0 | |
244 | wr %g0, 0x18, %asi | |
245 | ldswa [%l7 + 0x08] %asi, %g3 | |
246 | loop_5: | |
247 | nop | |
248 | ||
249 | or %g0, 0x8, %l0 | |
250 | sllx %l0, 0x3c, %l0 | |
251 | wrhpr %l0, 0xB54, %hsys_tick_cmpr | |
252 | movle %xcc, %i2, %i6 | |
253 | ta %xcc, 0x5 | |
254 | ta %xcc, 0x2 | |
255 | rdpr %cansave, %i4 | |
256 | flush %l7 + 0x74 | |
257 | rd %ccr, %i1 | |
258 | popc 0x03C5, %l6 | |
259 | mova %icc, %g5, %l4 | |
260 | brlez,a %g1, loop_6 | |
261 | flush %l7 + 0x30 | |
262 | wrpr %o1, %i7, %pil | |
263 | rdpr %cansave, %i5 | |
264 | loop_6: | |
265 | movrlz %o5, %o4, %g4 | |
266 | rd %y, %i0 | |
267 | set 0x54, %g4 | |
268 | lda [%l7 + %g4] 0x18, %f25 | |
269 | subc %l5, 0x1029, %l1 | |
270 | wr %g0, 0xe, %pcr ! changed. | |
271 | fxors %f7, %f23, %f7 | |
272 | bvc %xcc, loop_7 | |
273 | wr %g0, 0xe, %pcr ! changed. | |
274 | movrgez %o3, 0x36F, %g2 | |
275 | rd %softint, %o2 | |
276 | loop_7: | |
277 | rd %y, %g7 | |
278 | wrpr %o6, 0x08DE, %pil | |
279 | fcmpgt16 %f10, %f28, %l0 | |
280 | sll %g3, 0x08, %o7 | |
281 | sdivx %o0, 0x14C7, %i2 | |
282 | set 0x34, %o0 | |
283 | lduha [%l7 + %o0] 0x19, %i6 | |
284 | ||
285 | or %g0, 0x8, %l0 | |
286 | sllx %l0, 0x3c, %l0 | |
287 | wrhpr %l0, 0x988, %hsys_tick_cmpr | |
288 | wr %g0, 0x11, %asi | |
289 | ldsba [%l7 + 0x1E] %asi, %l6 | |
290 | fzeros %f30 | |
291 | sth %g5, [%l7 + 0x30] | |
292 | stbar | |
293 | rdpr %pil, %i1 | |
294 | wrpr %g1, 0x09C7, %pil | |
295 | sra %o1, 0x03, %l4 | |
296 | rdhpr %hsys_tick_cmpr, %i5 | |
297 | saved | |
298 | rdpr %cwp, %g1 | |
299 | rdpr %cansave, %g2 | |
300 | rdpr %canrestore, %g3 | |
301 | rdpr %cleanwin, %g4 | |
302 | rdpr %otherwin, %g5 | |
303 | rdpr %wstate, %g6 | |
304 | fandnot1s %f7, %f24, %f15 | |
305 | fbe,a %fcc3, loop_8 | |
306 | wr %i7, 0x17B6, %y | |
307 | subcc %o4, %g4, %o5 | |
308 | orn %i0, %l1, %i3 | |
309 | loop_8: | |
310 | smulcc %g6, %l2, %l5 | |
311 | rdpr %tba, %g2 | |
312 | rdhpr %hpstate, %o2 | |
313 | wrpr %o3, %g7, %pil | |
314 | wr %o6, %g3, %y | |
315 | fmovrdgz %l0, %f28, %f12 | |
316 | movrlz %o7, 0x3C7, %i2 | |
317 | movvc %icc, %o0, %i6 | |
318 | rdpr %pil, %l3 | |
319 | rd %asi, %i4 | |
320 | mulx %l6, 0x04B0, %g5 | |
321 | wrpr %i1, %o1, %pil | |
322 | fbe %fcc2, loop_9 | |
323 | stx %l4, [%l7 + 0x70] | |
324 | rd %y, %i5 | |
325 | umul %g1, %o4, %g4 | |
326 | loop_9: | |
327 | wrpr %i7, 0x1838, %cwp | |
328 | movg %icc, %o5, %i0 | |
329 | udiv %l1, 0x1239, %i3 | |
330 | edge8ln %l2, %g6, %l5 | |
331 | alignaddrl %g2, %o2, %o3 | |
332 | addccc %g7, %g3, %l0 | |
333 | movrgz %o7, 0x1A9, %o6 | |
334 | fbug,a %fcc2, loop_10 | |
335 | fands %f23, %f24, %f24 | |
336 | ||
337 | or %g0, 0x8, %l0 | |
338 | sllx %l0, 0x3c, %l0 | |
339 | wrhpr %l0, 0xD57, %hsys_tick_cmpr | |
340 | fsrc1s %f12, %f2 | |
341 | loop_10: | |
342 | wrpr %o0, 0x0E8A, %pil | |
343 | edge8ln %l3, %i4, %g5 | |
344 | rdpr %otherwin, %l6 | |
345 | rdpr %tl, %i1 | |
346 | wrpr %l4, %o1, %tick | |
347 | rd %y, %i5 | |
348 | rd %tick_cmpr, %o4 | |
349 | rdhpr %hsys_tick_cmpr, %g4 | |
350 | rd %softint, %i7 | |
351 | rdhpr %hpstate, %g1 | |
352 | and %o5, 0x0896, %i0 | |
353 | rdhpr %hpstate, %l1 | |
354 | tvs %xcc, 0x3 | |
355 | rdhpr %hsys_tick_cmpr, %l2 | |
356 | rdpr %cleanwin, %i3 | |
357 | taddcctv %l5, %g2, %o2 | |
358 | movne %icc, %o3, %g6 | |
359 | movge %icc, %g3, %g7 | |
360 | wrpr %o7, 0x002F, %tick | |
361 | fxors %f11, %f15, %f23 | |
362 | movg %xcc, %o6, %l0 | |
363 | rdpr %otherwin, %i2 | |
364 | fabss %f7, %f10 | |
365 | movvc %xcc, %i6, %l3 | |
366 | wrpr %o0, 0x0B96, %tick | |
367 | fsrc2 %f8, %f14 | |
368 | ||
369 | or %g0, 0x8, %l0 | |
370 | sllx %l0, 0x3c, %l0 | |
371 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
372 | ||
373 | or %g0, 0x8, %l0 | |
374 | sllx %l0, 0x3c, %l0 | |
375 | wr %l0, %g0, %sys_tick_cmpr | |
376 | ||
377 | or %g0, 0x8, %l0 | |
378 | sllx %l0, 0x3c, %l0 | |
379 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
380 | fbule %fcc2, loop_11 | |
381 | tpos %icc, 0x0 | |
382 | fbg,a %fcc1, loop_12 | |
383 | bg,a,pn %xcc, loop_13 | |
384 | loop_11: | |
385 | wrpr %i5, %o4, %tick | |
386 | tge %xcc, 0x6 | |
387 | loop_12: | |
388 | fbge,a %fcc1, loop_14 | |
389 | loop_13: | |
390 | brgz,a %g4, loop_15 | |
391 | rd %tick_cmpr, %i7 | |
392 | ||
393 | or %g0, 0x8, %l0 | |
394 | sllx %l0, 0x3c, %l0 | |
395 | wr %l0, %g0, %tick_cmpr | |
396 | loop_14: | |
397 | movleu %xcc, %o5, %i0 | |
398 | loop_15: | |
399 | fbge,a %fcc1, loop_16 | |
400 | movg %xcc, %l1, %l2 | |
401 | rdpr %cansave, %g1 | |
402 | tge %xcc, 0x4 | |
403 | loop_16: | |
404 | rd %y, %l5 | |
405 | srax %i3, %g2, %o3 | |
406 | wrpr %o2, %g3, %pil | |
407 | rd %fprs, %g6 | |
408 | rdpr %pil, %o7 | |
409 | array8 %o6, %l0, %g7 | |
410 | ||
411 | or %g0, 0x8, %l0 | |
412 | sllx %l0, 0x3c, %l0 | |
413 | wrhpr %l0, 0x017, %hsys_tick_cmpr | |
414 | rdpr %otherwin, %i6 | |
415 | bcc,a,pt %xcc, loop_17 | |
416 | rdhpr %hintp, %l3 | |
417 | wrpr %o0, %g5, %pil | |
418 | wr %i4, %l6, %y | |
419 | loop_17: | |
420 | fbne,a %fcc0, loop_18 | |
421 | wrpr %l4, %i1, %pil | |
422 | wrpr %i5, 0x183C, %pil | |
423 | fbue,a %fcc2, loop_19 | |
424 | loop_18: | |
425 | udivcc %o4, 0x104E, %i7 | |
426 | fmovrdne %o1, %f26, %f20 | |
427 | rdpr %cleanwin, %o5 | |
428 | loop_19: | |
429 | fmovrdlz %g4, %f0, %f2 | |
430 | wrpr %l1, 0x0AE3, %cwp | |
431 | rdhpr %hsys_tick_cmpr, %l2 | |
432 | wrpr %g1, %l5, %cwp | |
433 | fnors %f27, %f27, %f3 | |
434 | wrpr %i3, %g2, %pil | |
435 | sdiv %o3, 0x0EF4, %o2 | |
436 | taddcctv %g3, 0x09D7, %i0 | |
437 | tge %xcc, 0x1 | |
438 | sdivcc %g6, 0x1985, %o7 | |
439 | rdhpr %hsys_tick_cmpr, %l0 | |
440 | rdhpr %hintp, %o6 | |
441 | ||
442 | or %g0, 0x8, %l0 | |
443 | sllx %l0, 0x3c, %l0 | |
444 | wrhpr %l0, 0x05C, %hsys_tick_cmpr | |
445 | rdpr %cwp, %i2 | |
446 | edge16l %l3, %o0, %i6 | |
447 | udivcc %i4, 0x05CB, %g5 | |
448 | rd %softint, %l4 | |
449 | rd %pc, %i1 | |
450 | fmovsvs %icc, %f22, %f15 | |
451 | bneg,a,pt %xcc, loop_20 | |
452 | rdpr %otherwin, %i5 | |
453 | tcs %xcc, 0x3 | |
454 | fbule,a %fcc0, loop_21 | |
455 | loop_20: | |
456 | edge32 %l6, %i7, %o4 | |
457 | movcc %xcc, %o1, %o5 | |
458 | wr %g4, %l1, %pic | |
459 | loop_21: | |
460 | nop | |
461 | setx loop_22, %l0, %l1 | |
462 | wrpr 0x1, %tl | |
463 | wrpr %l1, %tpc | |
464 | add %l1, 0x4, %l1 | |
465 | wrpr %l1, %tnpc | |
466 | setx 0x34400001400, %l0, %l1 | |
467 | wrpr %l1, %tstate | |
468 | wrhpr 0x4, %htstate | |
469 | retry | |
470 | fexpand %f26, %f2 | |
471 | move %icc, %l2, %l5 | |
472 | andn %i3, %g2, %o3 | |
473 | loop_22: | |
474 | nop | |
475 | ||
476 | or %g0, 0x8, %l0 | |
477 | sllx %l0, 0x3c, %l0 | |
478 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
479 | tsubcctv %g3, 0x103D, %i0 | |
480 | andcc %o7, %g6, %l0 | |
481 | ||
482 | or %g0, 0x8, %l0 | |
483 | sllx %l0, 0x3c, %l0 | |
484 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
485 | wr %l3, 0x1D17, %ccr | |
486 | set 0x28, %o2 | |
487 | ldstuba [%l7 + %o2] 0x11, %i2 | |
488 | ||
489 | or %g0, 0x8, %l0 | |
490 | sllx %l0, 0x3c, %l0 | |
491 | wrhpr %l0, 0xC42, %hsys_tick_cmpr | |
492 | nop | |
493 | setx loop_23, %l0, %l1 | |
494 | wrpr 0x1, %tl | |
495 | wrpr %l1, %tpc | |
496 | add %l1, 0x4, %l1 | |
497 | wrpr %l1, %tnpc | |
498 | setx 0x34400001400, %l0, %l1 | |
499 | wrpr %l1, %tstate | |
500 | wrhpr 0x4, %htstate | |
501 | retry | |
502 | movgu %xcc, %o0, %l4 | |
503 | fmovsl %icc, %f30, %f3 | |
504 | wr %i1, %i5, %softint | |
505 | loop_23: | |
506 | popc 0x02AF, %g5 | |
507 | fmovsvc %xcc, %f4, %f13 | |
508 | rdhpr %hsys_tick_cmpr, %i7 | |
509 | wrpr %l6, %o4, %pil | |
510 | wr %o1, 0x1BE1, %pic | |
511 | tvc %icc, 0x5 | |
512 | rdpr %wstate, %g4 | |
513 | ||
514 | or %g0, 0x8, %l0 | |
515 | sllx %l0, 0x3c, %l0 | |
516 | wrhpr %l0, 0x829, %hsys_tick_cmpr | |
517 | wr %l1, %l5, %clear_softint | |
518 | wrpr %g2, %o3, %tick | |
519 | movgu %icc, %g1, %o2 | |
520 | array32 %g3, %i3, %i0 | |
521 | lduh [%l7 + 0x1C], %g6 | |
522 | wr %o7, 0x1D7C, %set_softint | |
523 | wrpr %l0, %o6, %cwp | |
524 | movrne %l3, %g7, %i2 | |
525 | rd %asi, %i4 | |
526 | wrpr %o0, %i6, %pil | |
527 | fmovrdgz %l4, %f28, %f4 | |
528 | add %l7, 0x1C, %l6 | |
529 | wr %g0, 0x04, %asi | |
530 | casa [%l6] %asi, %i1, %i5 | |
531 | ||
532 | or %g0, 0x8, %l0 | |
533 | sllx %l0, 0x3c, %l0 | |
534 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
535 | wr %i7, 0x168B, %pic | |
536 | rdhpr %hsys_tick_cmpr, %l6 | |
537 | rdpr %tl, %o1 | |
538 | movvs %icc, %g4, %o4 | |
539 | wrpr %l2, 0x149F, %cwp | |
540 | fpack16 %f26, %f15 | |
541 | wr %l1, %l5, %clear_softint | |
542 | rdpr %cansave, %o5 | |
543 | rd %tick_cmpr, %o3 | |
544 | or %g2, %g1, %g3 | |
545 | rd %pc, %o2 | |
546 | fand %f16, %f12, %f4 | |
547 | ||
548 | or %g0, 0x8, %l0 | |
549 | sllx %l0, 0x3c, %l0 | |
550 | wrhpr %l0, 0xC88, %hsys_tick_cmpr | |
551 | rdhpr %htba, %o7 | |
552 | rd %tick_cmpr, %l0 | |
553 | add %g6, %l3, %o6 | |
554 | !Yo - got one - imm_asi 0x4f | |
555 | !And yo - immediate is 0x30 | |
556 | wr %g0, 0x4f, %asi | |
557 | ldxa [%g0 + 0x30] %asi, %g7 | |
558 | wrpr %i4, 0x06CD, %tick | |
559 | rdhpr %hintp, %o0 | |
560 | wrpr %i2, 0x1CF5, %cwp | |
561 | rdpr %tba, %i6 | |
562 | ||
563 | or %g0, 0x8, %l0 | |
564 | sllx %l0, 0x3c, %l0 | |
565 | wrhpr %l0, 0xCB8, %hsys_tick_cmpr | |
566 | rdhpr %hsys_tick_cmpr, %g5 | |
567 | sdivcc %i7, 0x1865, %i5 | |
568 | rd %fprs, %l6 | |
569 | rdhpr %hsys_tick_cmpr, %o1 | |
570 | rdhpr %hpstate, %g4 | |
571 | wr %l2, 0x0D22, %softint | |
572 | rd %tick_cmpr, %l1 | |
573 | orncc %o4, 0x1ED9, %o5 | |
574 | addccc %o3, 0x1B22, %g2 | |
575 | ||
576 | or %g0, 0x8, %l0 | |
577 | sllx %l0, 0x3c, %l0 | |
578 | wrhpr %l0, 0x946, %hsys_tick_cmpr | |
579 | wr %l5, %g3, %ccr | |
580 | wrpr %o2, %i3, %cwp | |
581 | fmovrsgz %o7, %f17, %f20 | |
582 | alignaddr %i0, %g6, %l3 | |
583 | movgu %xcc, %o6, %g7 | |
584 | rd %y, %l0 | |
585 | rd %y, %i4 | |
586 | rdpr %canrestore, %o0 | |
587 | wr %i6, 0x185A, %ccr | |
588 | wr %i2, 0x12A4, %y | |
589 | wr %i1, %l4, %sys_tick | |
590 | rdpr %wstate, %g5 | |
591 | wrpr %i7, %l6, %pil | |
592 | add %l7, 0x38, %l6 | |
593 | wr %g0, 0x89, %asi | |
594 | casxa [%l6] 0x89, %i5, %o1 | |
595 | wrpr %g4, 0x150A, %tick | |
596 | rd %softint, %l2 | |
597 | wr %g0, 0x10, %asi | |
598 | stha %l1, [%l7 + 0x32] %asi | |
599 | rdpr %tl, %o5 | |
600 | rdpr %tl, %o4 | |
601 | ||
602 | or %g0, 0x8, %l0 | |
603 | sllx %l0, 0x3c, %l0 | |
604 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
605 | srl %o3, 0x0E, %g1 | |
606 | rdpr %cwp, %l5 | |
607 | ||
608 | or %g0, 0x8, %l0 | |
609 | sllx %l0, 0x3c, %l0 | |
610 | wrhpr %l0, 0x6A2, %hsys_tick_cmpr | |
611 | taddcc %g3, %i3, %i0 | |
612 | ||
613 | or %g0, 0x8, %l0 | |
614 | sllx %l0, 0x3c, %l0 | |
615 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
616 | rdpr %wstate, %l3 | |
617 | array32 %o6, %g7, %l0 | |
618 | rdpr %cwp, %o7 | |
619 | wrpr %o0, %i6, %tick | |
620 | ||
621 | or %g0, 0x8, %l0 | |
622 | sllx %l0, 0x3c, %l0 | |
623 | wrhpr %l0, 0x62B, %hsys_tick_cmpr | |
624 | rd %y, %i4 | |
625 | ||
626 | or %g0, 0x8, %l0 | |
627 | sllx %l0, 0x3c, %l0 | |
628 | wr %l0, %g0, %tick_cmpr | |
629 | ||
630 | or %g0, 0x8, %l0 | |
631 | sllx %l0, 0x3c, %l0 | |
632 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
633 | xnorcc %i7, 0x0E5C, %i5 | |
634 | wr %o1, %g4, %pic | |
635 | rdpr %gl, %l2 | |
636 | rdhpr %hsys_tick_cmpr, %l1 | |
637 | movge %xcc, %o5, %l6 | |
638 | tn %icc, 0x0 | |
639 | fmovdneg %icc, %f15, %f6 | |
640 | wr %g2, %o3, %sys_tick | |
641 | ||
642 | or %g0, 0x8, %l0 | |
643 | sllx %l0, 0x3c, %l0 | |
644 | wr %l0, 0x837, %sys_tick_cmpr | |
645 | rd %softint, %o2 | |
646 | movgu %xcc, %g3, %i3 | |
647 | wr %g0, 0xe, %pcr ! changed. | |
648 | fmovde %icc, %f2, %f15 | |
649 | nop | |
650 | setx loop_24, %l0, %l1 | |
651 | wrpr 0x1, %tl | |
652 | wrpr %l1, %tnpc | |
653 | setx 0x34400001400, %l0, %l1 | |
654 | wrpr %l1, %tstate | |
655 | wrhpr 0x4, %htstate | |
656 | done | |
657 | wrpr %i0, 0x0FDC, %pil | |
658 | rdhpr %hintp, %l3 | |
659 | ||
660 | or %g0, 0x8, %l0 | |
661 | sllx %l0, 0x3c, %l0 | |
662 | wrhpr %l0, 0x460, %hsys_tick_cmpr | |
663 | loop_24: | |
664 | rdhpr %hsys_tick_cmpr, %o6 | |
665 | move %xcc, %o7, %o0 | |
666 | rd %y, %l0 | |
667 | rd %asi, %i6 | |
668 | sth %i2, [%l7 + 0x0C] | |
669 | fors %f14, %f26, %f25 | |
670 | ||
671 | or %g0, 0x8, %l0 | |
672 | sllx %l0, 0x3c, %l0 | |
673 | wr %l0, %g0, %sys_tick_cmpr | |
674 | fxnors %f0, %f4, %f16 | |
675 | set 0x74, %o4 | |
676 | stwa %l4, [%l7 + %o4] 0x19 | |
677 | rdhpr %hsys_tick_cmpr, %i7 | |
678 | addccc %i5, %o1, %i1 | |
679 | ||
680 | or %g0, 0x8, %l0 | |
681 | sllx %l0, 0x3c, %l0 | |
682 | wrhpr %l0, 0x1CB, %hsys_tick_cmpr | |
683 | rdpr %canrestore, %g4 | |
684 | umul %o5, %l1, %g2 | |
685 | rd %tick_cmpr, %l6 | |
686 | tsubcctv %o4, %l5, %o3 | |
687 | ||
688 | or %g0, 0x8, %l0 | |
689 | sllx %l0, 0x3c, %l0 | |
690 | wr %l0, %g0, %sys_tick_cmpr | |
691 | wrpr %g3, 0x038D, %cwp | |
692 | rdpr %cwp, %i3 | |
693 | sra %i0, %l3, %g1 | |
694 | ||
695 | or %g0, 0x8, %l0 | |
696 | sllx %l0, 0x3c, %l0 | |
697 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
698 | wr %o6, 0x1D06, %set_softint | |
699 | rdhpr %hpstate, %g6 | |
700 | fmovrdlez %o0, %f24, %f6 | |
701 | rdhpr %hintp, %l0 | |
702 | wr %o7, 0x014D, %ccr | |
703 | rdpr %pil, %i2 | |
704 | tgu %icc, 0x0 | |
705 | edge16l %i4, %g5, %l4 | |
706 | ||
707 | or %g0, 0x8, %l0 | |
708 | sllx %l0, 0x3c, %l0 | |
709 | wrhpr %l0, 0x322, %hsys_tick_cmpr | |
710 | rd %pc, %i5 | |
711 | add %l7, 0x68, %l6 | |
712 | wr %g0, 0x04, %asi | |
713 | casxa [%l6] 0x04, %i7, %o1 | |
714 | andcc %i1, 0x1403, %g4 | |
715 | rdhpr %hintp, %l2 | |
716 | tn %xcc, 0x7 | |
717 | rdhpr %hsys_tick_cmpr, %o5 | |
718 | te %icc, 0x5 | |
719 | rd %softint, %g2 | |
720 | rd %sys_tick_cmpr, %l6 | |
721 | fmovscs %icc, %f20, %f12 | |
722 | wrpr %o4, 0x1A39, %tick | |
723 | rdhpr %hintp, %l5 | |
724 | rdpr %cleanwin, %l1 | |
725 | wr %g0, 0x4, %fprs | |
726 | rdpr %cwp, %i3 | |
727 | wr %o3, 0x1C5B, %clear_softint | |
728 | or %l3, 0x1E34, %g1 | |
729 | ||
730 | or %g0, 0x8, %l0 | |
731 | sllx %l0, 0x3c, %l0 | |
732 | wrhpr %l0, 0xA49, %hsys_tick_cmpr | |
733 | rd %pc, %o6 | |
734 | edge32n %g6, %i0, %l0 | |
735 | sllx %o0, 0x16, %i2 | |
736 | tne %icc, 0x5 | |
737 | ||
738 | or %g0, 0x8, %l0 | |
739 | sllx %l0, 0x3c, %l0 | |
740 | wrhpr %l0, 0x966, %hsys_tick_cmpr | |
741 | wr %o7, 0x043B, %sys_tick | |
742 | be,pt %icc, loop_25 | |
743 | bge,pn %xcc, loop_26 | |
744 | brgz,a %l4, loop_27 | |
745 | rdpr %tl, %g5 | |
746 | loop_25: | |
747 | rdpr %cwp, %i5 | |
748 | loop_26: | |
749 | fcmple32 %f6, %f4, %i7 | |
750 | loop_27: | |
751 | bgu loop_28 | |
752 | wrpr %i6, 0x0138, %cwp | |
753 | orn %i1, 0x00BC, %o1 | |
754 | mulx %g4, 0x0AB0, %l2 | |
755 | loop_28: | |
756 | sir 0x011C | |
757 | rdpr %tba, %g2 | |
758 | ldd [%l7 + 0x50], %f0 | |
759 | rdhpr %htba, %o5 | |
760 | brz,a %l6, loop_29 | |
761 | sethi 0x19E2, %o4 | |
762 | bg,a %xcc, loop_30 | |
763 | fmovrslez %l1, %f29, %f4 | |
764 | loop_29: | |
765 | wrpr %l5, 0x0610, %pil | |
766 | wr %o2, 0x0725, %sys_tick | |
767 | loop_30: | |
768 | nop | |
769 | setx loop_31, %l0, %l1 | |
770 | wrpr 0x1, %tl | |
771 | wrpr %l1, %tpc | |
772 | add %l1, 0x4, %l1 | |
773 | wrpr %l1, %tnpc | |
774 | setx 0x34400001400, %l0, %l1 | |
775 | wrpr %l1, %tstate | |
776 | wrhpr 0x4, %htstate | |
777 | retry | |
778 | movrgez %i3, %g3, %l3 | |
779 | fxnor %f16, %f0, %f10 | |
780 | rd %y, %o3 | |
781 | loop_31: | |
782 | rd %softint, %g1 | |
783 | fxor %f26, %f24, %f24 | |
784 | movcs %icc, %g7, %g6 | |
785 | movvc %xcc, %o6, %l0 | |
786 | fornot1s %f25, %f29, %f6 | |
787 | rd %ccr, %o0 | |
788 | rdpr %tl, %i0 | |
789 | udiv %i2, 0x021B, %o7 | |
790 | rdpr %canrestore, %i4 | |
791 | rdpr %tl, %g5 | |
792 | add %i5, 0x1F55, %l4 | |
793 | addccc %i7, 0x15F8, %i6 | |
794 | wr %o1, 0x193D, %pic | |
795 | rdhpr %hpstate, %g4 | |
796 | ||
797 | or %g0, 0x8, %l0 | |
798 | sllx %l0, 0x3c, %l0 | |
799 | wr %l0, %g0, %sys_tick_cmpr | |
800 | rd %ccr, %g2 | |
801 | rdpr %cleanwin, %o5 | |
802 | addcc %l6, 0x1096, %o4 | |
803 | ||
804 | or %g0, 0x8, %l0 | |
805 | sllx %l0, 0x3c, %l0 | |
806 | wrhpr %l0, 0xEB3, %hsys_tick_cmpr | |
807 | rd %y, %o2 | |
808 | rdhpr %hpstate, %l5 | |
809 | rdpr %otherwin, %i3 | |
810 | rd %asi, %l3 | |
811 | rd %pc, %o3 | |
812 | edge32l %g1, %g7, %g3 | |
813 | wrpr %o6, 0x1169, %tick | |
814 | edge16 %g6, %l0, %o0 | |
815 | sdiv %i0, 0x0706, %o7 | |
816 | andncc %i2, %g5, %i5 | |
817 | ||
818 | or %g0, 0x8, %l0 | |
819 | sllx %l0, 0x3c, %l0 | |
820 | wr %l0, 0x581, %sys_tick_cmpr | |
821 | array32 %i4, %i7, %o1 | |
822 | sethi 0x0AC7, %g4 | |
823 | fpack16 %f24, %f25 | |
824 | rd %asi, %i1 | |
825 | rd %softint, %i6 | |
826 | fnegs %f25, %f7 | |
827 | ||
828 | or %g0, 0x8, %l0 | |
829 | sllx %l0, 0x3c, %l0 | |
830 | wrhpr %l0, 0x475, %hsys_tick_cmpr | |
831 | ||
832 | or %g0, 0x8, %l0 | |
833 | sllx %l0, 0x3c, %l0 | |
834 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
835 | wrpr %l1, %o5, %pil | |
836 | taddcc %o2, %l5, %i3 | |
837 | wrpr %l3, 0x1BC1, %pil | |
838 | taddcc %l2, 0x1723, %g1 | |
839 | sll %o3, %g7, %o6 | |
840 | rdpr %cwp, %g3 | |
841 | rd %fprs, %g6 | |
842 | rd %asi, %o0 | |
843 | membar 0x76 | |
844 | ||
845 | or %g0, 0x8, %l0 | |
846 | sllx %l0, 0x3c, %l0 | |
847 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
848 | tn %icc, 0x7 | |
849 | stb %o7, [%l7 + 0x48] | |
850 | ||
851 | or %g0, 0x8, %l0 | |
852 | sllx %l0, 0x3c, %l0 | |
853 | wr %l0, 0xD33, %tick_cmpr | |
854 | fcmpne32 %f30, %f30, %l0 | |
855 | alignaddrl %g5, %l4, %i5 | |
856 | std %i6, [%l7 + 0x38] | |
857 | rdhpr %hsys_tick_cmpr, %o1 | |
858 | movpos %icc, %i4, %i1 | |
859 | ldsw [%l7 + 0x18], %g4 | |
860 | call loop_32 | |
861 | rd %y, %i6 | |
862 | rdpr %cleanwin, %l6 | |
863 | movgu %xcc, %g2, %l1 | |
864 | loop_32: | |
865 | edge8ln %o4, %o5, %l5 | |
866 | wr %i3, %l3, %clear_softint | |
867 | movrlez %l2, 0x1D2, %o2 | |
868 | rd %asi, %g1 | |
869 | fbn,a %fcc3, loop_33 | |
870 | rd %ccr, %o3 | |
871 | ||
872 | or %g0, 0x8, %l0 | |
873 | sllx %l0, 0x3c, %l0 | |
874 | wrhpr %l0, 0x1E2, %hsys_tick_cmpr | |
875 | umulcc %g6, 0x15C3, %o0 | |
876 | loop_33: | |
877 | fbue %fcc3, loop_34 | |
878 | std %i0, [%l7 + 0x10] | |
879 | nop | |
880 | setx loop_35, %l0, %l1 | |
881 | jmpl %l1, %o7 | |
882 | wrpr %i2, 0x0252, %pil | |
883 | loop_34: | |
884 | ldsh [%l7 + 0x46], %g3 | |
885 | rd %ccr, %l0 | |
886 | loop_35: | |
887 | nop | |
888 | ||
889 | or %g0, 0x8, %l0 | |
890 | sllx %l0, 0x3c, %l0 | |
891 | wr %l0, 0xCEA, %sys_tick_cmpr | |
892 | rdpr %wstate, %i7 | |
893 | rdpr %cleanwin, %o1 | |
894 | tsubcc %i5, %i1, %i4 | |
895 | tsubcctv %i6, 0x104E, %l6 | |
896 | wr %g2, 0x16A6, %clear_softint | |
897 | ||
898 | or %g0, 0x8, %l0 | |
899 | sllx %l0, 0x3c, %l0 | |
900 | wrhpr %l0, 0x486, %hsys_tick_cmpr | |
901 | wrpr %g4, 0x0067, %pil | |
902 | rdpr %canrestore, %o4 | |
903 | tvs %icc, 0x5 | |
904 | rdpr %wstate, %l5 | |
905 | bcs,a,pn %icc, loop_36 | |
906 | rd %y, %i3 | |
907 | wr %o5, 0x007C, %clear_softint | |
908 | wr %l2, %l3, %y | |
909 | loop_36: | |
910 | st %f25, [%l7 + 0x14] | |
911 | wrpr %g1, %o2, %pil | |
912 | rdhpr %hpstate, %o3 | |
913 | xorcc %o6, 0x0075, %g7 | |
914 | ||
915 | or %g0, 0x8, %l0 | |
916 | sllx %l0, 0x3c, %l0 | |
917 | wr %l0, %g0, %sys_tick_cmpr | |
918 | rdhpr %hpstate, %i0 | |
919 | popc 0x1280, %o7 | |
920 | mulscc %o0, 0x100F, %i2 | |
921 | wrpr %g3, %l0, %tick | |
922 | rd %tick_cmpr, %l4 | |
923 | edge8ln %i7, %g5, %i5 | |
924 | ||
925 | or %g0, 0x8, %l0 | |
926 | sllx %l0, 0x3c, %l0 | |
927 | wr %l0, 0xAE6, %sys_tick_cmpr | |
928 | fpadd32s %f10, %f29, %f28 | |
929 | rdhpr %hsys_tick_cmpr, %i6 | |
930 | ||
931 | or %g0, 0x8, %l0 | |
932 | sllx %l0, 0x3c, %l0 | |
933 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
934 | wr %g0, 0x89, %asi | |
935 | lduba [%l7 + 0x47] %asi, %l6 | |
936 | edge32n %g2, %g4, %l1 | |
937 | array8 %l5, %i3, %o5 | |
938 | wr %o4, %l3, %sys_tick | |
939 | rdpr %wstate, %l2 | |
940 | ||
941 | or %g0, 0x8, %l0 | |
942 | sllx %l0, 0x3c, %l0 | |
943 | wrhpr %l0, 0xFC7, %hsys_tick_cmpr | |
944 | rdhpr %htba, %o6 | |
945 | umulcc %o3, 0x0E40, %g7 | |
946 | wrpr %g6, 0x1D01, %cwp | |
947 | fbule,a %fcc0, loop_37 | |
948 | nop | |
949 | setx loop_38, %l0, %l1 | |
950 | wrpr 0x1, %tl | |
951 | wrpr %l1, %tnpc | |
952 | setx 0x34400001400, %l0, %l1 | |
953 | wrpr %l1, %tstate | |
954 | wrhpr 0x4, %htstate | |
955 | done | |
956 | wr %o7, %i0, %ccr | |
957 | ||
958 | or %g0, 0x8, %l0 | |
959 | sllx %l0, 0x3c, %l0 | |
960 | wrhpr %l0, 0xA0D, %hsys_tick_cmpr | |
961 | loop_37: | |
962 | wrpr %l0, %i2, %tick | |
963 | loop_38: | |
964 | rdhpr %hsys_tick_cmpr, %l4 | |
965 | ||
966 | or %g0, 0x8, %l0 | |
967 | sllx %l0, 0x3c, %l0 | |
968 | wrhpr %l0, 0xB92, %hsys_tick_cmpr | |
969 | wrpr %i5, %i4, %cwp | |
970 | fnot1 %f16, %f26 | |
971 | ||
972 | or %g0, 0x8, %l0 | |
973 | sllx %l0, 0x3c, %l0 | |
974 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
975 | subc %i6, %l6, %g2 | |
976 | umulcc %g4, %l1, %i1 | |
977 | wr %i3, 0x12E5, %set_softint | |
978 | movge %icc, %o5, %o4 | |
979 | rdpr %gl, %l3 | |
980 | rdhpr %hpstate, %l5 | |
981 | wrpr %o2, 0x095B, %cwp | |
982 | rdpr %cwp, %l2 | |
983 | rdhpr %hpstate, %g1 | |
984 | wr %g0, 0xe, %pcr ! changed. | |
985 | movrlz %o6, %g7, %g6 | |
986 | wrpr %i0, %o0, %pil | |
987 | rdpr %cansave, %o7 | |
988 | orn %g3, 0x0C9B, %l0 | |
989 | sllx %i2, 0x07, %l4 | |
990 | fcmpd %fcc2, %f24, %f24 | |
991 | ||
992 | or %g0, 0x8, %l0 | |
993 | sllx %l0, 0x3c, %l0 | |
994 | wrhpr %l0, 0xDEA, %hsys_tick_cmpr | |
995 | tl %icc, 0x4 | |
996 | flush %l7 + 0x2C | |
997 | movpos %xcc, %i5, %g5 | |
998 | rdhpr %hsys_tick_cmpr, %o1 | |
999 | wrpr %i4, 0x0011, %tick | |
1000 | ||
1001 | or %g0, 0x8, %l0 | |
1002 | sllx %l0, 0x3c, %l0 | |
1003 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1004 | wrpr %i6, 0x04CA, %pil | |
1005 | wr %g0, 0x4, %fprs | |
1006 | wrpr %i3, 0x1354, %pil | |
1007 | sll %o5, %i1, %l3 | |
1008 | rdpr %tba, %o4 | |
1009 | fbo,a %fcc1, loop_39 | |
1010 | wr %o2, 0x05A6, %y | |
1011 | ||
1012 | or %g0, 0x8, %l0 | |
1013 | sllx %l0, 0x3c, %l0 | |
1014 | wrhpr %l0, 0x00A, %hsys_tick_cmpr | |
1015 | ||
1016 | or %g0, 0x8, %l0 | |
1017 | sllx %l0, 0x3c, %l0 | |
1018 | wrhpr %l0, 0x213, %hsys_tick_cmpr | |
1019 | loop_39: | |
1020 | movpos %icc, %o6, %g7 | |
1021 | fpadd32 %f20, %f14, %f4 | |
1022 | tgu %icc, 0x5 | |
1023 | tvs %xcc, 0x2 | |
1024 | tg %icc, 0x3 | |
1025 | wr %g0, 0x80, %asi | |
1026 | lda [%l7 + 0x60] %asi, %f31 | |
1027 | rdpr %tba, %g6 | |
1028 | rd %pc, %l5 | |
1029 | taddcctv %i0, %o7, %g3 | |
1030 | tle %xcc, 0x7 | |
1031 | ||
1032 | or %g0, 0x8, %l0 | |
1033 | sllx %l0, 0x3c, %l0 | |
1034 | wrhpr %l0, 0xFE5, %hsys_tick_cmpr | |
1035 | rdhpr %hpstate, %l4 | |
1036 | wr %i7, 0x1698, %y | |
1037 | rdhpr %hpstate, %l0 | |
1038 | ||
1039 | or %g0, 0x8, %l0 | |
1040 | sllx %l0, 0x3c, %l0 | |
1041 | wr %l0, %g0, %tick_cmpr | |
1042 | wrpr %i4, %o1, %cwp | |
1043 | wr %l6, 0x1FCE, %sys_tick | |
1044 | rd %ccr, %i6 | |
1045 | rd %softint, %l1 | |
1046 | rdpr %wstate, %g2 | |
1047 | rdhpr %hpstate, %i3 | |
1048 | ||
1049 | or %g0, 0x8, %l0 | |
1050 | sllx %l0, 0x3c, %l0 | |
1051 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1052 | rdhpr %hsys_tick_cmpr, %i1 | |
1053 | rd %ccr, %l3 | |
1054 | rdpr %tba, %o2 | |
1055 | rdhpr %hsys_tick_cmpr, %o4 | |
1056 | wr %g1, %l2, %ccr | |
1057 | rd %asi, %o6 | |
1058 | rdhpr %hpstate, %o3 | |
1059 | rdpr %wstate, %g6 | |
1060 | wr %g0, 0x0c, %asi | |
1061 | lduha [%l7 + 0x44] %asi, %l5 | |
1062 | te %icc, 0x2 | |
1063 | orncc %g7, 0x1D05, %o7 | |
1064 | rd %tick_cmpr, %g3 | |
1065 | popc %i0, %i2 | |
1066 | movvs %icc, %l4, %i7 | |
1067 | rd %ccr, %o0 | |
1068 | movvc %xcc, %l0, %i5 | |
1069 | ||
1070 | or %g0, 0x8, %l0 | |
1071 | sllx %l0, 0x3c, %l0 | |
1072 | wrhpr %l0, 0x521, %hsys_tick_cmpr | |
1073 | movg %xcc, %l6, %i6 | |
1074 | rdhpr %htba, %g5 | |
1075 | fmovdg %icc, %f17, %f1 | |
1076 | fmul8x16au %f18, %f17, %f30 | |
1077 | restored | |
1078 | rdpr %cwp, %g1 | |
1079 | rdpr %cansave, %g2 | |
1080 | rdpr %canrestore, %g3 | |
1081 | rdpr %cleanwin, %g4 | |
1082 | rdpr %otherwin, %g5 | |
1083 | rdpr %wstate, %g6 | |
1084 | wrpr %l1, %i3, %cwp | |
1085 | ||
1086 | or %g0, 0x8, %l0 | |
1087 | sllx %l0, 0x3c, %l0 | |
1088 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1089 | movcs %icc, %i1, %g4 | |
1090 | subccc %o2, 0x1A13, %o4 | |
1091 | rdpr %canrestore, %l3 | |
1092 | ||
1093 | or %g0, 0x8, %l0 | |
1094 | sllx %l0, 0x3c, %l0 | |
1095 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1096 | rdhpr %hpstate, %o3 | |
1097 | rdpr %cleanwin, %g6 | |
1098 | taddcctv %l2, 0x0587, %l5 | |
1099 | rdpr %cwp, %o7 | |
1100 | rd %softint, %g3 | |
1101 | ||
1102 | or %g0, 0x8, %l0 | |
1103 | sllx %l0, 0x3c, %l0 | |
1104 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1105 | orncc %l4, %i2, %o0 | |
1106 | rdhpr %hintp, %l0 | |
1107 | sllx %i5, %i7, %i4 | |
1108 | wrpr %o1, %i6, %pil | |
1109 | wrpr %g5, %l1, %pil | |
1110 | ||
1111 | or %g0, 0x8, %l0 | |
1112 | sllx %l0, 0x3c, %l0 | |
1113 | wrhpr %l0, 0xD05, %hsys_tick_cmpr | |
1114 | rd %tick_cmpr, %o5 | |
1115 | orncc %i1, %l6, %g4 | |
1116 | wr %o2, 0x15E9, %sys_tick | |
1117 | rdpr %cwp, %o4 | |
1118 | ||
1119 | or %g0, 0x8, %l0 | |
1120 | sllx %l0, 0x3c, %l0 | |
1121 | wrhpr %l0, 0x9D6, %hsys_tick_cmpr | |
1122 | wrpr %o3, %g6, %tick | |
1123 | rdpr %cleanwin, %g1 | |
1124 | rd %softint, %l2 | |
1125 | rdpr %cwp, %l5 | |
1126 | movpos %xcc, %g3, %g7 | |
1127 | rdpr %cwp, %i0 | |
1128 | ||
1129 | or %g0, 0x8, %l0 | |
1130 | sllx %l0, 0x3c, %l0 | |
1131 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1132 | wr %g0, 0x7, %fprs | |
1133 | movcs %icc, %l0, %o0 | |
1134 | ble,a loop_40 | |
1135 | rd %ccr, %i5 | |
1136 | ||
1137 | or %g0, 0x8, %l0 | |
1138 | sllx %l0, 0x3c, %l0 | |
1139 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1140 | ||
1141 | or %g0, 0x8, %l0 | |
1142 | sllx %l0, 0x3c, %l0 | |
1143 | wrhpr %l0, 0x149, %hsys_tick_cmpr | |
1144 | loop_40: | |
1145 | rd %pc, %g5 | |
1146 | rdpr %pil, %i6 | |
1147 | rdhpr %hsys_tick_cmpr, %l1 | |
1148 | fpackfix %f16, %f30 | |
1149 | rd %ccr, %g2 | |
1150 | wr %i3, %o5, %set_softint | |
1151 | rdpr %cwp, %i1 | |
1152 | movrne %l6, 0x3B8, %o2 | |
1153 | wrpr %g4, %o4, %tick | |
1154 | bgu loop_41 | |
1155 | rdhpr %hpstate, %o6 | |
1156 | brz %l3, loop_42 | |
1157 | fbue,a %fcc1, loop_43 | |
1158 | loop_41: | |
1159 | wrpr %g6, %g1, %cwp | |
1160 | movg %xcc, %l2, %o3 | |
1161 | loop_42: | |
1162 | movrne %l5, %g3, %g7 | |
1163 | loop_43: | |
1164 | smul %i0, %i2, %o7 | |
1165 | wrpr %l0, 0x122C, %pil | |
1166 | ||
1167 | or %g0, 0x8, %l0 | |
1168 | sllx %l0, 0x3c, %l0 | |
1169 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1170 | fandnot2s %f25, %f27, %f29 | |
1171 | movrne %i4, %o0, %o1 | |
1172 | std %i6, [%l7 + 0x10] | |
1173 | edge8 %i6, %l1, %g2 | |
1174 | andncc %i3, %g5, %i1 | |
1175 | rdpr %gl, %o5 | |
1176 | xor %o2, %g4, %l6 | |
1177 | rdhpr %hpstate, %o4 | |
1178 | alignaddr %o6, %g6, %l3 | |
1179 | movneg %xcc, %g1, %o3 | |
1180 | tg %icc, 0x0 | |
1181 | mova %xcc, %l5, %g3 | |
1182 | ||
1183 | or %g0, 0x8, %l0 | |
1184 | sllx %l0, 0x3c, %l0 | |
1185 | wrhpr %l0, 0x0D0, %hsys_tick_cmpr | |
1186 | fmul8x16 %f16, %f26, %f10 | |
1187 | movvc %icc, %i2, %i0 | |
1188 | rdhpr %htba, %l0 | |
1189 | ||
1190 | or %g0, 0x8, %l0 | |
1191 | sllx %l0, 0x3c, %l0 | |
1192 | wrhpr %l0, 0x017, %hsys_tick_cmpr | |
1193 | membar 0x0E | |
1194 | rdhpr %hsys_tick_cmpr, %i4 | |
1195 | movle %icc, %o0, %o1 | |
1196 | wrpr %i5, 0x1596, %tick | |
1197 | rdpr %cleanwin, %i6 | |
1198 | rdpr %cwp, %l1 | |
1199 | set 0x1C, %l6 | |
1200 | ldsha [%l7 + %l6] 0x88, %i7 | |
1201 | rdpr %cansave, %i3 | |
1202 | sethi 0x1414, %g2 | |
1203 | rdhpr %hpstate, %g5 | |
1204 | umulcc %i1, %o2, %o5 | |
1205 | fmovdneg %icc, %f5, %f2 | |
1206 | ||
1207 | or %g0, 0x8, %l0 | |
1208 | sllx %l0, 0x3c, %l0 | |
1209 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1210 | fpadd16s %f5, %f24, %f6 | |
1211 | rd %sys_tick_cmpr, %o4 | |
1212 | wr %o6, 0x1E01, %ccr | |
1213 | edge16ln %g4, %g6, %l3 | |
1214 | rdhpr %hpstate, %g1 | |
1215 | mulx %o3, %g3, %l5 | |
1216 | rdpr %cleanwin, %g7 | |
1217 | ||
1218 | or %g0, 0x8, %l0 | |
1219 | sllx %l0, 0x3c, %l0 | |
1220 | wrhpr %l0, 0xC9A, %hsys_tick_cmpr | |
1221 | wrpr %l2, %i0, %cwp | |
1222 | xorcc %l0, 0x1202, %l4 | |
1223 | lduw [%l7 + 0x30], %o7 | |
1224 | st %f7, [%l7 + 0x44] | |
1225 | smulcc %o0, %i4, %i5 | |
1226 | rd %ccr, %i6 | |
1227 | bpos,pt %icc, loop_44 | |
1228 | wr %o1, %i7, %clear_softint | |
1229 | wrpr %i3, %l1, %cwp | |
1230 | ||
1231 | or %g0, 0x8, %l0 | |
1232 | sllx %l0, 0x3c, %l0 | |
1233 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1234 | loop_44: | |
1235 | fmovrdgz %g2, %f14, %f30 | |
1236 | wrpr %i1, 0x1FB7, %pil | |
1237 | wr %o2, %o5, %set_softint | |
1238 | rdhpr %htba, %o4 | |
1239 | rdpr %canrestore, %o6 | |
1240 | wr %g0, 0xe, %pcr ! changed. | |
1241 | stb %g6, [%l7 + 0x5F] | |
1242 | tvc %icc, 0x6 | |
1243 | wrpr %g4, %g1, %pil | |
1244 | ||
1245 | or %g0, 0x8, %l0 | |
1246 | sllx %l0, 0x3c, %l0 | |
1247 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1248 | rdpr %tba, %o3 | |
1249 | rd %asi, %g7 | |
1250 | wrpr %i2, 0x0353, %tick | |
1251 | wr %g0, 0x2a, %asi | |
1252 | ldda [%l7 + 0x60] %asi, %l4 | |
1253 | rdpr %canrestore, %i0 | |
1254 | wr %g0, 0xe, %pcr ! changed. | |
1255 | alignaddrl %l4, %l0, %o7 | |
1256 | fmovrsgz %o0, %f20, %f6 | |
1257 | fnegs %f18, %f27 | |
1258 | rd %asi, %i5 | |
1259 | rdpr %cansave, %i6 | |
1260 | rdpr %canrestore, %o1 | |
1261 | rd %ccr, %i7 | |
1262 | edge8l %i4, %l1, %i3 | |
1263 | wr %g0, 0x4, %fprs | |
1264 | ||
1265 | or %g0, 0x8, %l0 | |
1266 | sllx %l0, 0x3c, %l0 | |
1267 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1268 | wrpr %o5, 0x0230, %tick | |
1269 | tneg %xcc, 0x0 | |
1270 | rdpr %tba, %o4 | |
1271 | wrpr %o6, %l6, %pil | |
1272 | movl %xcc, %g6, %i1 | |
1273 | flush %l7 + 0x70 | |
1274 | movrlez %g4, 0x31D, %l3 | |
1275 | rdpr %pil, %g1 | |
1276 | umul %o3, 0x0B7A, %g7 | |
1277 | rdhpr %hpstate, %g3 | |
1278 | ||
1279 | or %g0, 0x8, %l0 | |
1280 | sllx %l0, 0x3c, %l0 | |
1281 | wrhpr %l0, 0x651, %hsys_tick_cmpr | |
1282 | add %l7, 0x48, %l6 | |
1283 | wr %g0, 0x10, %asi | |
1284 | casa [%l6] %asi, %l2, %i2 | |
1285 | fmovdne %icc, %f31, %f5 | |
1286 | movrlez %l4, 0x056, %o7 | |
1287 | wr %g0, 0x5, %fprs | |
1288 | tvs %icc, 0x1 | |
1289 | rdpr %cwp, %i6 | |
1290 | ||
1291 | or %g0, 0x8, %l0 | |
1292 | sllx %l0, 0x3c, %l0 | |
1293 | wrhpr %l0, 0x0E3, %hsys_tick_cmpr | |
1294 | andn %i5, 0x0D86, %i7 | |
1295 | fcmple16 %f22, %f24, %l1 | |
1296 | fxnors %f8, %f8, %f24 | |
1297 | rdpr %otherwin, %i3 | |
1298 | udivx %g2, 0x1691, %i4 | |
1299 | wrpr %o2, %g5, %tick | |
1300 | ||
1301 | or %g0, 0x8, %l0 | |
1302 | sllx %l0, 0x3c, %l0 | |
1303 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1304 | sllx %l6, %o6, %i1 | |
1305 | ldx [%l7 + 0x08], %g4 | |
1306 | wr %g6, %l3, %set_softint | |
1307 | flush %l7 + 0x7C | |
1308 | fmovdpos %xcc, %f20, %f21 | |
1309 | fornot2 %f14, %f12, %f18 | |
1310 | restored | |
1311 | rdpr %cwp, %g1 | |
1312 | rdpr %cansave, %g2 | |
1313 | rdpr %canrestore, %g3 | |
1314 | rdpr %cleanwin, %g4 | |
1315 | rdpr %otherwin, %g5 | |
1316 | rdpr %wstate, %g6 | |
1317 | rd %asi, %g1 | |
1318 | st %f25, [%l7 + 0x0C] | |
1319 | rdpr %canrestore, %o3 | |
1320 | bne,a,pt %xcc, loop_45 | |
1321 | xnor %g7, 0x1E00, %g3 | |
1322 | wr %g0, 0x16, %asi | |
1323 | stda %f0, [%l7 + 0x40] %asi | |
1324 | membar #Sync | |
1325 | loop_45: | |
1326 | rd %asi, %i0 | |
1327 | rd %sys_tick_cmpr, %l5 | |
1328 | rdpr %cleanwin, %i2 | |
1329 | membar #Sync | |
1330 | wr %g0, 0xf9, %asi | |
1331 | ldda [%l7 + 0x40] %asi, %f16 | |
1332 | rdpr %pil, %l2 | |
1333 | ||
1334 | or %g0, 0x8, %l0 | |
1335 | sllx %l0, 0x3c, %l0 | |
1336 | wrhpr %l0, 0x5D0, %hsys_tick_cmpr | |
1337 | udivcc %o7, 0x1D52, %i6 | |
1338 | wr %g0, 0x88, %asi | |
1339 | prefetcha [%l7 + 0x50] %asi, 0x0 | |
1340 | rd %pc, %i5 | |
1341 | mova %icc, %i7, %l1 | |
1342 | rd %asi, %o0 | |
1343 | rdhpr %hintp, %g2 | |
1344 | xor %i3, %i4, %g5 | |
1345 | ||
1346 | or %g0, 0x8, %l0 | |
1347 | sllx %l0, 0x3c, %l0 | |
1348 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1349 | taddcc %o4, 0x1425, %o5 | |
1350 | rd %sys_tick_cmpr, %l6 | |
1351 | rdpr %canrestore, %o6 | |
1352 | ||
1353 | or %g0, 0x8, %l0 | |
1354 | sllx %l0, 0x3c, %l0 | |
1355 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1356 | wr %g0, 0x6, %fprs | |
1357 | wr %g6, 0x0E39, %y | |
1358 | rd %sys_tick_cmpr, %l3 | |
1359 | wr %o3, 0x02CA, %clear_softint | |
1360 | ||
1361 | or %g0, 0x8, %l0 | |
1362 | sllx %l0, 0x3c, %l0 | |
1363 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1364 | ||
1365 | or %g0, 0x8, %l0 | |
1366 | sllx %l0, 0x3c, %l0 | |
1367 | wrhpr %l0, 0x461, %hsys_tick_cmpr | |
1368 | srax %l5, 0x07, %i2 | |
1369 | bl,a %xcc, loop_46 | |
1370 | fblg,a %fcc2, loop_47 | |
1371 | wr %g1, 0x0894, %clear_softint | |
1372 | rdpr %cansave, %l2 | |
1373 | loop_46: | |
1374 | edge16l %l0, %o7, %i6 | |
1375 | loop_47: | |
1376 | fmovsneg %icc, %f18, %f29 | |
1377 | wrpr %o1, 0x1DB0, %tick | |
1378 | wrpr %i5, 0x0AB9, %tick | |
1379 | rd %asi, %l4 | |
1380 | fmovdcs %icc, %f25, %f31 | |
1381 | smulcc %i7, 0x1718, %l1 | |
1382 | rdhpr %hsys_tick_cmpr, %g2 | |
1383 | rdhpr %hsys_tick_cmpr, %i3 | |
1384 | alignaddrl %i4, %g5, %o2 | |
1385 | rdhpr %hintp, %o0 | |
1386 | wr %o4, %o5, %pic | |
1387 | rdhpr %hintp, %o6 | |
1388 | wrpr %i1, %g4, %pil | |
1389 | movrlz %l6, %g6, %o3 | |
1390 | wrpr %g7, %g3, %cwp | |
1391 | wr %i0, %l5, %softint | |
1392 | stbar | |
1393 | rdhpr %hintp, %i2 | |
1394 | umul %g1, 0x18F1, %l2 | |
1395 | wrpr %l0, %l3, %tick | |
1396 | fbge %fcc2, loop_48 | |
1397 | edge16n %i6, %o7, %o1 | |
1398 | fsrc1s %f8, %f7 | |
1399 | ||
1400 | or %g0, 0x8, %l0 | |
1401 | sllx %l0, 0x3c, %l0 | |
1402 | wrhpr %l0, 0xA72, %hsys_tick_cmpr | |
1403 | loop_48: | |
1404 | rdpr %gl, %l4 | |
1405 | rdpr %pil, %i7 | |
1406 | tneg %xcc, 0x2 | |
1407 | ||
1408 | or %g0, 0x8, %l0 | |
1409 | sllx %l0, 0x3c, %l0 | |
1410 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1411 | ldsb [%l7 + 0x5E], %i3 | |
1412 | wr %g0, 0xe, %pcr ! changed. | |
1413 | fexpand %f10, %f26 | |
1414 | wr %g0, 0x5, %fprs | |
1415 | rd %fprs, %o4 | |
1416 | rd %y, %o0 | |
1417 | rd %tick_cmpr, %o5 | |
1418 | ||
1419 | or %g0, 0x8, %l0 | |
1420 | sllx %l0, 0x3c, %l0 | |
1421 | wrhpr %l0, 0xE95, %hsys_tick_cmpr | |
1422 | rdhpr %hintp, %l6 | |
1423 | wrpr %g6, 0x14DD, %tick | |
1424 | alignaddrl %i1, %g7, %g3 | |
1425 | subc %o3, %i0, %i2 | |
1426 | ||
1427 | or %g0, 0x8, %l0 | |
1428 | sllx %l0, 0x3c, %l0 | |
1429 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1430 | rd %y, %l2 | |
1431 | edge16n %l0, %l3, %l5 | |
1432 | edge32ln %o7, %o1, %i6 | |
1433 | fmovdleu %xcc, %f16, %f12 | |
1434 | fpsub16 %f26, %f28, %f8 | |
1435 | wrpr %i5, 0x1AC6, %tick | |
1436 | wr %i7, 0x0F35, %softint | |
1437 | nop | |
1438 | setx loop_49, %l0, %l1 | |
1439 | wrpr 0x1, %tl | |
1440 | wrpr %l1, %tpc | |
1441 | add %l1, 0x4, %l1 | |
1442 | wrpr %l1, %tnpc | |
1443 | setx 0x34400001400, %l0, %l1 | |
1444 | wrpr %l1, %tstate | |
1445 | wrhpr 0x4, %htstate | |
1446 | retry | |
1447 | movcs %xcc, %l1, %l4 | |
1448 | fnegs %f19, %f14 | |
1449 | taddcctv %i3, %g2, %g5 | |
1450 | loop_49: | |
1451 | smul %o2, 0x04C7, %i4 | |
1452 | rdpr %wstate, %o0 | |
1453 | bg,a,pt %icc, loop_50 | |
1454 | rdhpr %hintp, %o5 | |
1455 | wr %g0, 0xe2, %asi | |
1456 | stda %o4, [%l7 + 0x40] %asi | |
1457 | membar #Sync | |
1458 | loop_50: | |
1459 | fnot2s %f29, %f19 | |
1460 | fmovrdgez %o6, %f28, %f0 | |
1461 | wrpr %g4, %l6, %cwp | |
1462 | rdpr %tba, %g6 | |
1463 | fandnot2s %f2, %f19, %f20 | |
1464 | wr %i1, %g3, %softint | |
1465 | rd %pc, %o3 | |
1466 | brz,a %i0, loop_51 | |
1467 | rdpr %gl, %g7 | |
1468 | movge %icc, %i2, %g1 | |
1469 | fmovsg %xcc, %f10, %f29 | |
1470 | loop_51: | |
1471 | smul %l0, 0x0B60, %l2 | |
1472 | rd %fprs, %l3 | |
1473 | tg %xcc, 0x7 | |
1474 | rdpr %pil, %l5 | |
1475 | rd %y, %o1 | |
1476 | edge32 %i6, %o7, %i5 | |
1477 | rdhpr %hintp, %i7 | |
1478 | movneg %xcc, %l1, %i3 | |
1479 | sll %l4, 0x06, %g5 | |
1480 | rd %ccr, %o2 | |
1481 | fbuge %fcc1, loop_52 | |
1482 | umul %g2, %o0, %i4 | |
1483 | sir 0x13C8 | |
1484 | fpsub32s %f5, %f8, %f25 | |
1485 | loop_52: | |
1486 | rdhpr %hintp, %o5 | |
1487 | and %o6, 0x150C, %g4 | |
1488 | tle %xcc, 0x0 | |
1489 | bgu,a %xcc, loop_53 | |
1490 | rdhpr %hsys_tick_cmpr, %o4 | |
1491 | sllx %l6, %g6, %g3 | |
1492 | rdpr %tl, %i1 | |
1493 | loop_53: | |
1494 | wrpr %i0, 0x1C82, %tick | |
1495 | fmovdle %xcc, %f17, %f19 | |
1496 | ||
1497 | or %g0, 0x8, %l0 | |
1498 | sllx %l0, 0x3c, %l0 | |
1499 | wrhpr %l0, 0x56F, %hsys_tick_cmpr | |
1500 | rdpr %tl, %i2 | |
1501 | wrpr %l0, %g1, %cwp | |
1502 | ||
1503 | or %g0, 0x8, %l0 | |
1504 | sllx %l0, 0x3c, %l0 | |
1505 | wrhpr %l0, 0xB0A, %hsys_tick_cmpr | |
1506 | wr %l2, %l5, %y | |
1507 | andn %i6, 0x1F17, %o1 | |
1508 | movg %xcc, %o7, %i7 | |
1509 | ||
1510 | or %g0, 0x8, %l0 | |
1511 | sllx %l0, 0x3c, %l0 | |
1512 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1513 | wrpr %l4, 0x186F, %tick | |
1514 | edge8 %l1, %g5, %g2 | |
1515 | ldsh [%l7 + 0x6E], %o2 | |
1516 | rd %tick_cmpr, %i4 | |
1517 | wr %o5, 0x060D, %pic | |
1518 | rdhpr %hpstate, %o6 | |
1519 | rdpr %gl, %g4 | |
1520 | umul %o0, 0x0DF1, %o4 | |
1521 | ||
1522 | or %g0, 0x8, %l0 | |
1523 | sllx %l0, 0x3c, %l0 | |
1524 | wrhpr %l0, 0x2A5, %hsys_tick_cmpr | |
1525 | edge32n %i1, %g3, %g7 | |
1526 | fmovrsgz %o3, %f9, %f17 | |
1527 | wrpr %i2, 0x0174, %cwp | |
1528 | bl,a loop_54 | |
1529 | bpos,pt %icc, loop_55 | |
1530 | or %i0, 0x0D7D, %l0 | |
1531 | popc 0x09B2, %g1 | |
1532 | loop_54: | |
1533 | or %l2, 0x09CD, %l5 | |
1534 | loop_55: | |
1535 | wr %i6, %o1, %y | |
1536 | rd %ccr, %o7 | |
1537 | fsrc1 %f24, %f2 | |
1538 | rd %sys_tick_cmpr, %i7 | |
1539 | rdhpr %hpstate, %l3 | |
1540 | ||
1541 | or %g0, 0x8, %l0 | |
1542 | sllx %l0, 0x3c, %l0 | |
1543 | wrhpr %l0, 0x682, %hsys_tick_cmpr | |
1544 | orcc %i3, 0x17BA, %l1 | |
1545 | rd %y, %g5 | |
1546 | movpos %xcc, %g2, %l4 | |
1547 | xnorcc %o2, 0x08EA, %o5 | |
1548 | wr %o6, 0x18E4, %pic | |
1549 | membar 0x69 | |
1550 | mova %icc, %g4, %o0 | |
1551 | wr %i4, 0x1B4A, %clear_softint | |
1552 | wr %o4, %l6, %set_softint | |
1553 | fmovde %icc, %f20, %f0 | |
1554 | rdhpr %hintp, %g6 | |
1555 | wr %g0, 0x18, %asi | |
1556 | lduba [%l7 + 0x26] %asi, %g3 | |
1557 | mulx %g7, %i1, %i2 | |
1558 | wr %g0, 0x5, %fprs | |
1559 | rd %tick_cmpr, %o3 | |
1560 | rd %fprs, %l2 | |
1561 | rdhpr %hintp, %g1 | |
1562 | tleu %icc, 0x5 | |
1563 | fzero %f22 | |
1564 | bgu,pt %xcc, loop_56 | |
1565 | rdhpr %hintp, %l5 | |
1566 | ldub [%l7 + 0x0E], %o1 | |
1567 | rdpr %cleanwin, %o7 | |
1568 | loop_56: | |
1569 | xorcc %i6, 0x1C93, %i7 | |
1570 | ||
1571 | or %g0, 0x8, %l0 | |
1572 | sllx %l0, 0x3c, %l0 | |
1573 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1574 | ||
1575 | or %g0, 0x8, %l0 | |
1576 | sllx %l0, 0x3c, %l0 | |
1577 | wrhpr %l0, %g0, %hsys_tick_cmpr | |
1578 | rd %pc, %l1 | |
1579 | fmuld8sux16 %f1, %f9, %f28 | |
1580 | sethi 0x1620, %g5 | |
1581 | wrpr %l4, 0x1F2E, %tick | |
1582 | sub %g2, %o5, %o6 | |
1583 | EXIT_GOOD | |
1584 | ||
1585 | ||
1586 | ||
1587 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
1588 | ! | |
1589 | ! Stats for Thread 0: | |
1590 | ! | |
1591 | ! Type l : 52 | |
1592 | ! Type a : 534 | |
1593 | ! Type x : 22 | |
1594 | ! Type cti : 56 | |
1595 | ! Type f : 80 | |
1596 | ! Type i : 256 | |
1597 | ! | |
1598 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
1599 | ||
1600 | ||
1601 | EXIT_GOOD /* test finish */ | |
1602 | ||
1603 | /************************************************************************ | |
1604 | Test case data start | |
1605 | ************************************************************************/ | |
1606 | .data | |
1607 | user_data_start: | |
1608 | scratch_area: | |
1609 | .word 0x9E864B35 | |
1610 | .word 0xA8836F42 | |
1611 | .word 0xB25BF8DA | |
1612 | .word 0x3DEC2AAB | |
1613 | .word 0xE393E8B0 | |
1614 | .word 0xC6A11E21 | |
1615 | .word 0x73860C33 | |
1616 | .word 0xEF33F42F | |
1617 | .word 0x948A207D | |
1618 | .word 0x6D1C8F80 | |
1619 | .word 0xC202F77E | |
1620 | .word 0x7912EB7B | |
1621 | .word 0xA9CE43B9 | |
1622 | .word 0x5DBBA76C | |
1623 | .word 0xE9980A7C | |
1624 | .word 0xAD5350DB | |
1625 | .word 0x3CFCCDEC | |
1626 | .word 0xBF530804 | |
1627 | .word 0xFB4ADE0C | |
1628 | .word 0x1F76422C | |
1629 | .word 0x65D224C1 | |
1630 | .word 0x2C946FE2 | |
1631 | .word 0xE898011D | |
1632 | .word 0xB770B69B | |
1633 | .word 0x1EB20F59 | |
1634 | .word 0xC1C59641 | |
1635 | .word 0x1FF40554 | |
1636 | .word 0x8A7E4A56 | |
1637 | .word 0xB5426A34 | |
1638 | .word 0xD6B7B984 | |
1639 | .word 0x55718C9C | |
1640 | .word 0xAD949B4C | |
1641 | .word 0x0D90DB9D | |
1642 | .word 0x69B33C91 | |
1643 | .word 0xDF80C132 | |
1644 | .word 0x6363353E | |
1645 | .word 0x8EF735EF | |
1646 | .word 0xFD86B653 | |
1647 | .word 0x04CE865F | |
1648 | .word 0x4A56EF0A | |
1649 | .word 0x777E1A63 | |
1650 | .word 0xBC01117C | |
1651 | .word 0x1A006E97 | |
1652 | .word 0x97A2D5EB | |
1653 | .word 0x3FB21AC9 | |
1654 | .word 0x163BF4E0 | |
1655 | .word 0x7D0093D5 | |
1656 | .word 0xC7481C99 | |
1657 | .word 0xCB63CE19 | |
1658 | .word 0x3F842C13 | |
1659 | .word 0x83727E10 | |
1660 | .word 0xC0755E9C | |
1661 | .word 0x2620448A | |
1662 | .word 0xBF13883D | |
1663 | .word 0xCB35B92B | |
1664 | .word 0x46335997 | |
1665 | .word 0x32C13753 | |
1666 | .word 0xCA166749 | |
1667 | .word 0x0AF23539 | |
1668 | .word 0xA7A8195D | |
1669 | .word 0xE5EADFD9 | |
1670 | .word 0x1AF646CD | |
1671 | .word 0x55B860E9 | |
1672 | .word 0x3E2CA035 | |
1673 | .end |