Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / diag / assembly / fgu / fgu_ieee_traps_29.s
CommitLineData
86530b38
AT
1/*
2* ========== Copyright Header Begin ==========================================
3*
4* OpenSPARC T2 Processor File: fgu_ieee_traps_29.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 $ spc_basic_isa3.pl FOCUS_SEED=133241"
39.ident "Mon Dec 8 19:58:43 CST 2003"
40.ident "Using Instruction Hash for Focus :$Id: fgu_ieee_traps_29.s,v 1.4 2007/07/27 21:45:32 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
52main: /* test begin */
53
54 ! Get TID/DIAG DATA AREA. Separate memory for each thread.
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 cmp %l6, 0x0
62 be main_t0
63 nop
64 cmp %l6, 0x1
65 be main_t1
66 nop
67 cmp %l6, 0x2
68 be main_t2
69 nop
70 cmp %l6, 0x3
71 be main_t3
72 nop
73 cmp %l6, 0x4
74 be main_t4
75 nop
76 cmp %l6, 0x5
77 be main_t5
78 nop
79 cmp %l6, 0x6
80 be main_t6
81 nop
82 cmp %l6, 0x7
83 be main_t7
84 nop
85 EXIT_GOOD
86!
87! Thread 0 Start
88!
89main_t0:
90 mov %l7, %g1
91 !# Set %cwp for 8 windows
92 !# This threads memory space into each %l7
93 wrpr %g0, 0x7, %cwp
94 mov %g1, %l7
95 wrpr %g0, 0x6, %cwp
96 mov %g1, %l7
97 wrpr %g0, 0x5, %cwp
98 mov %g1, %l7
99 wrpr %g0, 0x4, %cwp
100 mov %g1, %l7
101 wrpr %g0, 0x3, %cwp
102 mov %g1, %l7
103 wrpr %g0, 0x2, %cwp
104 mov %g1, %l7
105 wrpr %g0, 0x1, %cwp
106 mov %g1, %l7
107 wrpr %g0, 0x0, %cwp
108 mov %g1, %l7
109
110 !# Set %fsr
111 setx 0x0000000000000000, %l0, %l6 !# no post process
112 stx %l6, [%l7 + 0x0] !# no post process
113 ldx [%l7 + 0x0], %fsr !# no post process
114
115 !# Initialize registers ..
116
117 !# Global registers
118 set 0xC, %g1
119 set 0xC, %g2
120 set 0x8, %g3
121 set 0x8, %g4
122 set 0xE, %g5
123 set 0xD, %g6
124 set 0x9, %g7
125 !# Input registers
126 set -0x1, %i0
127 set -0xD, %i1
128 set -0x9, %i2
129 set -0xF, %i3
130 set -0x0, %i4
131 set -0xA, %i5
132 set -0xD, %i6
133 set -0x1, %i7
134 !# Local registers
135 set 0x3B429A8A, %l0
136 set 0x0F3D2117, %l1
137 set 0x4B1856D1, %l2
138 set 0x004EF2C6, %l3
139 set 0x20D621D6, %l4
140 set 0x4EED4DE9, %l5
141 set 0x227ABCD4, %l6
142 !# Output registers
143 set 0x0EA2, %o0
144 set -0x1829, %o1
145 set 0x133E, %o2
146 set -0x14C6, %o3
147 set -0x04A6, %o4
148 set 0x1CBF, %o5
149 set 0x1C07, %o6
150 set -0x1A4D, %o7
151 !# Float registers
152 INIT_TH_FP_REG(%l7,%f0,0xBDC02D05494A9F57)
153 INIT_TH_FP_REG(%l7,%f2,0x882D54E409A81313)
154 INIT_TH_FP_REG(%l7,%f4,0x4B62A896F84501EF)
155 INIT_TH_FP_REG(%l7,%f6,0x024591A99765DD14)
156 INIT_TH_FP_REG(%l7,%f8,0x973680810C5E654C)
157 INIT_TH_FP_REG(%l7,%f10,0x6F172A3F35C8DEA3)
158 INIT_TH_FP_REG(%l7,%f12,0x550BD6991F22F32F)
159 INIT_TH_FP_REG(%l7,%f14,0xC23E230E73B5EA0B)
160 INIT_TH_FP_REG(%l7,%f16,0x8B432D4FA91DAF47)
161 INIT_TH_FP_REG(%l7,%f18,0xE07D2E4B2229E84A)
162 INIT_TH_FP_REG(%l7,%f20,0x82BAC4E828D38A05)
163 INIT_TH_FP_REG(%l7,%f22,0x9D595B6BCC62A44F)
164 INIT_TH_FP_REG(%l7,%f24,0xD0FD43FC16F917F2)
165 INIT_TH_FP_REG(%l7,%f26,0xED4F08CF9CC2465D)
166 INIT_TH_FP_REG(%l7,%f28,0xC86ED0FF8793FFE4)
167 INIT_TH_FP_REG(%l7,%f30,0x2962878FB08EBDCA)
168
169 !# Execute Main Diag ..
170
171 call loop_1
172 call loop_2
173 umulcc %o5, 0x00F6, %o0
174 add %i7, 0x12CC, %g4
175loop_1:
176 rd %sys_tick_cmpr, %o1
177loop_2:
178 call loop_3
179 fmul8x16au %f2, %f2, %f18
180 fmovrsgz %i1, %f7, %f6
181 call loop_4
182loop_3:
183 fmovdneg %icc, %f6, %f28
184 siam 0x0
185 call loop_5
186loop_4:
187 fmovso %fcc3, %f8, %f17
188 nop
189 setx 0x176A, %l0, %l3
190 udivx %i2, %l3, %l2
191 movul %fcc3, %g2, %o7
192loop_5:
193 sir 0x12C5
194 restored
195 rdpr %cwp, %g1
196 rdpr %cansave, %g2
197 rdpr %canrestore, %g3
198 rdpr %cleanwin, %g4
199 rdpr %otherwin, %g5
200 rdpr %wstate, %g6
201 umul %i3, %l6, %i6
202 call loop_6
203 add %g3, 0x1CF5, %g1
204 fxnor %f18, %f8, %f0
205 call loop_7
206loop_6:
207 nop
208 fitos %f12, %f25
209 addcc %g7, %g6, %g5
210 tge %icc, 0x0
211loop_7:
212 call loop_8
213 fmovsug %fcc3, %f1, %f25
214 fmovdl %xcc, %f10, %f4
215 movvc %icc, 0x734, %o3
216loop_8:
217 call loop_9
218 bshuffle %f22, %f16, %f12
219 stbar
220 xor %i0, 0x1511, %l4
221loop_9:
222 fcmple32 %f30, %f22, %o2
223 sllx %i5, 0x13, %i4
224 fmul8ulx16 %f28, %f26, %f26
225 call loop_10
226 movn %xcc, %l5, %o4
227 subccc %l1, %l0, %o5
228 fmul8x16 %f25, %f6, %f6
229loop_10:
230 call loop_11
231 edge8l %o6, %o0, %g4
232 bn %xcc, loop_12
233 bpos,pt %icc, loop_13
234loop_11:
235 umul %o1, %i1, %i7
236 fmovsug %fcc1, %f13, %f27
237loop_12:
238 rdpr %tl, %l3
239loop_13:
240 fcmpeq16 %f30, %f6, %i2
241 fmovdug %fcc1, %f12, %f18
242
243 or %g0, 0x8, %l0
244 sllx %l0, 0x3c, %l0
245 wrhpr %l0, 0x731, %hsys_tick_cmpr
246 call loop_14
247 movvc %xcc, 0x6FA, %o7
248 flushw
249 call loop_15
250loop_14:
251 nop
252 fitod %f0, %f8
253 fdtox %f8, %f16
254 fcmpd %fcc0, %f22, %f20
255 movrlez %i3, 0x267, %i6
256loop_15:
257 nop
258 setx 0x8A6F2D2FAD7A56CA, %l0, %l6
259 stx %l6, [%l7 + 0x28]
260 ldd [%l7 + 0x28], %f22
261 setx 0x2701FD1F, %l1, %l5
262 stx %l5, [%l7 + 0x10]
263 ldd [%l7 + 0x10], %f22
264 fsmuld %f22, %f22, %f0
265 fmovdpos %icc, %f22, %f26
266 fexpand %f7, %f0
267 fcmps %fcc0, %f3, %f14
268 call loop_16
269 fble,a,pt %fcc1, loop_17
270 fmovsl %xcc, %f22, %f12
271 call loop_18
272loop_16:
273 call loop_19
274loop_17:
275 call loop_20
276 call loop_21
277loop_18:
278 call loop_22
279loop_19:
280 bpos,a %xcc, loop_23
281loop_20:
282 nop
283 setx 0x823C9720, %l0, %l6
284 st %l6, [%l7 + 0x28]
285 ld [%l7 + 0x28], %f20
286 setx 0xC1847F46, %l1, %l5
287 st %l5, [%l7 + 0x10]
288 ld [%l7 + 0x10], %f16
289 fadds %f16, %f20, %f28
290loop_21:
291 movu %fcc3, %l6, %g1
292loop_22:
293 bne %xcc, loop_24
294loop_23:
295 fmovdpos %xcc, %f2, %f14
296 fmovsle %fcc0, %f11, %f1
297 fmovsug %fcc3, %f23, %f10
298loop_24:
299 fmovsn %xcc, %f4, %f10
300 movne %fcc1, 0x652, %g7
301 movuge %fcc1, 0x6A4, %g6
302 movneg %xcc, 0x018, %g3
303 fmovrsgz %o3, %f21, %f0
304 call loop_25
305 fmovde %fcc3, %f20, %f26
306 edge16l %i0, %l4, %o2
307 call loop_26
308loop_25:
309 call loop_27
310 fpackfix %f6, %f25
311 fandnot2 %f2, %f12, %f22
312loop_26:
313 call loop_28
314loop_27:
315 call loop_29
316 call loop_30
317 saved
318 rdpr %cwp, %g1
319 rdpr %cansave, %g2
320 rdpr %canrestore, %g3
321 rdpr %cleanwin, %g4
322 rdpr %otherwin, %g5
323 rdpr %wstate, %g6
324loop_28:
325 fmovduge %fcc2, %f30, %f16
326loop_29:
327 nop
328 wr %g0, 0x19, %asi
329 stda %g4, [%l7 + 0x10] %asi
330loop_30:
331 and %i4, %l5, %i5
332 call loop_31
333 tge %icc, 0x5
334 wr %l1, %o4, %set_softint
335 fbne,a %fcc1, loop_32
336loop_31:
337 fmovsge %fcc1, %f1, %f20
338 call loop_33
339 fnot2 %f22, %f20
340loop_32:
341 std %l0, [%l7 + 0x28]
342 set 0x1E, %o1
343 stha %o6, [%l7 + %o1] 0x0c
344loop_33:
345 srlx %o0, 0x02, %g4
346 fnot1s %f18, %f1
347 call loop_34
348 call loop_35
349 call loop_36
350 fmul8x16au %f1, %f14, %f2
351loop_34:
352 fmovdue %fcc1, %f6, %f14
353loop_35:
354 call loop_37
355loop_36:
356 fmovdg %fcc0, %f20, %f10
357 fnot2 %f26, %f6
358 call loop_38
359loop_37:
360 fmovdleu %icc, %f20, %f18
361 movu %fcc1, %o5, %i1
362 call loop_39
363loop_38:
364 edge8l %i7, %l3, %o1
365 fmovrdlez %l2, %f14, %f14
366 tsubcctv %i2, 0x1FDB, %o7
367loop_39:
368 fnand %f12, %f14, %f4
369 call loop_40
370 call loop_41
371 call loop_42
372 nop
373 set 0x7C, %o5
374 ldsw [%l7 + %o5], %i3
375loop_40:
376 srax %i6, %l6, %g1
377loop_41:
378 fnot1s %f22, %f27
379loop_42:
380 call loop_43
381 andcc %g2, %g7, %g6
382 edge16ln %o3, %i0, %g3
383 call loop_44
384loop_43:
385 nop
386 fitos %f11, %f11
387 fstox %f11, %f20
388 rdhpr %hsys_tick_cmpr, %o2
389 subcc %l4, %i4, %g5
390loop_44:
391 xnor %l5, 0x175E, %l1
392
393 or %g0, 0x8, %l0
394 sllx %l0, 0x3c, %l0
395 wrhpr %l0, %g0, %hsys_tick_cmpr
396 sub %o4, 0x1B7F, %o6
397 nop
398 fitod %f2, %f22
399 fdtoi %f22, %f21
400 fpackfix %f28, %f29
401 nop
402 setx 0xD27A3437E688740E, %l0, %l6
403 stx %l6, [%l7 + 0x28]
404 ldd [%l7 + 0x28], %f14
405 setx 0x01BB40D3F9FDA14F, %l1, %l5
406 stx %l5, [%l7 + 0x10]
407 ldd [%l7 + 0x10], %f26
408 fmuld %f26, %f14, %f6
409 fnegd %f4, %f0
410 alignaddr %l0, %o0, %o5
411 flushw
412 fmovsuge %fcc3, %f5, %f21
413 call loop_45
414 call loop_46
415 fmovrdgz %g4, %f10, %f0
416 andncc %i7, %l3, %i1
417loop_45:
418 call loop_47
419loop_46:
420 fsrc1 %f18, %f4
421 nop
422 setx loop_48, %l0, %l1
423 wrpr 0x1, %tl
424 wrpr %l1, %tnpc
425 setx 0x021200001406, %l0, %l1
426 wrpr %l1, %tstate
427 wrhpr 0x4, %htstate
428 rdpr %tt, %l1
429 wrpr %g0, %l1, %tt
430 rdpr %pstate, %l1
431 wrpr %g0, %l1, %pstate
432 rdpr %tl, %l1
433 wrpr %g0, %l1, %tl
434 rdpr %tpc, %l1
435 wrpr %g0, %l1, %tpc
436 rdpr %tnpc, %l1
437 wrpr %g0, %l1, %tnpc
438 rdpr %tstate, %l1
439 wrpr %g0, %l1, %tstate
440 rdpr %tba, %l1
441 wrpr %g0, %l1, %tba
442 rdpr %tba, %l1
443 wrpr %g0, %l1, %tba
444 rdhpr %hpstate, %l1
445 wrhpr %g0, %l1, %hpstate
446 rdhpr %htstate, %l1
447 wrhpr %g0, %l1, %htstate
448 rdhpr %hintp, %l1
449 wrhpr %g0, %l1, %hintp
450 done
451 edge16n %o1, %i2, %l2
452loop_47:
453 smulcc %i3, %o7, %i6
454 call loop_49
455loop_48:
456 nop
457 fitos %f8, %f1
458 fandnot1s %f14, %f29, %f29
459 call loop_50
460loop_49:
461 call loop_51
462 andncc %g1, 0x093D, %l6
463 bneg,a,pt %icc, loop_52
464loop_50:
465 fxnors %f11, %f11, %f13
466loop_51:
467 edge8 %g2, %g7, %o3
468 siam 0x0
469loop_52:
470 edge32n %g6, %i0, %o2
471 fmovrdlz %l4, %f18, %f8
472 sll %i4, %g3, %g5
473 call loop_53
474 fxnor %f30, %f20, %f10
475 fmovdule %fcc2, %f4, %f2
476 alignaddrl %l5, %i5, %o4
477loop_53:
478 fmul8x16 %f25, %f24, %f10
479 call loop_54
480 call loop_55
481 call loop_56
482 mulx %o6, %l1, %o0
483loop_54:
484 fmovsvs %icc, %f16, %f0
485loop_55:
486 and %l0, %g4, %i7
487loop_56:
488 orncc %l3, 0x1B57, %o5
489 call loop_57
490 call loop_58
491 call loop_59
492 fmovsue %fcc1, %f23, %f15
493loop_57:
494 fnot1 %f4, %f10
495loop_58:
496 call loop_60
497loop_59:
498 call loop_61
499 fpsub16 %f26, %f16, %f22
500 fcmpgt32 %f4, %f2, %o1
501loop_60:
502 call loop_62
503loop_61:
504 add %i1, %i2, %i3
505 for %f28, %f28, %f18
506 fmovrsgez %o7, %f21, %f4
507loop_62:
508 fmovsg %xcc, %f15, %f3
509 call loop_63
510 movug %fcc1, 0x204, %i6
511 call loop_64
512 call loop_65
513loop_63:
514 xor %l2, 0x0F8D, %g1
515loop_64:
516 nop
517
518loop_65:
519 nop
520
521 EXIT_GOOD
522
523
524
525!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
526!
527! Stats for Thread 0:
528!
529! Type l : 5
530! Type a : 6
531! Type x : 2
532! Type cti : 65
533! Type f : 68
534! Type i : 54
535!
536!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
537
538!
539! Thread 1 Start
540!
541main_t1:
542 mov %l7, %g1
543 !# Set %cwp for 8 windows
544 !# This threads memory space into each %l7
545 wrpr %g0, 0x7, %cwp
546 mov %g1, %l7
547 wrpr %g0, 0x6, %cwp
548 mov %g1, %l7
549 wrpr %g0, 0x5, %cwp
550 mov %g1, %l7
551 wrpr %g0, 0x4, %cwp
552 mov %g1, %l7
553 wrpr %g0, 0x3, %cwp
554 mov %g1, %l7
555 wrpr %g0, 0x2, %cwp
556 mov %g1, %l7
557 wrpr %g0, 0x1, %cwp
558 mov %g1, %l7
559 wrpr %g0, 0x0, %cwp
560 mov %g1, %l7
561
562 !# Set %fsr
563 setx 0x0000000000000000, %l0, %l6 !# no post process
564 stx %l6, [%l7 + 0x0] !# no post process
565 ldx [%l7 + 0x0], %fsr !# no post process
566
567 !# Initialize registers ..
568
569 !# Global registers
570 set 0x5, %g1
571 set 0xE, %g2
572 set 0xF, %g3
573 set 0x5, %g4
574 set 0x1, %g5
575 set 0xA, %g6
576 set 0xF, %g7
577 !# Input registers
578 set -0xA, %i0
579 set -0x8, %i1
580 set -0x1, %i2
581 set -0xA, %i3
582 set -0xD, %i4
583 set -0x3, %i5
584 set -0x4, %i6
585 set -0xD, %i7
586 !# Local registers
587 set 0x33353AFD, %l0
588 set 0x10A26DD9, %l1
589 set 0x47BA9F60, %l2
590 set 0x52493B53, %l3
591 set 0x21AC0BBC, %l4
592 set 0x4B752867, %l5
593 set 0x7D9F0138, %l6
594 !# Output registers
595 set 0x1916, %o0
596 set 0x0F66, %o1
597 set -0x0736, %o2
598 set -0x1158, %o3
599 set -0x026E, %o4
600 set 0x1648, %o5
601 set 0x1808, %o6
602 set -0x0C50, %o7
603 !# Float registers
604 INIT_TH_FP_REG(%l7,%f0,0xBDC02D05494A9F57)
605 INIT_TH_FP_REG(%l7,%f2,0x882D54E409A81313)
606 INIT_TH_FP_REG(%l7,%f4,0x4B62A896F84501EF)
607 INIT_TH_FP_REG(%l7,%f6,0x024591A99765DD14)
608 INIT_TH_FP_REG(%l7,%f8,0x973680810C5E654C)
609 INIT_TH_FP_REG(%l7,%f10,0x6F172A3F35C8DEA3)
610 INIT_TH_FP_REG(%l7,%f12,0x550BD6991F22F32F)
611 INIT_TH_FP_REG(%l7,%f14,0xC23E230E73B5EA0B)
612 INIT_TH_FP_REG(%l7,%f16,0x8B432D4FA91DAF47)
613 INIT_TH_FP_REG(%l7,%f18,0xE07D2E4B2229E84A)
614 INIT_TH_FP_REG(%l7,%f20,0x82BAC4E828D38A05)
615 INIT_TH_FP_REG(%l7,%f22,0x9D595B6BCC62A44F)
616 INIT_TH_FP_REG(%l7,%f24,0xD0FD43FC16F917F2)
617 INIT_TH_FP_REG(%l7,%f26,0xED4F08CF9CC2465D)
618 INIT_TH_FP_REG(%l7,%f28,0xC86ED0FF8793FFE4)
619 INIT_TH_FP_REG(%l7,%f30,0x2962878FB08EBDCA)
620
621 !# Execute Main Diag ..
622
623 call loop_66
624 nop
625 fitod %f6, %f20
626 fdtos %f20, %f4
627 srlx %g2, %g7, %l6
628 call loop_67
629loop_66:
630 call loop_68
631 fmovdul %fcc3, %f4, %f18
632 fmovdn %fcc3, %f26, %f24
633loop_67:
634 saved
635 rdpr %cwp, %g1
636 rdpr %cansave, %g2
637 rdpr %canrestore, %g3
638 rdpr %cleanwin, %g4
639 rdpr %otherwin, %g5
640 rdpr %wstate, %g6
641loop_68:
642 be,pn %xcc, loop_69
643 restored
644 rdpr %cwp, %g1
645 rdpr %cansave, %g2
646 rdpr %canrestore, %g3
647 rdpr %cleanwin, %g4
648 rdpr %otherwin, %g5
649 rdpr %wstate, %g6
650 call loop_70
651 fmovdcs %icc, %f26, %f0
652loop_69:
653 tvc %icc, 0x6
654 fnot1s %f21, %f15
655loop_70:
656 nop
657 setx 0xE96539F0CCE84677, %l0, %l6
658 stx %l6, [%l7 + 0x28]
659 ldd [%l7 + 0x28], %f4
660 setx 0x2200F82CD2E0D04E, %l1, %l5
661 stx %l5, [%l7 + 0x10]
662 ldd [%l7 + 0x10], %f0
663 fmuld %f0, %f4, %f28
664 movrgez %g6, %o3, %o2
665 call loop_71
666 call loop_72
667 bshuffle %f28, %f24, %f6
668 fmovrsne %l4, %f9, %f3
669loop_71:
670 umul %i4, %g3, %i0
671loop_72:
672 movrlz %g5, %l5, %o4
673 rdpr %tba, %i5
674 movge %xcc, 0x351, %l1
675 fbo,pn %fcc2, loop_73
676 call loop_74
677 edge16l %o6, %l0, %g4
678 fbug,a %fcc0, loop_75
679loop_73:
680 te %icc, 0x4
681loop_74:
682 call loop_76
683 call loop_77
684loop_75:
685 movue %fcc2, 0x2B0, %o0
686 fmovdcs %xcc, %f8, %f0
687loop_76:
688 call loop_78
689loop_77:
690 and %i7, 0x1E8E, %o5
691 addc %o1, %l3, %i2
692 call loop_79
693loop_78:
694 fmovdgu %icc, %f8, %f28
695 tne %icc, 0x3
696 tcs %icc, 0x1
697loop_79:
698 fcmpgt32 %f18, %f4, %i1
699 tle %xcc, 0x1
700 call loop_80
701 movpos %xcc, 0x137, %i3
702 movrne %o7, 0x2F6, %l2
703 fxnor %f16, %f20, %f24
704loop_80:
705 fpadd32s %f7, %f5, %f22
706 sra %i6, %g1, %g2
707 movvc %icc, %l6, %g7
708 fcmple16 %f22, %f10, %o3
709 wrpr %g0, 0x3, %gl
710 fcmpeq32 %f10, %f30, %i4
711 addcc %g3, 0x157E, %o2
712 fpsub32 %f14, %f14, %f8
713 nop
714 setx 0xF3C5E37F, %l0, %l6
715 st %l6, [%l7 + 0x28]
716 ld [%l7 + 0x28], %f1
717 setx 0xA0056C31, %l1, %l5
718 st %l5, [%l7 + 0x10]
719 ld [%l7 + 0x10], %f20
720 fadds %f20, %f1, %f5
721 fmovsleu %icc, %f26, %f5
722 movne %fcc0, %i0, %g5
723 nop
724 fitod %f8, %f4
725 fdtos %f4, %f27
726 edge8 %l5, %i5, %l1
727 fmovrdgz %o6, %f28, %f24
728 srlx %o4, %l0, %g4
729 call loop_81
730 call loop_82
731 movrgz %i7, %o0, %o5
732 call loop_83
733loop_81:
734 fcmpd %fcc0, %f0, %f18
735loop_82:
736 fpack32 %f0, %f30, %f20
737 fcmpes %fcc2, %f27, %f12
738loop_83:
739 nop
740 setx loop_84, %l0, %l1
741 jmpl %l1, %o1
742 wrpr %i2, %i1, %pil
743 call loop_85
744 fnot1 %f28, %f28
745loop_84:
746 call loop_86
747 movuge %fcc1, 0x46A, %l3
748loop_85:
749 fmovdue %fcc3, %f24, %f30
750 call loop_87
751loop_86:
752 bvs,pn %icc, loop_88
753 siam 0x1
754 mulscc %o7, 0x1BDE, %l2
755loop_87:
756 call loop_89
757loop_88:
758 sir 0x0C40
759 nop
760 setx 0xEE091370, %l0, %l6
761 st %l6, [%l7 + 0x28]
762 ld [%l7 + 0x28], %f10
763 setx 0x6F14888C, %l1, %l5
764 st %l5, [%l7 + 0x10]
765 ld [%l7 + 0x10], %f22
766 fadds %f22, %f10, %f4
767 fmovdue %fcc0, %f30, %f2
768loop_89:
769 call loop_90
770 movul %fcc3, %i6, %g1
771 nop
772 setx 0x65DDB9BF, %l0, %l6
773 st %l6, [%l7 + 0x28]
774 ld [%l7 + 0x28], %f19
775 setx 0x2EBF6A97, %l1, %l5
776 st %l5, [%l7 + 0x10]
777 ld [%l7 + 0x10], %f7
778 fdivs %f7, %f19, %f31
779 fxors %f8, %f31, %f13
780loop_90:
781 fxors %f19, %f21, %f5
782 tsubcctv %g2, 0x0214, %l6
783 nop
784 setx 0xD4045767A6AF07DB, %l0, %l6
785 stx %l6, [%l7 + 0x28]
786 ldd [%l7 + 0x28], %f2
787 setx 0x0D5524EF, %l1, %l5
788 stx %l5, [%l7 + 0x10]
789 ldd [%l7 + 0x10], %f12
790 fsmuld %f12, %f2, %f2
791 fmovde %xcc, %f0, %f24
792 fmovrde %i3, %f10, %f10
793 movo %fcc1, %o3, %g7
794 array32 %g6, %l4, %g3
795 wrpr %o2, 0x0218, %pil
796 call loop_91
797 tvs %xcc, 0x2
798 call loop_92
799 movvc %icc, %i4, %i0
800loop_91:
801 xor %g5, %l5, %i5
802 xnor %l1, %o6, %l0
803loop_92:
804 fmovscc %xcc, %f29, %f14
805 fmovsle %xcc, %f7, %f25
806 movne %fcc2, 0x420, %o4
807 wr %g0, 0x81, %asi
808 sta %f3, [%l7 + 0x18] %asi
809 taddcc %g4, %i7, %o0
810 saved
811 rdpr %cwp, %g1
812 rdpr %cansave, %g2
813 rdpr %canrestore, %g3
814 rdpr %cleanwin, %g4
815 rdpr %otherwin, %g5
816 rdpr %wstate, %g6
817 fpsub32s %f9, %f16, %f22
818 tvc %icc, 0x7
819 fmovdleu %xcc, %f20, %f4
820 call loop_93
821 rdpr %canrestore, %o1
822 fabsd %f28, %f2
823 nop
824 setx loop_94, %l0, %l1
825 jmpl %l1, %i2
826loop_93:
827 ta %icc, 0x0
828 addcc %o5, %i1, %l3
829 call loop_95
830loop_94:
831 call loop_96
832 call loop_97
833 call loop_98
834loop_95:
835 st %fsr, [%l7 + 0x0C]
836loop_96:
837 movrlz %o7, 0x048, %i6
838loop_97:
839 call loop_99
840loop_98:
841 call loop_100
842 fmovsvc %xcc, %f17, %f20
843 wr %g0, 0x04, %asi
844 ldxa [%l7 + 0x48] %asi, %l2
845loop_99:
846 membar 0x22
847loop_100:
848 st %fsr, [%l7 + 0x78]
849 brgz,pt %g2, loop_101
850 bvc,a,pn %xcc, loop_102
851 call loop_103
852 addc %l6, 0x1CA6, %g1
853loop_101:
854 fand %f18, %f16, %f12
855loop_102:
856 fmovs %f25, %f23
857loop_103:
858 fmovscs %xcc, %f18, %f27
859 call loop_104
860 sra %i3, %g7, %o3
861 call loop_105
862 taddcc %g6, %l4, %g3
863loop_104:
864 call loop_106
865 fmovscs %icc, %f13, %f20
866loop_105:
867 fmovrdne %i4, %f30, %f26
868 tn %xcc, 0x4
869loop_106:
870 fpmerge %f1, %f21, %f30
871 call loop_107
872 fxors %f31, %f7, %f19
873 call loop_108
874 call loop_109
875loop_107:
876 nop
877 setx 0xF445D5053599ADDD, %l0, %l6
878 stx %l6, [%l7 + 0x28]
879 ldd [%l7 + 0x28], %f10
880 setx 0x53487A3F7B654FFA, %l1, %l5
881 stx %l5, [%l7 + 0x10]
882 ldd [%l7 + 0x10], %f0
883 fdivd %f0, %f10, %f16
884 addcc %o2, %i0, %l5
885loop_108:
886 call loop_110
887loop_109:
888 fzero %f14
889 fandnot1 %f4, %f10, %f10
890 fpsub16 %f0, %f20, %f14
891loop_110:
892 fmuld8ulx16 %f23, %f3, %f0
893 rdpr %otherwin, %i5
894 call loop_111
895 fmovduge %fcc1, %f30, %f28
896 move %fcc2, 0x4DF, %g5
897 fcmped %fcc3, %f26, %f4
898loop_111:
899 bpos %icc, loop_112
900 fpadd32 %f28, %f2, %f0
901 call loop_113
902 call loop_114
903loop_112:
904 sllx %o6, 0x07, %l0
905 fmovse %xcc, %f25, %f3
906loop_113:
907 edge16ln %l1, %o4, %g4
908loop_114:
909 be %icc, loop_115
910 bl,a,pn %xcc, loop_116
911 addcc %i7, 0x17D1, %o0
912 add %i2, %o5, %i1
913loop_115:
914 wrpr %l3, %o1, %tick
915loop_116:
916 fsrc2s %f13, %f15
917 nop
918 set 0x34, %l1
919 stw %i6, [%l7 + %l1]
920 nop
921 setx 0x382B14D3, %l0, %l6
922 st %l6, [%l7 + 0x28]
923 ld [%l7 + 0x28], %f11
924 setx 0xFCCF45D0, %l1, %l5
925 st %l5, [%l7 + 0x10]
926 ld [%l7 + 0x10], %f4
927 fadds %f4, %f11, %f24
928 fand %f4, %f14, %f8
929 call loop_117
930 tgu %icc, 0x4
931 call loop_118
932 udiv %l2, 0x0212, %g2
933loop_117:
934 fmovspos %icc, %f1, %f16
935 call loop_119
936loop_118:
937 fmovdu %fcc0, %f16, %f22
938 ldsw [%l7 + 0x38], %o7
939 nop
940 set 0x52, %o2
941 stb %l6, [%l7 + %o2]
942loop_119:
943 fmovrse %i3, %f8, %f30
944 wr %g1, 0x00A1, %ccr
945 wr %g0, 0x80, %asi
946 sta %f20, [%l7 + 0x30] %asi
947 nop
948 setx 0x38DE0E2E, %l0, %l6
949 st %l6, [%l7 + 0x28]
950 ld [%l7 + 0x28], %f17
951 setx 0xC233FBDD, %l1, %l5
952 st %l5, [%l7 + 0x10]
953 ld [%l7 + 0x10], %f27
954 fmuls %f27, %f17, %f12
955 fble,a %fcc0, loop_120
956 tne %icc, 0x4
957 call loop_121
958 wrpr %g0, 0x3, %gl
959loop_120:
960 fmul8sux16 %f16, %f26, %f22
961 movcs %icc, 0x14A, %o3
962loop_121:
963 fmovdcc %xcc, %f2, %f30
964 call loop_122
965loop_122:
966 nop
967
968 EXIT_GOOD
969
970
971
972!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
973!
974! Stats for Thread 1:
975!
976! Type l : 8
977! Type a : 9
978! Type x : 3
979! Type cti : 57
980! Type f : 65
981! Type i : 58
982!
983!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
984
985!
986! Thread 2 Start
987!
988main_t2:
989 mov %l7, %g1
990 !# Set %cwp for 8 windows
991 !# This threads memory space into each %l7
992 wrpr %g0, 0x7, %cwp
993 mov %g1, %l7
994 wrpr %g0, 0x6, %cwp
995 mov %g1, %l7
996 wrpr %g0, 0x5, %cwp
997 mov %g1, %l7
998 wrpr %g0, 0x4, %cwp
999 mov %g1, %l7
1000 wrpr %g0, 0x3, %cwp
1001 mov %g1, %l7
1002 wrpr %g0, 0x2, %cwp
1003 mov %g1, %l7
1004 wrpr %g0, 0x1, %cwp
1005 mov %g1, %l7
1006 wrpr %g0, 0x0, %cwp
1007 mov %g1, %l7
1008
1009 !# Set %fsr
1010 setx 0x0000000000000000, %l0, %l6 !# no post process
1011 stx %l6, [%l7 + 0x0] !# no post process
1012 ldx [%l7 + 0x0], %fsr !# no post process
1013
1014 !# Initialize registers ..
1015
1016 !# Global registers
1017 set 0x9, %g1
1018 set 0x4, %g2
1019 set 0x2, %g3
1020 set 0xE, %g4
1021 set 0xA, %g5
1022 set 0x0, %g6
1023 set 0x7, %g7
1024 !# Input registers
1025 set -0xB, %i0
1026 set -0x2, %i1
1027 set -0x4, %i2
1028 set -0x4, %i3
1029 set -0x7, %i4
1030 set -0x1, %i5
1031 set -0x9, %i6
1032 set -0x4, %i7
1033 !# Local registers
1034 set 0x11351D25, %l0
1035 set 0x555A11AD, %l1
1036 set 0x75F6AA09, %l2
1037 set 0x563E1E6E, %l3
1038 set 0x57A23B75, %l4
1039 set 0x15485AF3, %l5
1040 set 0x5FC6317E, %l6
1041 !# Output registers
1042 set -0x16B8, %o0
1043 set 0x10FF, %o1
1044 set -0x024A, %o2
1045 set -0x184B, %o3
1046 set 0x12C0, %o4
1047 set 0x0138, %o5
1048 set 0x1F13, %o6
1049 set -0x193E, %o7
1050 !# Float registers
1051 INIT_TH_FP_REG(%l7,%f0,0xBDC02D05494A9F57)
1052 INIT_TH_FP_REG(%l7,%f2,0x882D54E409A81313)
1053 INIT_TH_FP_REG(%l7,%f4,0x4B62A896F84501EF)
1054 INIT_TH_FP_REG(%l7,%f6,0x024591A99765DD14)
1055 INIT_TH_FP_REG(%l7,%f8,0x973680810C5E654C)
1056 INIT_TH_FP_REG(%l7,%f10,0x6F172A3F35C8DEA3)
1057 INIT_TH_FP_REG(%l7,%f12,0x550BD6991F22F32F)
1058 INIT_TH_FP_REG(%l7,%f14,0xC23E230E73B5EA0B)
1059 INIT_TH_FP_REG(%l7,%f16,0x8B432D4FA91DAF47)
1060 INIT_TH_FP_REG(%l7,%f18,0xE07D2E4B2229E84A)
1061 INIT_TH_FP_REG(%l7,%f20,0x82BAC4E828D38A05)
1062 INIT_TH_FP_REG(%l7,%f22,0x9D595B6BCC62A44F)
1063 INIT_TH_FP_REG(%l7,%f24,0xD0FD43FC16F917F2)
1064 INIT_TH_FP_REG(%l7,%f26,0xED4F08CF9CC2465D)
1065 INIT_TH_FP_REG(%l7,%f28,0xC86ED0FF8793FFE4)
1066 INIT_TH_FP_REG(%l7,%f30,0x2962878FB08EBDCA)
1067
1068 !# Execute Main Diag ..
1069
1070 call loop_123
1071 call loop_124
1072 call loop_125
1073 movcs %xcc, 0x0B7, %l4
1074loop_123:
1075 nop
1076 setx 0xEB73353C, %l0, %l6
1077 st %l6, [%l7 + 0x28]
1078 ld [%l7 + 0x28], %f2
1079 setx 0x98DCBCBD, %l1, %l5
1080 st %l5, [%l7 + 0x10]
1081 ld [%l7 + 0x10], %f16
1082 fmuls %f16, %f2, %f2
1083loop_124:
1084 array32 %g6, %g3, %i4
1085loop_125:
1086 tpos %icc, 0x4
1087 movule %fcc3, %o2, %i0
1088 call loop_126
1089 call loop_127
1090 alignaddr %l5, %i5, %g5
1091 call loop_128
1092loop_126:
1093 bpos,a,pt %icc, loop_129
1094loop_127:
1095 call loop_130
1096 call loop_131
1097loop_128:
1098 fmovso %fcc0, %f21, %f26
1099loop_129:
1100 call loop_132
1101loop_130:
1102 call loop_133
1103loop_131:
1104 call loop_134
1105 call loop_135
1106loop_132:
1107 fnot1s %f10, %f17
1108loop_133:
1109 fmovrdlz %o6, %f8, %f18
1110loop_134:
1111 movrlz %l1, 0x270, %l0
1112loop_135:
1113 nop
1114 setx 0xA1E02341, %l0, %l6
1115 st %l6, [%l7 + 0x28]
1116 ld [%l7 + 0x28], %f26
1117 setx 0x7D1BACAF, %l1, %l5
1118 st %l5, [%l7 + 0x10]
1119 ld [%l7 + 0x10], %f11
1120 fadds %f11, %f26, %f19
1121 edge32 %o4, %g4, %i7
1122 be %icc, loop_136
1123 movl %fcc3, 0x15A, %i2
1124 fpack32 %f4, %f6, %f24
1125 nop
1126 fitod %f8, %f16
1127 fdtox %f16, %f16
1128 fxtod %f16, %f14
1129loop_136:
1130 nop
1131 setx 0xF17FE8A9, %l0, %l6
1132 st %l6, [%l7 + 0x28]
1133 ld [%l7 + 0x28], %f17
1134 setx 0x2EF97646, %l1, %l5
1135 st %l5, [%l7 + 0x10]
1136 ld [%l7 + 0x10], %f17
1137 fadds %f17, %f17, %f22
1138 taddcc %o5, 0x1DCA, %o0
1139 fbule %fcc1, loop_137
1140 call loop_138
1141 fbug,pn %fcc1, loop_139
1142 wr %i1, %l3, %set_softint
1143loop_137:
1144 fmovso %fcc0, %f14, %f2
1145loop_138:
1146 call loop_140
1147loop_139:
1148 fmovsle %xcc, %f18, %f17
1149 fbl,pn %fcc2, loop_141
1150 fpsub16 %f14, %f14, %f0
1151loop_140:
1152 edge16 %i6, %l2, %o1
1153 call loop_142
1154loop_141:
1155 movuge %fcc3, 0x00A, %o7
1156 fmovsue %fcc1, %f22, %f11
1157 movleu %icc, 0x464, %g2
1158loop_142:
1159 xnorcc %i3, 0x03BA, %g1
1160 call loop_143
1161 nop
1162 set 0x30, %l0
1163 std %g6, [%l7 + %l0]
1164 nop
1165 setx 0x85669FB1, %l0, %l6
1166 st %l6, [%l7 + 0x28]
1167 ld [%l7 + 0x28], %f15
1168 fsqrts %f15, %f31
1169 fpsub16s %f14, %f21, %f11
1170loop_143:
1171 call loop_144
1172 call loop_145
1173 call loop_146
1174 subcc %o3, 0x188A, %l4
1175loop_144:
1176 wrpr %l6, %g6, %cwp
1177loop_145:
1178 brz,pn %i4, loop_147
1179loop_146:
1180 fmuld8sux16 %f7, %f31, %f28
1181 fsrc1s %f0, %f22
1182 wrpr %g0, 0x1, %gl
1183loop_147:
1184 call loop_148
1185 fmul8sux16 %f14, %f8, %f0
1186 edge32l %i0, %g3, %l5
1187 set 0x40, %i6
1188 ldstuba [%l7 + %i6] 0x04, %g5
1189loop_148:
1190 wrpr %o6, 0x0D38, %pil
1191 fcmple16 %f22, %f26, %l1
1192 sdiv %l0, 0x056B, %i5
1193 tvs %xcc, 0x2
1194 for %f30, %f8, %f16
1195 movcc %icc, %g4, %i7
1196 call loop_149
1197 call loop_150
1198 call loop_151
1199 fmovso %fcc3, %f17, %f0
1200loop_149:
1201 srax %i2, 0x18, %o4
1202loop_150:
1203 and %o0, %o5, %i1
1204loop_151:
1205 nop
1206
1207 or %g0, 0x8, %l0
1208 sllx %l0, 0x3c, %l0
1209 wrhpr %l0, %g0, %hsys_tick_cmpr
1210 andncc %o1, 0x1A17, %o7
1211 mulscc %g2, 0x0861, %i3
1212 wr %g0, 0x10, %asi
1213 lduwa [%l7 + 0x0C] %asi, %g1
1214 bn %xcc, loop_152
1215 fmul8x16 %f17, %f22, %f2
1216 or %g7, 0x00B7, %o3
1217 fnands %f26, %f29, %f23
1218loop_152:
1219 fcmped %fcc1, %f2, %f14
1220 fmovdvs %icc, %f0, %f0
1221 wr %g0, 0x89, %asi
1222 lda [%l7 + 0x5C] %asi, %f5
1223 fand %f2, %f24, %f2
1224 nop
1225 fitos %f2, %f7
1226 fstox %f7, %f16
1227 fxtos %f16, %f6
1228 fbul %fcc0, loop_153
1229 fmovdge %icc, %f4, %f28
1230 nop
1231 setx 0xFF06377D, %l0, %l6
1232 st %l6, [%l7 + 0x7C]
1233 ld [%l7 + 0x7C], %fsr
1234 fmovrsgez %l4, %f5, %f21
1235loop_153:
1236 fmovdule %fcc0, %f6, %f24
1237 movne %fcc1, %l6, %i6
1238 call loop_154
1239 brnz,a,pn %g6, loop_155
1240 fpadd32 %f14, %f4, %f14
1241 fmovdvc %xcc, %f4, %f10
1242loop_154:
1243 call loop_156
1244loop_155:
1245 movue %fcc1, %o2, %i0
1246 fmovdul %fcc0, %f4, %f10
1247 fcmple32 %f6, %f22, %g3
1248loop_156:
1249 rdpr %pil, %l5
1250 fmovdu %fcc3, %f26, %f12
1251 call loop_157
1252 fmovrse %i4, %f2, %f3
1253 call loop_158
1254 ba,pt %xcc, loop_159
1255loop_157:
1256 call loop_160
1257 fandnot1s %f6, %f15, %f14
1258loop_158:
1259 bcs,pn %icc, loop_161
1260loop_159:
1261 fmovrdgz %g5, %f26, %f18
1262loop_160:
1263 fmovda %fcc0, %f4, %f8
1264 bvc,a,pt %icc, loop_162
1265loop_161:
1266 call loop_163
1267 tn %icc, 0x1
1268 rd %ccr, %o6
1269loop_162:
1270 fmovrslez %l0, %f9, %f4
1271loop_163:
1272 fmovsleu %icc, %f17, %f1
1273 fmuld8ulx16 %f4, %f1, %f18
1274 call loop_164
1275 call loop_165
1276 rdpr %wstate, %l1
1277 nop
1278 setx 0x288BD079, %l0, %l6
1279 st %l6, [%l7 + 0x40]
1280 ld [%l7 + 0x40], %fsr
1281loop_164:
1282 movue %fcc2, %i5, %g4
1283loop_165:
1284 alignaddr %i7, %o4, %i2
1285 edge8l %o0, %i1, %o5
1286 movvs %xcc, 0x6DD, %l3
1287 nop
1288 fitod %f4, %f8
1289 fdtoi %f8, %f8
1290 nop
1291 setx 0x993D2785, %l0, %l6
1292 st %l6, [%l7 + 0x28]
1293 ld [%l7 + 0x28], %f16
1294 setx 0x0D965C32, %l1, %l5
1295 st %l5, [%l7 + 0x10]
1296 ld [%l7 + 0x10], %f7
1297 fsubs %f7, %f16, %f11
1298 fzeros %f9
1299 movue %fcc1, 0x37B, %l2
1300 call loop_166
1301 fbl %fcc2, loop_167
1302 brnz %o7, loop_168
1303 movrgz %g2, 0x138, %o1
1304loop_166:
1305 fbule,a,pt %fcc1, loop_169
1306loop_167:
1307 flushw
1308loop_168:
1309 call loop_170
1310 fone %f18
1311loop_169:
1312 fsrc2 %f2, %f2
1313 nop
1314 setx 0x5918F023B6E79F63, %l0, %l6
1315 stx %l6, [%l7 + 0x28]
1316 ldd [%l7 + 0x28], %f2
1317 setx 0xA641AA225D2A5AD6, %l1, %l5
1318 stx %l5, [%l7 + 0x10]
1319 ldd [%l7 + 0x10], %f28
1320 fdivd %f28, %f2, %f14
1321loop_170:
1322 call loop_171
1323 edge16ln %g1, %g7, %o3
1324 call loop_172
1325 call loop_173
1326loop_171:
1327 udivx %l4, 0x011D, %i3
1328 nop
1329 fitos %f6, %f2
1330 fstoi %f2, %f16
1331loop_172:
1332 array8 %i6, %l6, %g6
1333loop_173:
1334 call loop_174
1335 call loop_175
1336 wr %o2, %g3, %sys_tick
1337 fmovrse %l5, %f11, %f3
1338loop_174:
1339 call loop_176
1340loop_175:
1341 nop
1342 setx 0xBBA13AB8, %l0, %l6
1343 st %l6, [%l7 + 0x28]
1344 ld [%l7 + 0x28], %f30
1345 setx 0xC66C3B6A, %l1, %l5
1346 st %l5, [%l7 + 0x10]
1347 ld [%l7 + 0x10], %f8
1348 fdivs %f8, %f30, %f21
1349 call loop_177
1350 rd %sys_tick_cmpr, %i0
1351loop_176:
1352 edge8ln %i4, %o6, %g5
1353 wr %g0, 0x80, %asi
1354 lda [%l7 + 0x34] %asi, %f29
1355loop_177:
1356 movle %xcc, 0x3AF, %l1
1357 fpadd32s %f22, %f18, %f2
1358 bvc %icc, loop_178
1359 edge32l %l0, %i5, %g4
1360 fmovdneg %icc, %f10, %f14
1361 te %xcc, 0x3
1362loop_178:
1363 tvs %icc, 0x4
1364 nop
1365 setx 0xA4D7D9B895054C5A, %l0, %l6
1366 stx %l6, [%l7 + 0x20]
1367 ldx [%l7 + 0x20], %fsr
1368 fmovdo %fcc0, %f10, %f8
1369 alignaddr %i7, %i2, %o4
1370 nop
1371 set 0x70, %g1
1372 stx %o0, [%l7 + %g1]
1373 fpadd16 %f14, %f2, %f0
1374 popc 0x02FA, %o5
1375 nop
1376 set 0x58, %o6
1377 lduw [%l7 + %o6], %l3
1378 fpmerge %f22, %f11, %f12
1379 call loop_179
1380 call loop_180
1381 call loop_181
1382 fnor %f8, %f0, %f16
1383loop_179:
1384 rdpr %cwp, %l2
1385loop_180:
1386 edge32l %i1, %g2, %o1
1387loop_181:
1388 nop
1389 setx 0x577EA503BBFF4AA2, %l0, %l6
1390 stx %l6, [%l7 + 0x28]
1391 ldd [%l7 + 0x28], %f30
1392 setx 0xD926FA5775C247FB, %l1, %l5
1393 stx %l5, [%l7 + 0x10]
1394 ldd [%l7 + 0x10], %f2
1395 fsubd %f2, %f30, %f22
1396 edge16ln %g1, %g7, %o7
1397 sdivcc %o3, 0x12A5, %l4
1398 srlx %i6, 0x00, %l6
1399 andncc %g6, %o2, %i3
1400 nop
1401 setx 0x20844710, %l0, %l6
1402 st %l6, [%l7 + 0x28]
1403 ld [%l7 + 0x28], %f19
1404 setx 0x3522D497, %l1, %l5
1405 st %l5, [%l7 + 0x10]
1406 ld [%l7 + 0x10], %f19
1407 fmuls %f19, %f19, %f5
1408 wr %l5, %i0, %clear_softint
1409 call loop_182
1410 fmovduge %fcc1, %f22, %f28
1411 lduh [%l7 + 0x7E], %i4
1412 fmovrsgez %g3, %f27, %f11
1413loop_182:
1414 fmovrdgez %o6, %f20, %f12
1415 tn %xcc, 0x4
1416 fcmpd %fcc0, %f20, %f10
1417 addcc %l1, 0x0A17, %l0
1418 call loop_183
1419loop_183:
1420 nop
1421
1422 EXIT_GOOD
1423
1424
1425
1426!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1427!
1428! Stats for Thread 2:
1429!
1430! Type l : 11
1431! Type a : 12
1432! Type x : 4
1433! Type cti : 61
1434! Type f : 62
1435! Type i : 50
1436!
1437!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1438
1439!
1440! Thread 3 Start
1441!
1442main_t3:
1443 mov %l7, %g1
1444 !# Set %cwp for 8 windows
1445 !# This threads memory space into each %l7
1446 wrpr %g0, 0x7, %cwp
1447 mov %g1, %l7
1448 wrpr %g0, 0x6, %cwp
1449 mov %g1, %l7
1450 wrpr %g0, 0x5, %cwp
1451 mov %g1, %l7
1452 wrpr %g0, 0x4, %cwp
1453 mov %g1, %l7
1454 wrpr %g0, 0x3, %cwp
1455 mov %g1, %l7
1456 wrpr %g0, 0x2, %cwp
1457 mov %g1, %l7
1458 wrpr %g0, 0x1, %cwp
1459 mov %g1, %l7
1460 wrpr %g0, 0x0, %cwp
1461 mov %g1, %l7
1462
1463 !# Set %fsr
1464 setx 0x0000000000000000, %l0, %l6 !# no post process
1465 stx %l6, [%l7 + 0x0] !# no post process
1466 ldx [%l7 + 0x0], %fsr !# no post process
1467
1468 !# Initialize registers ..
1469
1470 !# Global registers
1471 set 0xF, %g1
1472 set 0xC, %g2
1473 set 0xF, %g3
1474 set 0xE, %g4
1475 set 0x7, %g5
1476 set 0xD, %g6
1477 set 0x1, %g7
1478 !# Input registers
1479 set -0x1, %i0
1480 set -0x9, %i1
1481 set -0x2, %i2
1482 set -0x2, %i3
1483 set -0x8, %i4
1484 set -0x0, %i5
1485 set -0x6, %i6
1486 set -0xB, %i7
1487 !# Local registers
1488 set 0x5AB931B0, %l0
1489 set 0x670949BE, %l1
1490 set 0x0CCA8624, %l2
1491 set 0x19583D40, %l3
1492 set 0x7CC0B5C0, %l4
1493 set 0x4D9DDEDC, %l5
1494 set 0x70121965, %l6
1495 !# Output registers
1496 set -0x1956, %o0
1497 set -0x0F68, %o1
1498 set -0x1B9A, %o2
1499 set 0x13B0, %o3
1500 set -0x0EC4, %o4
1501 set 0x05DA, %o5
1502 set 0x0F57, %o6
1503 set 0x0C98, %o7
1504 !# Float registers
1505 INIT_TH_FP_REG(%l7,%f0,0xBDC02D05494A9F57)
1506 INIT_TH_FP_REG(%l7,%f2,0x882D54E409A81313)
1507 INIT_TH_FP_REG(%l7,%f4,0x4B62A896F84501EF)
1508 INIT_TH_FP_REG(%l7,%f6,0x024591A99765DD14)
1509 INIT_TH_FP_REG(%l7,%f8,0x973680810C5E654C)
1510 INIT_TH_FP_REG(%l7,%f10,0x6F172A3F35C8DEA3)
1511 INIT_TH_FP_REG(%l7,%f12,0x550BD6991F22F32F)
1512 INIT_TH_FP_REG(%l7,%f14,0xC23E230E73B5EA0B)
1513 INIT_TH_FP_REG(%l7,%f16,0x8B432D4FA91DAF47)
1514 INIT_TH_FP_REG(%l7,%f18,0xE07D2E4B2229E84A)
1515 INIT_TH_FP_REG(%l7,%f20,0x82BAC4E828D38A05)
1516 INIT_TH_FP_REG(%l7,%f22,0x9D595B6BCC62A44F)
1517 INIT_TH_FP_REG(%l7,%f24,0xD0FD43FC16F917F2)
1518 INIT_TH_FP_REG(%l7,%f26,0xED4F08CF9CC2465D)
1519 INIT_TH_FP_REG(%l7,%f28,0xC86ED0FF8793FFE4)
1520 INIT_TH_FP_REG(%l7,%f30,0x2962878FB08EBDCA)
1521
1522 !# Execute Main Diag ..
1523
1524 rdhpr %htba, %g5
1525 movrgez %g4, %i5, %i7
1526 move %icc, %i2, %o4
1527 nop
1528 setx 0x04C7708567BDB171, %l0, %l6
1529 stx %l6, [%l7 + 0x28]
1530 ldd [%l7 + 0x28], %f26
1531 setx 0x421789E89F077EEC, %l1, %l5
1532 stx %l5, [%l7 + 0x10]
1533 ldd [%l7 + 0x10], %f30
1534 fmuld %f30, %f26, %f6
1535 call loop_184
1536 bmask %o0, %l3, %o5
1537 call loop_185
1538 call loop_186
1539loop_184:
1540 fmovda %icc, %f12, %f24
1541 tge %xcc, 0x6
1542loop_185:
1543 nop
1544 set 0x70, %g7
1545 sta %f26, [%l7 + %g7] 0x19
1546loop_186:
1547 tl %xcc, 0x3
1548 rdhpr %hpstate, %i1
1549 fmovsu %fcc2, %f21, %f1
1550 movrlez %g2, %o1, %g1
1551 faligndata %f12, %f22, %f22
1552 fcmpgt32 %f4, %f2, %g7
1553 bvs %xcc, loop_187
1554 pdist %f14, %f4, %f0
1555 fmul8x16 %f18, %f24, %f14
1556 call loop_188
1557loop_187:
1558 fmovdug %fcc1, %f28, %f22
1559
1560 or %g0, 0x8, %l0
1561 sllx %l0, 0x3c, %l0
1562 wrhpr %l0, 0xB3A, %hsys_tick_cmpr
1563 fmovsl %fcc2, %f23, %f30
1564loop_188:
1565 fblg %fcc2, loop_189
1566 for %f28, %f14, %f24
1567 movgu %xcc, %l4, %i6
1568 call loop_190
1569loop_189:
1570 fpsub32 %f0, %f4, %f8
1571 fbn,a %fcc0, loop_191
1572 call loop_192
1573loop_190:
1574 call loop_193
1575 rdhpr %hintp, %l2
1576loop_191:
1577 call loop_194
1578loop_192:
1579 array8 %g6, %o2, %l6
1580loop_193:
1581 movne %fcc1, %l5, %i3
1582 fcmpgt32 %f22, %f8, %i0
1583loop_194:
1584 fandnot1s %f1, %f11, %f21
1585 wrpr %g3, %i4, %cwp
1586 call loop_195
1587 srl %o6, 0x16, %l1
1588 nop
1589 setx 0xAA3DAC30C89F140A, %l0, %l6
1590 stx %l6, [%l7 + 0x28]
1591 ldd [%l7 + 0x28], %f12
1592 setx 0x13F31285A4170157, %l1, %l5
1593 stx %l5, [%l7 + 0x10]
1594 ldd [%l7 + 0x10], %f0
1595 fsubd %f0, %f12, %f8
1596 stx %g5, [%l7 + 0x50]
1597loop_195:
1598 call loop_196
1599 bvc,pt %xcc, loop_197
1600 bvc,a %xcc, loop_198
1601 call loop_199
1602loop_196:
1603 fpadd16 %f0, %f12, %f6
1604loop_197:
1605 call loop_200
1606loop_198:
1607 movuge %fcc2, 0x577, %l0
1608loop_199:
1609 orn %g4, 0x1BE9, %i7
1610 fmovdn %icc, %f8, %f30
1611loop_200:
1612 add %i5, %i2, %o0
1613 rdpr %tba, %o4
1614 movrgez %l3, %o5, %g2
1615 andncc %o1, %i1, %g7
1616 movrgez %g1, %o3, %o7
1617 umulcc %l4, %i6, %g6
1618 nop
1619 set 0x68, %o0
1620 ldsw [%l7 + %o0], %l2
1621 bn,pn %xcc, loop_201
1622 tneg %icc, 0x5
1623 movu %fcc3, %l6, %o2
1624 tn %xcc, 0x5
1625loop_201:
1626 fmovsvs %xcc, %f24, %f19
1627 call loop_202
1628 call loop_203
1629 fcmpne32 %f4, %f18, %i3
1630 fcmpes %fcc1, %f0, %f14
1631loop_202:
1632 add %l5, %i0, %i4
1633loop_203:
1634 bshuffle %f14, %f2, %f6
1635 edge16ln %o6, %g3, %g5
1636 call loop_204
1637 fcmpne16 %f20, %f30, %l0
1638 call loop_205
1639 fmovrdne %l1, %f0, %f26
1640loop_204:
1641 sir 0x0E8E
1642 nop
1643 setx 0xEB04642DFAF4D05D, %l0, %l6
1644 stx %l6, [%l7 + 0x28]
1645 ldd [%l7 + 0x28], %f24
1646 setx 0xA0A576834D1B9FDB, %l1, %l5
1647 stx %l5, [%l7 + 0x10]
1648 ldd [%l7 + 0x10], %f26
1649 fsubd %f26, %f24, %f30
1650loop_205:
1651 sdivx %i7, 0x0CAE, %g4
1652 fnot1s %f19, %f28
1653 mulx %i5, %i2, %o4
1654 tleu %xcc, 0x5
1655 fnegs %f19, %f16
1656 edge32 %o0, %o5, %l3
1657 edge16ln %o1, %g2, %g7
1658 fpsub16s %f11, %f10, %f16
1659 call loop_206
1660 wr %g1, 0x02C7, %ccr
1661 fmovdcs %icc, %f0, %f2
1662 fpack16 %f30, %f8
1663loop_206:
1664 call loop_207
1665 srax %o3, %i1, %l4
1666 taddcc %i6, 0x1252, %g6
1667 call loop_208
1668loop_207:
1669 call loop_209
1670 orn %l2, %l6, %o2
1671 call loop_210
1672loop_208:
1673 call loop_211
1674loop_209:
1675 nop
1676 fitod %f4, %f16
1677 fdtox %f16, %f14
1678 fxtod %f14, %f20
1679 fmul8sux16 %f16, %f14, %f2
1680loop_210:
1681 fmovdle %fcc2, %f18, %f0
1682loop_211:
1683 bmask %o7, %l5, %i3
1684 flushw
1685 nop
1686 fitod %f6, %f12
1687 fdtox %f12, %f4
1688 fmuld8sux16 %f30, %f2, %f6
1689 call loop_212
1690 fmovdpos %icc, %f26, %f30
1691 rdpr %otherwin, %i4
1692 fmovdge %icc, %f10, %f30
1693loop_212:
1694 call loop_213
1695 orn %o6, %i0, %g3
1696 call loop_214
1697 movvs %xcc, %l0, %g5
1698loop_213:
1699 call loop_215
1700 fsrc2s %f10, %f23
1701loop_214:
1702 fcmpeq16 %f12, %f24, %l1
1703 call loop_216
1704loop_215:
1705 brlez,a,pt %i7, loop_217
1706 ldsh [%l7 + 0x58], %i5
1707 fmovde %fcc1, %f16, %f6
1708loop_216:
1709 fnot2s %f31, %f20
1710loop_217:
1711 umulcc %i2, 0x1ADB, %g4
1712 membar 0x4C
1713 fpadd16 %f18, %f4, %f2
1714 nop
1715 fitod %f0, %f30
1716 fmovdl %fcc3, %f28, %f10
1717 fandnot1s %f17, %f30, %f0
1718 fmovdleu %xcc, %f22, %f30
1719 fmovsa %fcc3, %f20, %f6
1720 nop
1721 setx 0x073C, %l0, %o0
1722 udivx %o4, %o0, %o5
1723 fxors %f18, %f16, %f25
1724 fmul8x16al %f25, %f9, %f16
1725 andn %o1, 0x02DC, %l3
1726 rdpr %otherwin, %g7
1727 movneg %icc, 0x54C, %g2
1728 call loop_218
1729 nop
1730 fitod %f4, %f28
1731 fdtox %f28, %f12
1732 fnands %f23, %f25, %f15
1733 fpadd32s %f2, %f23, %f28
1734loop_218:
1735 movue %fcc2, 0x1C3, %g1
1736 umul %i1, 0x00D2, %o3
1737 fmovrse %l4, %f20, %f23
1738 call loop_219
1739 fbl %fcc0, loop_220
1740 edge8l %i6, %g6, %l2
1741 call loop_221
1742loop_219:
1743 nop
1744 fitod %f20, %f10
1745loop_220:
1746 fmovrsne %o2, %f29, %f13
1747 membar 0x5C
1748loop_221:
1749 fmovrdlz %l6, %f26, %f30
1750 fmovdvs %xcc, %f12, %f22
1751 ldx [%l7 + 0x58], %o7
1752 call loop_222
1753 fmovdcs %xcc, %f22, %f14
1754 call loop_223
1755 fands %f22, %f28, %f31
1756loop_222:
1757 call loop_224
1758 call loop_225
1759loop_223:
1760 fmovsa %fcc3, %f21, %f29
1761 call loop_226
1762loop_224:
1763 smulcc %i3, %l5, %i4
1764loop_225:
1765 fmovdug %fcc1, %f26, %f30
1766 sethi 0x1F02, %o6
1767loop_226:
1768 fmovrsgez %i0, %f26, %f10
1769 call loop_227
1770 sub %g3, 0x02E9, %l0
1771 be %xcc, loop_228
1772 fnegd %f20, %f8
1773loop_227:
1774 movneg %xcc, %l1, %g5
1775 sethi 0x04DE, %i7
1776loop_228:
1777 fmovrdgz %i5, %f6, %f0
1778 call loop_229
1779 fmovsl %fcc1, %f13, %f0
1780 fmovdug %fcc3, %f22, %f16
1781 call loop_230
1782loop_229:
1783 movre %i2, %o4, %g4
1784 movvc %icc, 0x386, %o0
1785 fone %f2
1786loop_230:
1787 call loop_231
1788 nop
1789 setx 0xD7EB8714F6D5B6E1, %l0, %l6
1790 stx %l6, [%l7 + 0x28]
1791 ldd [%l7 + 0x28], %f8
1792 setx 0xD0DB5068, %l1, %l5
1793 stx %l5, [%l7 + 0x10]
1794 ldd [%l7 + 0x10], %f6
1795 fsmuld %f6, %f8, %f18
1796 call loop_232
1797 fnot1s %f13, %f8
1798loop_231:
1799 nop
1800 set 0x70, %l3
1801 stx %fsr, [%l7 + %l3]
1802 tvc %icc, 0x5
1803loop_232:
1804 saved
1805 rdpr %cwp, %g1
1806 rdpr %cansave, %g2
1807 rdpr %canrestore, %g3
1808 rdpr %cleanwin, %g4
1809 rdpr %otherwin, %g5
1810 rdpr %wstate, %g6
1811 fmovdvc %icc, %f30, %f2
1812 wr %g0, 0x89, %asi
1813 ldstuba [%l7 + 0x68] %asi, %o5
1814 call loop_233
1815 fmovdug %fcc1, %f4, %f0
1816 call loop_234
1817 brz %o1, loop_235
1818loop_233:
1819 fmovsa %fcc3, %f3, %f1
1820 wr %g0, 0x0c, %asi
1821 ldstuba [%l7 + 0x10] %asi, %g7
1822loop_234:
1823 and %l3, %g1, %i1
1824loop_235:
1825 tne %xcc, 0x5
1826 call loop_236
1827 xnor %o3, 0x1313, %g2
1828 call loop_237
1829loop_236:
1830 nop
1831
1832loop_237:
1833 nop
1834
1835 EXIT_GOOD
1836
1837
1838
1839!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1840!
1841! Stats for Thread 3:
1842!
1843! Type l : 8
1844! Type a : 9
1845! Type x : 3
1846! Type cti : 54
1847! Type f : 70
1848! Type i : 56
1849!
1850!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1851
1852!
1853! Thread 4 Start
1854!
1855main_t4:
1856 mov %l7, %g1
1857 !# Set %cwp for 8 windows
1858 !# This threads memory space into each %l7
1859 wrpr %g0, 0x7, %cwp
1860 mov %g1, %l7
1861 wrpr %g0, 0x6, %cwp
1862 mov %g1, %l7
1863 wrpr %g0, 0x5, %cwp
1864 mov %g1, %l7
1865 wrpr %g0, 0x4, %cwp
1866 mov %g1, %l7
1867 wrpr %g0, 0x3, %cwp
1868 mov %g1, %l7
1869 wrpr %g0, 0x2, %cwp
1870 mov %g1, %l7
1871 wrpr %g0, 0x1, %cwp
1872 mov %g1, %l7
1873 wrpr %g0, 0x0, %cwp
1874 mov %g1, %l7
1875
1876 !# Set %fsr
1877 setx 0x0000000000000000, %l0, %l6 !# no post process
1878 stx %l6, [%l7 + 0x0] !# no post process
1879 ldx [%l7 + 0x0], %fsr !# no post process
1880
1881 !# Initialize registers ..
1882
1883 !# Global registers
1884 set 0xC, %g1
1885 set 0x1, %g2
1886 set 0x7, %g3
1887 set 0x1, %g4
1888 set 0x9, %g5
1889 set 0xD, %g6
1890 set 0xC, %g7
1891 !# Input registers
1892 set -0xA, %i0
1893 set -0xB, %i1
1894 set -0x6, %i2
1895 set -0x5, %i3
1896 set -0x5, %i4
1897 set -0x6, %i5
1898 set -0x4, %i6
1899 set -0x6, %i7
1900 !# Local registers
1901 set 0x6339DFF3, %l0
1902 set 0x24CCC389, %l1
1903 set 0x76C859E2, %l2
1904 set 0x37135489, %l3
1905 set 0x41CF9892, %l4
1906 set 0x6FA1B3B7, %l5
1907 set 0x48BD4C79, %l6
1908 !# Output registers
1909 set 0x1DE9, %o0
1910 set 0x1723, %o1
1911 set -0x0DE8, %o2
1912 set -0x03B3, %o3
1913 set 0x1E88, %o4
1914 set 0x19BE, %o5
1915 set -0x1E87, %o6
1916 set 0x083E, %o7
1917 !# Float registers
1918 INIT_TH_FP_REG(%l7,%f0,0xBDC02D05494A9F57)
1919 INIT_TH_FP_REG(%l7,%f2,0x882D54E409A81313)
1920 INIT_TH_FP_REG(%l7,%f4,0x4B62A896F84501EF)
1921 INIT_TH_FP_REG(%l7,%f6,0x024591A99765DD14)
1922 INIT_TH_FP_REG(%l7,%f8,0x973680810C5E654C)
1923 INIT_TH_FP_REG(%l7,%f10,0x6F172A3F35C8DEA3)
1924 INIT_TH_FP_REG(%l7,%f12,0x550BD6991F22F32F)
1925 INIT_TH_FP_REG(%l7,%f14,0xC23E230E73B5EA0B)
1926 INIT_TH_FP_REG(%l7,%f16,0x8B432D4FA91DAF47)
1927 INIT_TH_FP_REG(%l7,%f18,0xE07D2E4B2229E84A)
1928 INIT_TH_FP_REG(%l7,%f20,0x82BAC4E828D38A05)
1929 INIT_TH_FP_REG(%l7,%f22,0x9D595B6BCC62A44F)
1930 INIT_TH_FP_REG(%l7,%f24,0xD0FD43FC16F917F2)
1931 INIT_TH_FP_REG(%l7,%f26,0xED4F08CF9CC2465D)
1932 INIT_TH_FP_REG(%l7,%f28,0xC86ED0FF8793FFE4)
1933 INIT_TH_FP_REG(%l7,%f30,0x2962878FB08EBDCA)
1934
1935 !# Execute Main Diag ..
1936
1937 call loop_238
1938 nop
1939 setx 0x03EF, %l0, %i6
1940 sdivcc %l4, %i6, %g6
1941 fzeros %f16
1942 call loop_239
1943loop_238:
1944 rdhpr %ver, %l2
1945 call loop_240
1946 movuge %fcc3, %o2, %l6
1947loop_239:
1948 movcs %icc, 0x332, %o7
1949 call loop_241
1950loop_240:
1951 call loop_242
1952 rdhpr %hintp, %l5
1953 nop
1954 set 0x79, %l2
1955 ldub [%l7 + %l2], %i3
1956loop_241:
1957 call loop_243
1958loop_242:
1959 call loop_244
1960 fmovdne %fcc1, %f20, %f28
1961 nop
1962 set 0x32, %l6
1963 sth %o6, [%l7 + %l6]
1964loop_243:
1965 fmovrdgz %i0, %f10, %f14
1966loop_244:
1967 fnot1s %f5, %f13
1968 bne,pn %icc, loop_245
1969 call loop_246
1970 movcs %icc, %i4, %l0
1971 call loop_247
1972loop_245:
1973 call loop_248
1974loop_246:
1975 nop
1976 setx 0x3F43B0215B9EABFF, %l0, %l6
1977 stx %l6, [%l7 + 0x28]
1978 ldd [%l7 + 0x28], %f28
1979 setx 0x172FF93525A2D480, %l1, %l5
1980 stx %l5, [%l7 + 0x10]
1981 ldd [%l7 + 0x10], %f12
1982 fdivd %f12, %f28, %f2
1983 call loop_249
1984loop_247:
1985 fxnors %f9, %f11, %f7
1986loop_248:
1987 nop
1988 set 0x70, %o7
1989 stda %g2, [%l7 + %o7] 0x2f
1990 membar #Sync
1991loop_249:
1992 call loop_250
1993 call loop_251
1994 fmovdcc %icc, %f26, %f0
1995 edge8 %l1, %i7, %g5
1996loop_250:
1997 call loop_252
1998loop_251:
1999 fmovsne %icc, %f5, %f13
2000 call loop_253
2001 edge32 %i2, %i5, %g4
2002loop_252:
2003 fmovsge %icc, %f3, %f27
2004 xnorcc %o4, %o0, %o1
2005loop_253:
2006 fcmple16 %f26, %f8, %o5
2007 call loop_254
2008 fzeros %f15
2009 bcc %xcc, loop_255
2010 fsrc1 %f8, %f2
2011loop_254:
2012 call loop_256
2013 alignaddr %g7, %l3, %i1
2014loop_255:
2015 call loop_257
2016 bcc,pn %xcc, loop_258
2017loop_256:
2018 rdhpr %hintp, %g1
2019 bmask %o3, %l4, %g2
2020loop_257:
2021 call loop_259
2022loop_258:
2023 fpsub32 %f8, %f0, %f20
2024 wr %i6, %l2, %softint
2025 call loop_260
2026loop_259:
2027 bgu,pn %icc, loop_261
2028 edge16ln %o2, %l6, %g6
2029 wr %l5, 0x0FB9, %set_softint
2030loop_260:
2031 call loop_262
2032loop_261:
2033 fmovsne %xcc, %f9, %f15
2034 call loop_263
2035 fmovsneg %xcc, %f9, %f18
2036loop_262:
2037 call loop_264
2038 rdhpr %ver, %o7
2039loop_263:
2040 faligndata %f30, %f26, %f30
2041 wrpr %i3, %i0, %pil
2042loop_264:
2043 taddcc %i4, 0x0E2C, %l0
2044 subcc %g3, %l1, %o6
2045 xorcc %g5, 0x097C, %i2
2046 wrpr %i7, 0x0D95, %tick
2047 subcc %i5, 0x0FC9, %o4
2048 fmovsul %fcc1, %f18, %f1
2049 call loop_265
2050 nop
2051 fitos %f11, %f22
2052 fstox %f22, %f8
2053 call loop_266
2054 call loop_267
2055loop_265:
2056 move %icc, %o0, %g4
2057 call loop_268
2058loop_266:
2059 fmovs %f14, %f9
2060loop_267:
2061 andncc %o5, 0x02CA, %g7
2062 edge8ln %l3, %o1, %i1
2063loop_268:
2064 fmovsne %icc, %f20, %f29
2065 fone %f28
2066 edge8n %g1, %o3, %l4
2067 movul %fcc1, %i6, %l2
2068 call loop_269
2069 fmovrdne %o2, %f18, %f26
2070
2071 or %g0, 0x8, %l0
2072 sllx %l0, 0x3c, %l0
2073 wrhpr %l0, %g0, %hsys_tick_cmpr
2074 call loop_270
2075loop_269:
2076 bg,a %icc, loop_271
2077 udivx %l6, 0x1B7A, %l5
2078 tgu %xcc, 0x4
2079loop_270:
2080 nop
2081 setx 0x775FD88C3EFB2CE2, %l0, %l6
2082 stx %l6, [%l7 + 0x28]
2083 ldd [%l7 + 0x28], %f16
2084 fsqrtd %f16, %f28
2085loop_271:
2086 taddcctv %o7, 0x07BA, %i3
2087 nop
2088 setx 0x0E1D8E94C49BAAC9, %l0, %l6
2089 stx %l6, [%l7 + 0x28]
2090 ldd [%l7 + 0x28], %f30
2091 setx 0x8803C81908C3DD1E, %l1, %l5
2092 stx %l5, [%l7 + 0x10]
2093 ldd [%l7 + 0x10], %f4
2094 faddd %f4, %f30, %f18
2095 fmovsug %fcc1, %f11, %f8
2096 call loop_272
2097 addcc %g6, 0x1FD8, %i4
2098 movle %fcc2, 0x5AA, %i0
2099 fmovsue %fcc1, %f3, %f28
2100loop_272:
2101 call loop_273
2102 nop
2103 fitod %f18, %f24
2104 andn %g3, 0x0416, %l1
2105 rd %pc, %l0
2106loop_273:
2107 nop
2108 fitod %f2, %f18
2109 fdtox %f18, %f18
2110 call loop_274
2111 call loop_275
2112 nop
2113 fitod %f12, %f4
2114 fdtoi %f4, %f2
2115 udiv %g5, 0x10BE, %i2
2116loop_274:
2117 nop
2118 setx 0xB24FB5ADA15C4422, %l0, %l6
2119 stx %l6, [%l7 + 0x28]
2120 ldd [%l7 + 0x28], %f16
2121 setx 0xB7A18B029694E950, %l1, %l5
2122 stx %l5, [%l7 + 0x10]
2123 ldd [%l7 + 0x10], %f6
2124 faddd %f6, %f16, %f28
2125loop_275:
2126 call loop_276
2127 fmovrslez %o6, %f10, %f20
2128 nop
2129 setx 0x8247C221, %l0, %l6
2130 st %l6, [%l7 + 0x28]
2131 ld [%l7 + 0x28], %f4
2132 setx 0xBC26BC76, %l1, %l5
2133 st %l5, [%l7 + 0x10]
2134 ld [%l7 + 0x10], %f15
2135 fsubs %f15, %f4, %f10
2136 fnot1 %f28, %f16
2137loop_276:
2138 rdhpr %hintp, %i5
2139 nop
2140 setx loop_277, %l0, %l1
2141 jmpl %l1, %i7
2142 fmovso %fcc1, %f23, %f31
2143 sth %o4, [%l7 + 0x5C]
2144 fmovrdlz %g4, %f26, %f20
2145loop_277:
2146 call loop_278
2147 fexpand %f5, %f4
2148 call loop_279
2149 fmovdn %fcc3, %f2, %f8
2150loop_278:
2151 nop
2152 fitod %f10, %f20
2153 fdtos %f20, %f29
2154 add %o0, 0x02CA, %o5
2155loop_279:
2156 fpack32 %f2, %f0, %f8
2157 fmovso %fcc1, %f26, %f12
2158 movle %fcc3, 0x30D, %g7
2159 call loop_280
2160 saved
2161 rdpr %cwp, %g1
2162 rdpr %cansave, %g2
2163 rdpr %canrestore, %g3
2164 rdpr %cleanwin, %g4
2165 rdpr %otherwin, %g5
2166 rdpr %wstate, %g6
2167 movvs %xcc, %l3, %i1
2168 fsrc1 %f4, %f6
2169loop_280:
2170 fmovsle %fcc2, %f29, %f5
2171 andcc %g1, 0x0E77, %o3
2172 call loop_281
2173 tl %xcc, 0x5
2174 call loop_282
2175 wr %o1, 0x0BB5, %softint
2176loop_281:
2177 edge8l %l4, %l2, %i6
2178 nop
2179 set 0x70, %g2
2180 lduh [%l7 + %g2], %g2
2181loop_282:
2182 movrne %o2, %l5, %l6
2183 call loop_283
2184 tge %xcc, 0x3
2185 call loop_284
2186 call loop_285
2187loop_283:
2188 call loop_286
2189 fmul8ulx16 %f8, %f2, %f16
2190loop_284:
2191 fmovrsne %i3, %f9, %f21
2192loop_285:
2193 fmovrse %o7, %f18, %f24
2194loop_286:
2195 call loop_287
2196 movu %fcc3, 0x6C3, %g6
2197 brlez,pt %i4, loop_288
2198 brz %i0, loop_289
2199loop_287:
2200 call loop_290
2201 rdhpr %hpstate, %g3
2202loop_288:
2203 xorcc %l1, 0x107D, %l0
2204loop_289:
2205 sra %g5, %i2, %i5
2206loop_290:
2207 fnegs %f29, %f30
2208 bmask %i7, %o4, %o6
2209 set 0x20, %l4
2210 lda [%l7 + %l4] 0x88, %f27
2211 array8 %g4, %o5, %g7
2212 movneg %icc, 0x1B8, %l3
2213 nop
2214 fitod %f2, %f0
2215 fdtos %f0, %f31
2216 nop
2217 fitos %f1, %f18
2218 fstoi %f18, %f18
2219 srax %o0, %g1, %i1
2220 fandnot1 %f10, %f10, %f14
2221 movug %fcc1, 0x4E2, %o1
2222 nop
2223 set 0x14, %g4
2224 flush %l7 + %g4
2225 alignaddrl %l4, %o3, %l2
2226 fmul8x16 %f27, %f4, %f14
2227 sdiv %g2, 0x189C, %o2
2228
2229 or %g0, 0x8, %l0
2230 sllx %l0, 0x3c, %l0
2231 wr %l0, %g0, %sys_tick_cmpr
2232 call loop_291
2233 fmovdgu %icc, %f0, %f26
2234 flushw
2235 tg %xcc, 0x7
2236loop_291:
2237 fandnot1s %f4, %f0, %f0
2238 call loop_292
2239 fsrc1 %f28, %f24
2240 rd %pc, %i3
2241 call loop_293
2242loop_292:
2243 tcs %xcc, 0x4
2244 call loop_294
2245 fandnot1 %f14, %f30, %f2
2246loop_293:
2247 fmovsvc %xcc, %f7, %f2
2248
2249 or %g0, 0x8, %l0
2250 sllx %l0, 0x3c, %l0
2251 wrhpr %l0, %g0, %hsys_tick_cmpr
2252loop_294:
2253 fmovdu %fcc2, %f24, %f26
2254 tsubcctv %o7, %i4, %i0
2255 nop
2256 setx 0x1FE2, %l0, %l1
2257 sdiv %g6, %l1, %l0
2258 rdhpr %hsys_tick_cmpr, %g3
2259 bl %xcc, loop_295
2260 fpsub32s %f18, %f10, %f26
2261 movgu %icc, %g5, %i5
2262 xorcc %i2, %o4, %o6
2263loop_295:
2264 rdpr %pil, %g4
2265 addc %i7, 0x08EE, %o5
2266 fmovsn %fcc0, %f5, %f0
2267 call loop_296
2268 call loop_297
2269 fmovdpos %icc, %f8, %f0
2270 call loop_298
2271loop_296:
2272 nop
2273
2274loop_297:
2275 nop
2276
2277loop_298:
2278 nop
2279
2280 EXIT_GOOD
2281
2282
2283
2284!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2285!
2286! Stats for Thread 4:
2287!
2288! Type l : 7
2289! Type a : 18
2290! Type x : 2
2291! Type cti : 61
2292! Type f : 59
2293! Type i : 53
2294!
2295!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2296
2297!
2298! Thread 5 Start
2299!
2300main_t5:
2301 mov %l7, %g1
2302 !# Set %cwp for 8 windows
2303 !# This threads memory space into each %l7
2304 wrpr %g0, 0x7, %cwp
2305 mov %g1, %l7
2306 wrpr %g0, 0x6, %cwp
2307 mov %g1, %l7
2308 wrpr %g0, 0x5, %cwp
2309 mov %g1, %l7
2310 wrpr %g0, 0x4, %cwp
2311 mov %g1, %l7
2312 wrpr %g0, 0x3, %cwp
2313 mov %g1, %l7
2314 wrpr %g0, 0x2, %cwp
2315 mov %g1, %l7
2316 wrpr %g0, 0x1, %cwp
2317 mov %g1, %l7
2318 wrpr %g0, 0x0, %cwp
2319 mov %g1, %l7
2320
2321 !# Set %fsr
2322 setx 0x0000000000000000, %l0, %l6 !# no post process
2323 stx %l6, [%l7 + 0x0] !# no post process
2324 ldx [%l7 + 0x0], %fsr !# no post process
2325
2326 !# Initialize registers ..
2327
2328 !# Global registers
2329 set 0x6, %g1
2330 set 0xA, %g2
2331 set 0x5, %g3
2332 set 0xD, %g4
2333 set 0x4, %g5
2334 set 0xB, %g6
2335 set 0x6, %g7
2336 !# Input registers
2337 set -0x0, %i0
2338 set -0xD, %i1
2339 set -0xC, %i2
2340 set -0x5, %i3
2341 set -0x3, %i4
2342 set -0x5, %i5
2343 set -0x4, %i6
2344 set -0xA, %i7
2345 !# Local registers
2346 set 0x5F4BE024, %l0
2347 set 0x45B831B2, %l1
2348 set 0x0DFFF22F, %l2
2349 set 0x4B143B14, %l3
2350 set 0x6B5A6479, %l4
2351 set 0x154289B0, %l5
2352 set 0x1C8B6792, %l6
2353 !# Output registers
2354 set -0x158D, %o0
2355 set -0x0345, %o1
2356 set -0x047A, %o2
2357 set -0x1E23, %o3
2358 set -0x0B38, %o4
2359 set 0x14F6, %o5
2360 set -0x1D96, %o6
2361 set -0x1AF2, %o7
2362 !# Float registers
2363 INIT_TH_FP_REG(%l7,%f0,0xBDC02D05494A9F57)
2364 INIT_TH_FP_REG(%l7,%f2,0x882D54E409A81313)
2365 INIT_TH_FP_REG(%l7,%f4,0x4B62A896F84501EF)
2366 INIT_TH_FP_REG(%l7,%f6,0x024591A99765DD14)
2367 INIT_TH_FP_REG(%l7,%f8,0x973680810C5E654C)
2368 INIT_TH_FP_REG(%l7,%f10,0x6F172A3F35C8DEA3)
2369 INIT_TH_FP_REG(%l7,%f12,0x550BD6991F22F32F)
2370 INIT_TH_FP_REG(%l7,%f14,0xC23E230E73B5EA0B)
2371 INIT_TH_FP_REG(%l7,%f16,0x8B432D4FA91DAF47)
2372 INIT_TH_FP_REG(%l7,%f18,0xE07D2E4B2229E84A)
2373 INIT_TH_FP_REG(%l7,%f20,0x82BAC4E828D38A05)
2374 INIT_TH_FP_REG(%l7,%f22,0x9D595B6BCC62A44F)
2375 INIT_TH_FP_REG(%l7,%f24,0xD0FD43FC16F917F2)
2376 INIT_TH_FP_REG(%l7,%f26,0xED4F08CF9CC2465D)
2377 INIT_TH_FP_REG(%l7,%f28,0xC86ED0FF8793FFE4)
2378 INIT_TH_FP_REG(%l7,%f30,0x2962878FB08EBDCA)
2379
2380 !# Execute Main Diag ..
2381
2382 movrgez %g7, %o0, %l3
2383 call loop_299
2384 faligndata %f6, %f26, %f20
2385 call loop_300
2386 for %f16, %f4, %f28
2387loop_299:
2388 call loop_301
2389 fmovdl %xcc, %f26, %f22
2390loop_300:
2391 fsrc2s %f2, %f31
2392 fmovdcs %xcc, %f16, %f18
2393loop_301:
2394 xnor %g1, %o1, %l4
2395 call loop_302
2396 call loop_303
2397 fbl,pn %fcc1, loop_304
2398 fandnot1 %f0, %f8, %f10
2399loop_302:
2400 call loop_305
2401loop_303:
2402 wr %i1, %l2, %y
2403loop_304:
2404 sir 0x1E84
2405 edge32 %g2, %o2, %i6
2406loop_305:
2407 nop
2408 setx 0x54678C9B, %l0, %l6
2409 st %l6, [%l7 + 0x6C]
2410 ld [%l7 + 0x6C], %fsr
2411 call loop_306
2412 alignaddrl %l5, %o3, %i3
2413 edge8l %l6, %o7, %i4
2414 call loop_307
2415loop_306:
2416 call loop_308
2417 fmovdul %fcc3, %f30, %f14
2418 call loop_309
2419loop_307:
2420 nop
2421 setx 0x0FF1, %l0, %l1
2422 udiv %i0, %l1, %l0
2423loop_308:
2424 nop
2425 setx loop_310, %l0, %l1
2426 wrpr 0x1, %tl
2427 wrpr %l1, %tpc
2428 add %l1, 0x4, %l1
2429 wrpr %l1, %tnpc
2430 setx 0x001200001401, %l0, %l1
2431 wrpr %l1, %tstate
2432 wrhpr 0x4, %htstate
2433 retry
2434 faligndata %f8, %f24, %f20
2435loop_309:
2436 ldd [%l7 + 0x10], %g2
2437 xorcc %g6, %i5, %g5
2438loop_310:
2439 fcmps %fcc2, %f28, %f0
2440 call loop_311
2441 fbug,pn %fcc0, loop_312
2442 call loop_313
2443 tgu %xcc, 0x2
2444loop_311:
2445 fandnot2s %f1, %f30, %f19
2446loop_312:
2447 movu %fcc3, %o4, %i2
2448loop_313:
2449 fcmped %fcc0, %f16, %f18
2450 fmovrsgez %o6, %f15, %f29
2451 brz %i7, loop_314
2452 fmovsne %fcc2, %f23, %f1
2453 call loop_315
2454 fands %f10, %f25, %f0
2455loop_314:
2456 call loop_316
2457 movrlz %g4, 0x2CF, %o5
2458loop_315:
2459 rd %pc, %o0
2460 wr %g0, 0x04, %asi
2461 lda [%l7 + 0x50] %asi, %f10
2462loop_316:
2463 addccc %g7, 0x1168, %l3
2464 movcs %xcc, 0x11E, %g1
2465 fnot1 %f28, %f30
2466 srlx %o1, %l4, %l2
2467 set 0x64, %i5
2468 ldswa [%l7 + %i5] 0x89, %g2
2469 fcmped %fcc2, %f8, %f24
2470 tl %icc, 0x4
2471 fmovdcs %xcc, %f28, %f2
2472 popc 0x1944, %o2
2473 call loop_317
2474 fbu %fcc3, loop_318
2475 fcmpeq32 %f2, %f2, %i6
2476 call loop_319
2477loop_317:
2478 fpsub16s %f19, %f23, %f16
2479loop_318:
2480 fbug,a,pn %fcc0, loop_320
2481 fabss %f25, %f19
2482loop_319:
2483 orn %l5, %o3, %i3
2484 tn %icc, 0x2
2485loop_320:
2486 nop
2487 setx loop_321, %l0, %l1
2488 wrpr 0x1, %tl
2489 wrpr %l1, %tpc
2490 add %l1, 0x4, %l1
2491 wrpr %l1, %tnpc
2492 setx 0x001100001404, %l0, %l1
2493 wrpr %l1, %tstate
2494 wrhpr 0x4, %htstate
2495 retry
2496 tvs %icc, 0x4
2497 rd %ccr, %i1
2498 bvc,a,pn %icc, loop_322
2499loop_321:
2500 tsubcctv %l6, %o7, %i4
2501 sub %i0, 0x1E12, %l0
2502 smulcc %g3, %g6, %i5
2503loop_322:
2504 call loop_323
2505 prefetch [%l7 + 0x08], 2
2506 fmovscs %xcc, %f25, %f14
2507 fbue,a,pn %fcc0, loop_324
2508loop_323:
2509 rdpr %otherwin, %g5
2510 rd %y, %l1
2511 fors %f15, %f11, %f15
2512loop_324:
2513 call loop_325
2514 call loop_326
2515 call loop_327
2516 call loop_328
2517loop_325:
2518 call loop_329
2519loop_326:
2520 movrne %i2, 0x0B5, %o6
2521loop_327:
2522 fpackfix %f12, %f3
2523loop_328:
2524 wrpr %o4, 0x1DD7, %cwp
2525loop_329:
2526 call loop_330
2527 call loop_331
2528 fpack32 %f18, %f14, %f12
2529 fmovdvc %xcc, %f14, %f0
2530loop_330:
2531 mulscc %i7, %g4, %o0
2532loop_331:
2533 addc %o5, %l3, %g7
2534 fmovdgu %xcc, %f22, %f22
2535 tsubcc %g1, %l4, %o1
2536 sub %l2, %o2, %i6
2537 call loop_332
2538 nop
2539 setx 0x91FD30E5DA6A7AFA, %l0, %l6
2540 stx %l6, [%l7 + 0x28]
2541 ldd [%l7 + 0x28], %f8
2542 setx 0xFF311C718F4B0582, %l1, %l5
2543 stx %l5, [%l7 + 0x10]
2544 ldd [%l7 + 0x10], %f8
2545 fmuld %f8, %f8, %f30
2546 addcc %g2, %l5, %i3
2547 movge %fcc1, 0x05A, %i1
2548loop_332:
2549 fba,a,pt %fcc0, loop_333
2550 bg,a %xcc, loop_334
2551 nop
2552 set 0x48, %o3
2553 ldx [%l7 + %o3], %l6
2554 for %f30, %f28, %f24
2555loop_333:
2556 fcmpes %fcc3, %f30, %f25
2557loop_334:
2558 fbule %fcc1, loop_335
2559 call loop_336
2560 call loop_337
2561 fbl,pt %fcc1, loop_338
2562loop_335:
2563 andn %o7, 0x1FFD, %i4
2564loop_336:
2565 fbug,a,pt %fcc2, loop_339
2566loop_337:
2567 call loop_340
2568loop_338:
2569 restored
2570 rdpr %cwp, %g1
2571 rdpr %cansave, %g2
2572 rdpr %canrestore, %g3
2573 rdpr %cleanwin, %g4
2574 rdpr %otherwin, %g5
2575 rdpr %wstate, %g6
2576 call loop_341
2577loop_339:
2578 call loop_342
2579loop_340:
2580 fmovrslez %o3, %f25, %f25
2581 subccc %l0, 0x1D47, %g3
2582loop_341:
2583 call loop_343
2584loop_342:
2585 fmovda %fcc0, %f6, %f14
2586 call loop_344
2587 fmovscc %icc, %f4, %f26
2588loop_343:
2589 call loop_345
2590 rd %sys_tick_cmpr, %g6
2591loop_344:
2592 tneg %icc, 0x3
2593 fmovdpos %xcc, %f10, %f26
2594loop_345:
2595 fmovrslez %i5, %f6, %f4
2596 nop
2597 setx 0xED1D93F4, %l0, %l6
2598 st %l6, [%l7 + 0x28]
2599 ld [%l7 + 0x28], %f5
2600 fsqrts %f5, %f1
2601 fabsd %f4, %f18
2602 call loop_346
2603 fmovduge %fcc3, %f24, %f28
2604
2605 or %g0, 0x8, %l0
2606 sllx %l0, 0x3c, %l0
2607 wrhpr %l0, 0x38E, %hsys_tick_cmpr
2608 fpadd32s %f12, %f1, %f24
2609loop_346:
2610 brlez %g5, loop_347
2611 xnorcc %i2, %o6, %o4
2612 and %l1, 0x1383, %i7
2613 fpsub32 %f6, %f10, %f14
2614loop_347:
2615 call loop_348
2616 tge %xcc, 0x2
2617 wrpr %g4, %o5, %cwp
2618 sub %o0, 0x06C5, %l3
2619loop_348:
2620 popc 0x07D0, %g7
2621 fmovdo %fcc2, %f30, %f10
2622 fpadd32 %f16, %f22, %f0
2623 tvc %icc, 0x5
2624 movle %xcc, 0x319, %l4
2625 call loop_349
2626 stb %o1, [%l7 + 0x59]
2627 nop
2628 fitod %f10, %f28
2629 fdtox %f28, %f8
2630 call loop_350
2631loop_349:
2632 call loop_351
2633 alignaddrl %g1, %o2, %l2
2634 fmovdul %fcc0, %f20, %f0
2635loop_350:
2636 nop
2637 setx 0xB17833C7CC6B41DB, %l0, %l6
2638 stx %l6, [%l7 + 0x28]
2639 ldd [%l7 + 0x28], %f2
2640 setx 0x475DA5FB4F656B60, %l1, %l5
2641 stx %l5, [%l7 + 0x10]
2642 ldd [%l7 + 0x10], %f10
2643 fdivd %f10, %f2, %f12
2644loop_351:
2645 nop
2646 setx 0x69B1CACB, %l0, %l6
2647 st %l6, [%l7 + 0x28]
2648 ld [%l7 + 0x28], %f22
2649 setx 0x29F7555C, %l1, %l5
2650 st %l5, [%l7 + 0x10]
2651 ld [%l7 + 0x10], %f16
2652 fmuls %f16, %f22, %f18
2653 sllx %g2, %i6, %l5
2654 call loop_352
2655 fbug %fcc3, loop_353
2656 fmovrdlz %i1, %f22, %f28
2657 call loop_354
2658loop_352:
2659 and %l6, %o7, %i3
2660loop_353:
2661 sra %i4, 0x19, %l0
2662 fnot1 %f28, %f14
2663loop_354:
2664 edge16l %o3, %g6, %i5
2665 movne %fcc2, %i0, %g3
2666 call loop_355
2667 call loop_356
2668 rd %softint, %i2
2669 wr %g5, %o6, %sys_tick
2670loop_355:
2671 fpadd16s %f15, %f24, %f0
2672loop_356:
2673 and %l1, %i7, %o4
2674 tsubcc %o5, 0x0B47, %g4
2675 fsrc1 %f18, %f30
2676 smul %l3, %o0, %l4
2677 movug %fcc2, %o1, %g1
2678 fmovrsgez %g7, %f12, %f15
2679 fmovsleu %xcc, %f25, %f1
2680 xnor %o2, 0x0B71, %l2
2681 fcmped %fcc2, %f12, %f0
2682 nop
2683 setx 0xD602A52F74060637, %l0, %l6
2684 stx %l6, [%l7 + 0x28]
2685 ldd [%l7 + 0x28], %f28
2686 setx 0xCED6088A1021D0C0, %l1, %l5
2687 stx %l5, [%l7 + 0x10]
2688 ldd [%l7 + 0x10], %f24
2689 fmuld %f24, %f28, %f18
2690 movneg %xcc, 0x2D6, %g2
2691 fmovrslz %i6, %f31, %f6
2692 fxor %f20, %f26, %f26
2693 tcs %icc, 0x3
2694 saved
2695 rdpr %cwp, %g1
2696 rdpr %cansave, %g2
2697 rdpr %canrestore, %g3
2698 rdpr %cleanwin, %g4
2699 rdpr %otherwin, %g5
2700 rdpr %wstate, %g6
2701 fmul8sux16 %f14, %f0, %f10
2702 fmovdleu %xcc, %f30, %f6
2703 wrpr %i1, 0x1477, %pil
2704 tg %xcc, 0x5
2705 call loop_357
2706 tsubcc %l6, %o7, %i3
2707 umulcc %i4, 0x1199, %l0
2708 tsubcc %l5, %o3, %g6
2709loop_357:
2710 fmovslg %fcc3, %f31, %f23
2711 xor %i5, 0x0AAB, %i0
2712 for %f24, %f22, %f14
2713 call loop_358
2714 or %i2, %g3, %g5
2715loop_358:
2716 nop
2717
2718 EXIT_GOOD
2719
2720
2721
2722!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2723!
2724! Stats for Thread 5:
2725!
2726! Type l : 7
2727! Type a : 12
2728! Type x : 2
2729! Type cti : 60
2730! Type f : 59
2731! Type i : 60
2732!
2733!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2734
2735!
2736! Thread 6 Start
2737!
2738main_t6:
2739 mov %l7, %g1
2740 !# Set %cwp for 8 windows
2741 !# This threads memory space into each %l7
2742 wrpr %g0, 0x7, %cwp
2743 mov %g1, %l7
2744 wrpr %g0, 0x6, %cwp
2745 mov %g1, %l7
2746 wrpr %g0, 0x5, %cwp
2747 mov %g1, %l7
2748 wrpr %g0, 0x4, %cwp
2749 mov %g1, %l7
2750 wrpr %g0, 0x3, %cwp
2751 mov %g1, %l7
2752 wrpr %g0, 0x2, %cwp
2753 mov %g1, %l7
2754 wrpr %g0, 0x1, %cwp
2755 mov %g1, %l7
2756 wrpr %g0, 0x0, %cwp
2757 mov %g1, %l7
2758
2759 !# Set %fsr
2760 setx 0x0000000000000000, %l0, %l6 !# no post process
2761 stx %l6, [%l7 + 0x0] !# no post process
2762 ldx [%l7 + 0x0], %fsr !# no post process
2763
2764 !# Initialize registers ..
2765
2766 !# Global registers
2767 set 0x0, %g1
2768 set 0x0, %g2
2769 set 0x5, %g3
2770 set 0x9, %g4
2771 set 0x9, %g5
2772 set 0x0, %g6
2773 set 0xF, %g7
2774 !# Input registers
2775 set -0x1, %i0
2776 set -0x5, %i1
2777 set -0x0, %i2
2778 set -0xF, %i3
2779 set -0x0, %i4
2780 set -0x9, %i5
2781 set -0x8, %i6
2782 set -0xF, %i7
2783 !# Local registers
2784 set 0x4E47A60C, %l0
2785 set 0x046059D9, %l1
2786 set 0x0E7ECDEF, %l2
2787 set 0x0469077E, %l3
2788 set 0x7B498AA8, %l4
2789 set 0x40FDB0D0, %l5
2790 set 0x027B3E84, %l6
2791 !# Output registers
2792 set -0x1EBF, %o0
2793 set -0x1824, %o1
2794 set 0x07C8, %o2
2795 set 0x0D48, %o3
2796 set -0x0506, %o4
2797 set 0x032E, %o5
2798 set -0x0C17, %o6
2799 set 0x1628, %o7
2800 !# Float registers
2801 INIT_TH_FP_REG(%l7,%f0,0xBDC02D05494A9F57)
2802 INIT_TH_FP_REG(%l7,%f2,0x882D54E409A81313)
2803 INIT_TH_FP_REG(%l7,%f4,0x4B62A896F84501EF)
2804 INIT_TH_FP_REG(%l7,%f6,0x024591A99765DD14)
2805 INIT_TH_FP_REG(%l7,%f8,0x973680810C5E654C)
2806 INIT_TH_FP_REG(%l7,%f10,0x6F172A3F35C8DEA3)
2807 INIT_TH_FP_REG(%l7,%f12,0x550BD6991F22F32F)
2808 INIT_TH_FP_REG(%l7,%f14,0xC23E230E73B5EA0B)
2809 INIT_TH_FP_REG(%l7,%f16,0x8B432D4FA91DAF47)
2810 INIT_TH_FP_REG(%l7,%f18,0xE07D2E4B2229E84A)
2811 INIT_TH_FP_REG(%l7,%f20,0x82BAC4E828D38A05)
2812 INIT_TH_FP_REG(%l7,%f22,0x9D595B6BCC62A44F)
2813 INIT_TH_FP_REG(%l7,%f24,0xD0FD43FC16F917F2)
2814 INIT_TH_FP_REG(%l7,%f26,0xED4F08CF9CC2465D)
2815 INIT_TH_FP_REG(%l7,%f28,0xC86ED0FF8793FFE4)
2816 INIT_TH_FP_REG(%l7,%f30,0x2962878FB08EBDCA)
2817
2818 !# Execute Main Diag ..
2819
2820 fcmpes %fcc1, %f0, %f18
2821 call loop_359
2822 fxors %f12, %f4, %f11
2823 call loop_360
2824 call loop_361
2825loop_359:
2826 fmovdl %xcc, %f8, %f6
2827 popc %o6, %i7
2828loop_360:
2829 fmovdne %xcc, %f8, %f22
2830loop_361:
2831 rd %pc, %o4
2832 tpos %icc, 0x1
2833 mova %fcc0, 0x235, %l1
2834 fpsub32s %f2, %f24, %f22
2835 call loop_362
2836 sra %o5, %g4, %l3
2837 fsrc2s %f27, %f3
2838 fmovdvc %xcc, %f4, %f2
2839loop_362:
2840 subcc %o0, %o1, %l4
2841 movo %fcc3, 0x04E, %g1
2842 fnor %f16, %f20, %f2
2843 wrpr %o2, %g7, %cwp
2844 fba,pn %fcc2, loop_363
2845 fmovrdlz %l2, %f24, %f18
2846 rd %sys_tick_cmpr, %i6
2847 call loop_364
2848loop_363:
2849 fmovsvs %xcc, %f16, %f18
2850 edge16n %g2, %i1, %o7
2851 fmovsug %fcc0, %f23, %f10
2852loop_364:
2853 ldd [%l7 + 0x20], %i2
2854 fmovrdgez %l6, %f10, %f12
2855 wr %i4, 0x1193, %y
2856 fmovdu %fcc1, %f26, %f6
2857
2858 or %g0, 0x8, %l0
2859 sllx %l0, 0x3c, %l0
2860 wr %l0, %g0, %sys_tick_cmpr
2861 bpos %icc, loop_365
2862 tcs %xcc, 0x2
2863 nop
2864 fitod %f10, %f4
2865 fdtos %f4, %f19
2866 nop
2867 set 0x7A, %i0
2868 sth %g6, [%l7 + %i0]
2869loop_365:
2870 rd %y, %i5
2871 call loop_366
2872 rdhpr %hintp, %i0
2873 ldd [%l7 + 0x40], %f2
2874 fnegs %f0, %f31
2875loop_366:
2876 call loop_367
2877 call loop_368
2878 nop
2879 set 0x78, %g6
2880 lduw [%l7 + %g6], %l0
2881 nop
2882 setx 0xE001AAA3528C45AA, %l0, %l6
2883 stx %l6, [%l7 + 0x28]
2884 ldd [%l7 + 0x28], %f26
2885 fsqrtd %f26, %f12
2886loop_367:
2887 fornot1 %f4, %f16, %f8
2888loop_368:
2889 subcc %g3, %i2, %g5
2890 tsubcc %i7, %o6, %o4
2891 fcmpgt16 %f14, %f14, %o5
2892 call loop_369
2893 call loop_370
2894 fmuld8ulx16 %f27, %f14, %f8
2895 tcs %xcc, 0x2
2896loop_369:
2897 smul %l1, %l3, %o0
2898loop_370:
2899 call loop_371
2900 fcmpeq32 %f4, %f16, %o1
2901 andcc %g4, %g1, %o2
2902 fsrc2s %f16, %f11
2903loop_371:
2904 rdhpr %hsys_tick_cmpr, %g7
2905 call loop_372
2906 nop
2907 fitos %f9, %f12
2908 fstoi %f12, %f10
2909 ldsw [%l7 + 0x14], %l2
2910 srlx %i6, %g2, %i1
2911loop_372:
2912 umulcc %o7, 0x1B3C, %l4
2913 call loop_373
2914 sllx %i3, 0x0E, %l6
2915 edge16ln %l5, %o3, %i4
2916
2917 or %g0, 0x8, %l0
2918 sllx %l0, 0x3c, %l0
2919 wrhpr %l0, %g0, %hsys_tick_cmpr
2920loop_373:
2921 fandnot2 %f2, %f28, %f20
2922 bleu,a %xcc, loop_374
2923 fornot1 %f14, %f8, %f22
2924 for %f2, %f26, %f20
2925 nop
2926 setx 0x03B64738F138A091, %l0, %l6
2927 stx %l6, [%l7 + 0x28]
2928 ldd [%l7 + 0x28], %f24
2929 setx 0xFDD4E78A, %l1, %l5
2930 stx %l5, [%l7 + 0x10]
2931 ldd [%l7 + 0x10], %f16
2932 fsmuld %f16, %f24, %f0
2933loop_374:
2934 fmovrse %i0, %f20, %f6
2935 call loop_375
2936 rd %asi, %l0
2937 addccc %i2, %g3, %g5
2938 bcs,pt %icc, loop_376
2939loop_375:
2940 fmovrdgz %i7, %f20, %f16
2941 call loop_377
2942 movneg %xcc, 0x706, %o4
2943loop_376:
2944 fbuge,a,pt %fcc3, loop_378
2945 fnot2s %f17, %f15
2946loop_377:
2947 call loop_379
2948 tge %xcc, 0x2
2949loop_378:
2950 nop
2951 setx 0x5D9DC5E5, %l0, %l6
2952 st %l6, [%l7 + 0x28]
2953 ld [%l7 + 0x28], %f27
2954 setx 0x9B433AFB, %l1, %l5
2955 st %l5, [%l7 + 0x10]
2956 ld [%l7 + 0x10], %f10
2957 fmuls %f10, %f27, %f11
2958 fmovsle %fcc0, %f25, %f11
2959loop_379:
2960 edge16ln %o5, %l1, %o6
2961 tle %xcc, 0x6
2962 movg %fcc2, 0x4F8, %o0
2963 call loop_380
2964 call loop_381
2965 bpos,a %icc, loop_382
2966 addcc %o1, %g4, %l3
2967loop_380:
2968 fmul8x16 %f27, %f26, %f14
2969loop_381:
2970 tpos %xcc, 0x3
2971loop_382:
2972 fmovsvc %xcc, %f8, %f24
2973 call loop_383
2974 call loop_384
2975 fnegd %f30, %f4
2976 subc %g1, 0x086F, %o2
2977loop_383:
2978 wrpr %l2, 0x0C40, %pil
2979loop_384:
2980 call loop_385
2981 fmovrdne %i6, %f14, %f18
2982 call loop_386
2983 movge %xcc, %g2, %g7
2984loop_385:
2985 call loop_387
2986 call loop_388
2987loop_386:
2988 call loop_389
2989 fmovdcs %xcc, %f2, %f26
2990loop_387:
2991 fsrc1 %f10, %f2
2992loop_388:
2993 tsubcctv %o7, %l4, %i3
2994loop_389:
2995 fsrc2s %f14, %f17
2996 call loop_390
2997 edge8 %l6, %i1, %o3
2998 nop
2999 setx loop_391, %l0, %l1
3000 jmpl %l1, %i4
3001 nop
3002 setx 0x7C57CBA22C81199A, %l0, %l6
3003 stx %l6, [%l7 + 0x28]
3004 ldd [%l7 + 0x28], %f8
3005 setx 0xBE35013B1DCFE38E, %l1, %l5
3006 stx %l5, [%l7 + 0x10]
3007 ldd [%l7 + 0x10], %f12
3008 fdivd %f12, %f8, %f28
3009loop_390:
3010 flushw
3011 movug %fcc0, %g6, %l5
3012loop_391:
3013 nop
3014 setx 0xE6070303, %l0, %l6
3015 st %l6, [%l7 + 0x28]
3016 ld [%l7 + 0x28], %f6
3017 setx 0x41C07CC4, %l1, %l5
3018 st %l5, [%l7 + 0x10]
3019 ld [%l7 + 0x10], %f31
3020 fadds %f31, %f6, %f19
3021 wr %i5, %i0, %y
3022 nop
3023 setx 0x8E5A0CE97B58E5C7, %l0, %l6
3024 stx %l6, [%l7 + 0x28]
3025 ldx [%l7 + 0x28], %fsr
3026 subccc %i2, %l0, %g3
3027 tsubcc %i7, 0x068C, %g5
3028 edge16n %o4, %o5, %o6
3029 ble,pn %xcc, loop_392
3030 rd %asi, %o0
3031 fmovsa %fcc3, %f11, %f10
3032 fmovsge %fcc1, %f14, %f10
3033loop_392:
3034 edge8n %o1, %l1, %l3
3035 call loop_393
3036 call loop_394
3037 wr %g0, 0x5, %fprs
3038 fmovdule %fcc0, %f26, %f10
3039loop_393:
3040 fmovdg %fcc1, %f4, %f6
3041loop_394:
3042 rdpr %otherwin, %o2
3043 ldd [%l7 + 0x20], %f2
3044 movcs %xcc, 0x03C, %i6
3045 call loop_395
3046 fmul8x16 %f27, %f6, %f6
3047 movug %fcc0, 0x12D, %g2
3048 call loop_396
3049loop_395:
3050 fnands %f19, %f31, %f8
3051 rdpr %pil, %l2
3052 call loop_397
3053loop_396:
3054 fmovsneg %xcc, %f17, %f26
3055 tge %xcc, 0x4
3056 call loop_398
3057loop_397:
3058 mova %fcc3, 0x72A, %g7
3059 call loop_399
3060 fmovsleu %xcc, %f15, %f4
3061loop_398:
3062 movge %fcc3, 0x681, %l4
3063 fnot2 %f12, %f14
3064loop_399:
3065 movu %fcc2, 0x65C, %i3
3066 array16 %o7, %l6, %o3
3067 call loop_400
3068 fxor %f4, %f4, %f26
3069 nop
3070 setx 0x2CC0CB58F251CEE2, %l0, %l6
3071 stx %l6, [%l7 + 0x28]
3072 ldd [%l7 + 0x28], %f18
3073 setx 0xBA11CE87E8CCAE5D, %l1, %l5
3074 stx %l5, [%l7 + 0x10]
3075 ldd [%l7 + 0x10], %f30
3076 fdivd %f30, %f18, %f16
3077 andn %i1, 0x027C, %g6
3078loop_400:
3079 call loop_401
3080 edge8l %i4, %i5, %l5
3081 fmovda %xcc, %f8, %f28
3082 movn %icc, %i0, %l0
3083loop_401:
3084 tcs %icc, 0x7
3085 nop
3086 setx 0x065AE7BD, %l0, %l6
3087 st %l6, [%l7 + 0x28]
3088 ld [%l7 + 0x28], %f29
3089 setx 0x3DC3CDCA, %l1, %l5
3090 st %l5, [%l7 + 0x10]
3091 ld [%l7 + 0x10], %f14
3092 fdivs %f14, %f29, %f8
3093 call loop_402
3094 wr %g3, 0x0589, %softint
3095 brnz,a,pn %i7, loop_403
3096 call loop_404
3097loop_402:
3098 fmovscc %icc, %f1, %f6
3099 fmuld8ulx16 %f20, %f19, %f22
3100loop_403:
3101 pdist %f22, %f30, %f0
3102loop_404:
3103 addccc %g5, 0x1E74, %i2
3104 call loop_405
3105 fornot2s %f11, %f29, %f4
3106 bvc,pn %xcc, loop_406
3107 fxors %f10, %f28, %f5
3108loop_405:
3109 fmovdue %fcc1, %f26, %f18
3110 call loop_407
3111loop_406:
3112 call loop_408
3113 subcc %o4, 0x0825, %o5
3114 call loop_409
3115loop_407:
3116 taddcc %o6, %o0, %o1
3117loop_408:
3118 fmovdle %fcc1, %f2, %f18
3119 fcmpeq32 %f4, %f22, %l3
3120loop_409:
3121 stb %l1, [%l7 + 0x22]
3122 call loop_410
3123 fnot2 %f20, %f8
3124 fsrc1 %f4, %f2
3125 fsrc1 %f2, %f8
3126loop_410:
3127 fnegd %f28, %f10
3128 tge %icc, 0x0
3129 tn %icc, 0x7
3130 fand %f22, %f20, %f22
3131 subc %g1, %o2, %i6
3132 nop
3133 setx 0xF8E00D64, %l0, %l6
3134 st %l6, [%l7 + 0x28]
3135 ld [%l7 + 0x28], %f18
3136 setx 0x70D38163, %l1, %l5
3137 st %l5, [%l7 + 0x10]
3138 ld [%l7 + 0x10], %f26
3139 fmuls %f26, %f18, %f18
3140
3141 or %g0, 0x8, %l0
3142 sllx %l0, 0x3c, %l0
3143 wrhpr %l0, %g0, %hsys_tick_cmpr
3144 call loop_411
3145 fmul8sux16 %f28, %f18, %f20
3146 rdhpr %hsys_tick_cmpr, %g7
3147loop_411:
3148 nop
3149
3150 EXIT_GOOD
3151
3152
3153
3154!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3155!
3156! Stats for Thread 6:
3157!
3158! Type l : 8
3159! Type a : 19
3160! Type cti : 53
3161! Type f : 68
3162! Type i : 52
3163!
3164!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3165
3166!
3167! Thread 7 Start
3168!
3169main_t7:
3170 mov %l7, %g1
3171 !# Set %cwp for 8 windows
3172 !# This threads memory space into each %l7
3173 wrpr %g0, 0x7, %cwp
3174 mov %g1, %l7
3175 wrpr %g0, 0x6, %cwp
3176 mov %g1, %l7
3177 wrpr %g0, 0x5, %cwp
3178 mov %g1, %l7
3179 wrpr %g0, 0x4, %cwp
3180 mov %g1, %l7
3181 wrpr %g0, 0x3, %cwp
3182 mov %g1, %l7
3183 wrpr %g0, 0x2, %cwp
3184 mov %g1, %l7
3185 wrpr %g0, 0x1, %cwp
3186 mov %g1, %l7
3187 wrpr %g0, 0x0, %cwp
3188 mov %g1, %l7
3189
3190 !# Set %fsr
3191 setx 0x0000000000000000, %l0, %l6 !# no post process
3192 stx %l6, [%l7 + 0x0] !# no post process
3193 ldx [%l7 + 0x0], %fsr !# no post process
3194
3195 !# Initialize registers ..
3196
3197 !# Global registers
3198 set 0xB, %g1
3199 set 0x3, %g2
3200 set 0xE, %g3
3201 set 0x0, %g4
3202 set 0xD, %g5
3203 set 0xF, %g6
3204 set 0x7, %g7
3205 !# Input registers
3206 set -0x5, %i0
3207 set -0x6, %i1
3208 set -0x0, %i2
3209 set -0xA, %i3
3210 set -0xC, %i4
3211 set -0xE, %i5
3212 set -0x1, %i6
3213 set -0xE, %i7
3214 !# Local registers
3215 set 0x6D576675, %l0
3216 set 0x51016E0C, %l1
3217 set 0x39B876E7, %l2
3218 set 0x785BDC11, %l3
3219 set 0x0691EDA6, %l4
3220 set 0x337DA7B2, %l5
3221 set 0x347BBF57, %l6
3222 !# Output registers
3223 set -0x1C27, %o0
3224 set 0x0F7C, %o1
3225 set -0x07BF, %o2
3226 set 0x1D09, %o3
3227 set -0x0CEE, %o4
3228 set -0x0A07, %o5
3229 set -0x03F7, %o6
3230 set -0x0AFD, %o7
3231 !# Float registers
3232 INIT_TH_FP_REG(%l7,%f0,0xBDC02D05494A9F57)
3233 INIT_TH_FP_REG(%l7,%f2,0x882D54E409A81313)
3234 INIT_TH_FP_REG(%l7,%f4,0x4B62A896F84501EF)
3235 INIT_TH_FP_REG(%l7,%f6,0x024591A99765DD14)
3236 INIT_TH_FP_REG(%l7,%f8,0x973680810C5E654C)
3237 INIT_TH_FP_REG(%l7,%f10,0x6F172A3F35C8DEA3)
3238 INIT_TH_FP_REG(%l7,%f12,0x550BD6991F22F32F)
3239 INIT_TH_FP_REG(%l7,%f14,0xC23E230E73B5EA0B)
3240 INIT_TH_FP_REG(%l7,%f16,0x8B432D4FA91DAF47)
3241 INIT_TH_FP_REG(%l7,%f18,0xE07D2E4B2229E84A)
3242 INIT_TH_FP_REG(%l7,%f20,0x82BAC4E828D38A05)
3243 INIT_TH_FP_REG(%l7,%f22,0x9D595B6BCC62A44F)
3244 INIT_TH_FP_REG(%l7,%f24,0xD0FD43FC16F917F2)
3245 INIT_TH_FP_REG(%l7,%f26,0xED4F08CF9CC2465D)
3246 INIT_TH_FP_REG(%l7,%f28,0xC86ED0FF8793FFE4)
3247 INIT_TH_FP_REG(%l7,%f30,0x2962878FB08EBDCA)
3248
3249 !# Execute Main Diag ..
3250
3251 call loop_412
3252 fmovrde %l4, %f4, %f30
3253 nop
3254 setx 0x2460EC5DD52B397F, %l0, %l6
3255 stx %l6, [%l7 + 0x28]
3256 ldd [%l7 + 0x28], %f4
3257 setx 0x6B615B13, %l1, %l5
3258 stx %l5, [%l7 + 0x10]
3259 ldd [%l7 + 0x10], %f28
3260 fsmuld %f28, %f4, %f2
3261 call loop_413
3262loop_412:
3263 fmovrdne %l2, %f22, %f28
3264 fxors %f13, %f30, %f28
3265 call loop_414
3266loop_413:
3267 movlg %fcc0, %o7, %l6
3268 fmovdcs %xcc, %f28, %f2
3269 xnor %o3, 0x012F, %i3
3270loop_414:
3271 membar 0x52
3272 mulscc %g6, 0x00E0, %i1
3273 fmovscs %xcc, %f0, %f21
3274 call loop_415
3275 nop
3276 setx 0x00297EF9, %l0, %l6
3277 st %l6, [%l7 + 0x28]
3278 ld [%l7 + 0x28], %f30
3279 setx 0x4923E92B, %l1, %l5
3280 st %l5, [%l7 + 0x10]
3281 ld [%l7 + 0x10], %f19
3282 fdivs %f19, %f30, %f10
3283 bg,a %xcc, loop_416
3284 rdhpr %hintp, %i5
3285loop_415:
3286 nop
3287 setx 0xF042BC96, %l0, %l6
3288 st %l6, [%l7 + 0x28]
3289 ld [%l7 + 0x28], %f30
3290 setx 0x4BFCAF51, %l1, %l5
3291 st %l5, [%l7 + 0x10]
3292 ld [%l7 + 0x10], %f31
3293 fsubs %f31, %f30, %f3
3294 mova %icc, %l5, %i0
3295loop_416:
3296 rd %tick_cmpr, %i4
3297 fmovsue %fcc2, %f18, %f12
3298 rdhpr %hintp, %g3
3299 rdhpr %hpstate, %i7
3300 nop
3301 fitod %f8, %f12
3302 fdtox %f12, %f6
3303 sdivx %g5, 0x0D49, %i2
3304 sub %o4, %l0, %o5
3305 add %o0, 0x15DB, %o1
3306 umulcc %o6, %l1, %g1
3307 andn %o2, 0x021B, %i6
3308 sub %g2, 0x1FC8, %g4
3309 fmovda %icc, %f6, %f22
3310 tcc %icc, 0x0
3311 fbu,a %fcc2, loop_417
3312 tleu %xcc, 0x6
3313 fblg %fcc0, loop_418
3314 call loop_419
3315loop_417:
3316 nop
3317 setx 0x90B221AE23CE358B, %l0, %l6
3318 stx %l6, [%l7 + 0x30]
3319 ldx [%l7 + 0x30], %fsr
3320 fmovscs %xcc, %f5, %f29
3321loop_418:
3322 andn %g7, 0x0C42, %l3
3323loop_419:
3324 call loop_420
3325 nop
3326 setx 0x1C05EF71CB3F8311, %l0, %l6
3327 stx %l6, [%l7 + 0x28]
3328 ldd [%l7 + 0x28], %f22
3329 fsqrtd %f22, %f18
3330 tleu %icc, 0x0
3331 fcmps %fcc0, %f10, %f11
3332loop_420:
3333 te %xcc, 0x7
3334
3335 or %g0, 0x8, %l0
3336 sllx %l0, 0x3c, %l0
3337 wrhpr %l0, 0xAF0, %hsys_tick_cmpr
3338 membar 0x16
3339 saved
3340 rdpr %cwp, %g1
3341 rdpr %cansave, %g2
3342 rdpr %canrestore, %g3
3343 rdpr %cleanwin, %g4
3344 rdpr %otherwin, %g5
3345 rdpr %wstate, %g6
3346 xor %o7, %l2, %l6
3347 fxors %f4, %f15, %f22
3348 xorcc %o3, %g6, %i1
3349 nop
3350 fitod %f26, %f6
3351 call loop_421
3352 call loop_422
3353 array8 %i5, %i3, %i0
3354 call loop_423
3355loop_421:
3356 fmovsule %fcc3, %f22, %f28
3357loop_422:
3358 call loop_424
3359 fmovrslez %l5, %f6, %f13
3360loop_423:
3361 xor %i4, %g3, %g5
3362 call loop_425
3363loop_424:
3364 call loop_426
3365 fmovrdlz %i2, %f2, %f22
3366 nop
3367 set 0x30, %i4
3368 stx %fsr, [%l7 + %i4]
3369loop_425:
3370 call loop_427
3371loop_426:
3372 movrgz %o4, 0x352, %i7
3373
3374 or %g0, 0x8, %l0
3375 sllx %l0, 0x3c, %l0
3376 wrhpr %l0, %g0, %hsys_tick_cmpr
3377 sllx %o5, %o1, %o0
3378loop_427:
3379 nop
3380 setx 0x02209779D959B8FE, %l0, %l6
3381 stx %l6, [%l7 + 0x28]
3382 ldd [%l7 + 0x28], %f22
3383 setx 0x263300422A4CE249, %l1, %l5
3384 stx %l5, [%l7 + 0x10]
3385 ldd [%l7 + 0x10], %f4
3386 faddd %f4, %f22, %f0
3387 orn %l1, %o6, %o2
3388 fone %f20
3389 call loop_428
3390 array8 %i6, %g2, %g1
3391 call loop_429
3392 nop
3393 set 0x57, %i3
3394 ldstub [%l7 + %i3], %g7
3395loop_428:
3396 tsubcc %g4, 0x116E, %l3
3397 call loop_430
3398loop_429:
3399 fmuld8sux16 %f4, %f17, %f12
3400 call loop_431
3401 fpadd16 %f2, %f24, %f20
3402loop_430:
3403 movge %fcc2, 0x72E, %l4
3404 rdpr %gl, %l2
3405loop_431:
3406 call loop_432
3407 rd %softint, %l6
3408 call loop_433
3409 wrpr %g0, 0x0, %gl
3410loop_432:
3411 call loop_434
3412 movu %fcc1, %i1, %i5
3413loop_433:
3414 wrpr %g0, 0x2, %gl
3415 fmovsgu %icc, %f9, %f29
3416loop_434:
3417 bmask %i0, %i3, %i4
3418 call loop_435
3419 call loop_436
3420 call loop_437
3421 fornot2s %f20, %f21, %f30
3422loop_435:
3423 fxors %f0, %f18, %f9
3424loop_436:
3425 wr %g3, %l5, %set_softint
3426loop_437:
3427 movneg %xcc, %g5, %o4
3428 call loop_438
3429 tcs %icc, 0x2
3430 brlz,a,pt %i7, loop_439
3431 call loop_440
3432loop_438:
3433 call loop_441
3434 fblg,a,pn %fcc0, loop_442
3435loop_439:
3436 fbuge,a %fcc1, loop_443
3437loop_440:
3438 call loop_444
3439loop_441:
3440 call loop_445
3441loop_442:
3442 call loop_446
3443loop_443:
3444 addcc %i2, %l0, %o5
3445loop_444:
3446 fmovdneg %icc, %f6, %f26
3447loop_445:
3448 call loop_447
3449loop_446:
3450 call loop_448
3451 fbule,a,pt %fcc2, loop_449
3452 addc %o1, %l1, %o0
3453loop_447:
3454 nop
3455 wr %g0, 0x0c, %asi
3456 sta %f21, [%l7 + 0x28] %asi
3457loop_448:
3458 fble,a,pt %fcc2, loop_450
3459loop_449:
3460 nop
3461 fitod %f12, %f12
3462 fdtox %f12, %f24
3463 fnot1s %f28, %f16
3464 call loop_451
3465loop_450:
3466 fcmple16 %f0, %f2, %o2
3467 call loop_452
3468 call loop_453
3469loop_451:
3470 ta %xcc, 0x1
3471 call loop_454
3472loop_452:
3473 call loop_455
3474loop_453:
3475 call loop_456
3476 rd %tick_cmpr, %i6
3477loop_454:
3478 call loop_457
3479loop_455:
3480 fba,pt %fcc3, loop_458
3481loop_456:
3482 fmovsne %icc, %f15, %f11
3483 xnorcc %o6, 0x1819, %g1
3484loop_457:
3485 xor %g7, 0x1211, %g2
3486loop_458:
3487 call loop_459
3488 orn %l3, %g4, %l2
3489 call loop_460
3490 faligndata %f2, %f0, %f0
3491loop_459:
3492 call loop_461
3493 orncc %l6, 0x0893, %o7
3494loop_460:
3495 fcmpeq16 %f16, %f20, %l4
3496 call loop_462
3497loop_461:
3498 call loop_463
3499 fmovdo %fcc0, %f12, %f2
3500 call loop_464
3501loop_462:
3502 call loop_465
3503loop_463:
3504 call loop_466
3505 tcs %xcc, 0x5
3506loop_464:
3507 tn %icc, 0x0
3508loop_465:
3509 call loop_467
3510loop_466:
3511 fmovsule %fcc0, %f31, %f19
3512 or %g6, %i5, %i1
3513 call loop_468
3514loop_467:
3515 bpos,pn %icc, loop_469
3516 or %o3, %i0, %i4
3517 fmovso %fcc2, %f5, %f7
3518loop_468:
3519 brlez,a %g3, loop_470
3520loop_469:
3521 fmovdne %fcc2, %f14, %f24
3522 fmovdg %xcc, %f18, %f8
3523 movo %fcc0, %i3, %l5
3524loop_470:
3525 nop
3526 setx 0xC060DAD5CB3D228C, %l0, %l6
3527 stx %l6, [%l7 + 0x28]
3528 ldd [%l7 + 0x28], %f24
3529 setx 0x1A6DD0C871E807EA, %l1, %l5
3530 stx %l5, [%l7 + 0x10]
3531 ldd [%l7 + 0x10], %f4
3532 fmuld %f4, %f24, %f16
3533 fcmpeq16 %f30, %f6, %g5
3534 fcmpne16 %f30, %f2, %i7
3535 call loop_471
3536 ta %icc, 0x4
3537 umul %o4, %i2, %o5
3538 fbul,pn %fcc0, loop_472
3539loop_471:
3540 call loop_473
3541 call loop_474
3542 fmovsgu %icc, %f27, %f8
3543loop_472:
3544 tcc %icc, 0x1
3545loop_473:
3546 nop
3547 setx 0x412A85FA159DB708, %l0, %l6
3548 stx %l6, [%l7 + 0x28]
3549 ldd [%l7 + 0x28], %f28
3550 fsqrtd %f28, %f0
3551loop_474:
3552 rdhpr %ver, %o1
3553 movrgz %l0, %l1, %o2
3554 bmask %i6, %o0, %g1
3555 rd %pc, %o6
3556 bvc %xcc, loop_475
3557 fmovdlg %fcc3, %f2, %f12
3558 set 0x0A, %g3
3559 stba %g7, [%l7 + %g3] 0x81
3560loop_475:
3561 call loop_476
3562 bl,a %xcc, loop_477
3563 fsrc1 %f20, %f2
3564 fone %f6
3565loop_476:
3566 te %xcc, 0x6
3567loop_477:
3568 edge16l %l3, %g2, %l2
3569 andncc %l6, %o7, %l4
3570 movrgez %g6, %g4, %i5
3571 nop
3572 fitos %f4, %f26
3573 call loop_478
3574 brlez,a %o3, loop_479
3575 call loop_480
3576 fpadd32s %f25, %f3, %f24
3577loop_478:
3578 movrlz %i0, %i1, %i4
3579loop_479:
3580 be,pt %icc, loop_481
3581loop_480:
3582 rd %sys_tick_cmpr, %i3
3583 array8 %g3, %l5, %g5
3584 call loop_482
3585loop_481:
3586 sub %i7, %i2, %o4
3587 fmovslg %fcc0, %f20, %f14
3588 call loop_483
3589loop_482:
3590 call loop_484
3591loop_483:
3592 nop
3593
3594loop_484:
3595 nop
3596
3597 EXIT_GOOD
3598
3599
3600
3601!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3602!
3603! Stats for Thread 7:
3604!
3605! Type l : 5
3606! Type a : 15
3607! Type x : 2
3608! Type cti : 73
3609! Type f : 49
3610! Type i : 56
3611!
3612!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3613
3614
3615 EXIT_GOOD /* test finish */
3616
3617/************************************************************************
3618 Test case data start
3619 ************************************************************************/
3620.data
3621user_data_start:
3622scratch_area:
3623.word 0xDE6DADF7
3624.word 0xD40136A8
3625.word 0x3BAF0D41
3626.word 0xB728FFC8
3627.word 0x33A206BA
3628.word 0x0BFF1832
3629.word 0x164ED8A1
3630.word 0x0BF89C06
3631.word 0xF9E025B7
3632.word 0x264C85E1
3633.word 0x8E32AA5A
3634.word 0x093E27A6
3635.word 0x0724ADCF
3636.word 0x53BB3C2C
3637.word 0x4FC7FEF0
3638.word 0x919B3EC4
3639.word 0x9DE20CF6
3640.word 0xE276C44C
3641.word 0xBD9C8068
3642.word 0x2C69AB93
3643.word 0x510051D5
3644.word 0xEAA24A51
3645.word 0x44B58114
3646.word 0x5C4A12D6
3647.word 0x2143713B
3648.word 0xB555D02E
3649.word 0x039765E1
3650.word 0x401DCD69
3651.word 0xE76E38A7
3652.word 0x7413C43A
3653.word 0xB882DEA8
3654.word 0x1E486320
3655.word 0xFD39EA2F
3656.word 0xCD0A5464
3657.word 0xF4F48F4D
3658.word 0x02515E7E
3659.word 0xE33C744C
3660.word 0xC2E66F7B
3661.word 0x8336BB3D
3662.word 0x6AB24914
3663.word 0x9049C2FF
3664.word 0x3D19D66C
3665.word 0x481D343E
3666.word 0x9E509194
3667.word 0x587CB3A8
3668.word 0xC09BF356
3669.word 0x5FCBA791
3670.word 0xDC619883
3671.word 0x5D57CE04
3672.word 0xFFC86373
3673.word 0xC2A730B5
3674.word 0x84F81A3F
3675.word 0x24CEA752
3676.word 0xB48CBA9C
3677.word 0x074E70A3
3678.word 0x2AD246A5
3679.word 0xF1BA7E4B
3680.word 0x908C705F
3681.word 0x52A54385
3682.word 0x5D04F1E7
3683.word 0x64DB7ACA
3684.word 0xF6030E67
3685.word 0xCED25672
3686.word 0xD193FC47
3687.end