Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / diag / assembly / fgu / fgu_ieee_traps_27.s
CommitLineData
86530b38
AT
1/*
2* ========== Copyright Header Begin ==========================================
3*
4* OpenSPARC T2 Processor File: fgu_ieee_traps_27.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=54790124"
39.ident "Mon Dec 8 19:58:07 CST 2003"
40.ident "Using Instruction Hash for Focus :$Id: fgu_ieee_traps_27.s,v 1.4 2007/07/27 21:45:31 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 0x2, %g1
119 set 0x9, %g2
120 set 0x8, %g3
121 set 0x8, %g4
122 set 0x4, %g5
123 set 0x0, %g6
124 set 0x4, %g7
125 !# Input registers
126 set -0x8, %i0
127 set -0x6, %i1
128 set -0x8, %i2
129 set -0x8, %i3
130 set -0xC, %i4
131 set -0x6, %i5
132 set -0xA, %i6
133 set -0x1, %i7
134 !# Local registers
135 set 0x588120FE, %l0
136 set 0x133FBAEB, %l1
137 set 0x127C25C0, %l2
138 set 0x69B4B4E8, %l3
139 set 0x0B95043C, %l4
140 set 0x31FCC11D, %l5
141 set 0x325B3120, %l6
142 !# Output registers
143 set 0x0DCD, %o0
144 set 0x1450, %o1
145 set -0x1983, %o2
146 set 0x002F, %o3
147 set 0x01AE, %o4
148 set 0x1558, %o5
149 set 0x188D, %o6
150 set 0x0CA7, %o7
151 !# Float registers
152 INIT_TH_FP_REG(%l7,%f0,0xA4614F60243B2ED6)
153 INIT_TH_FP_REG(%l7,%f2,0x4DCC2DE710D109EF)
154 INIT_TH_FP_REG(%l7,%f4,0xCB873947E98D9408)
155 INIT_TH_FP_REG(%l7,%f6,0x3A2052A6786BE33F)
156 INIT_TH_FP_REG(%l7,%f8,0x9013DC668BF6D8CF)
157 INIT_TH_FP_REG(%l7,%f10,0x3FF2F28DFE9128BC)
158 INIT_TH_FP_REG(%l7,%f12,0x1EB3E5F49D5026AD)
159 INIT_TH_FP_REG(%l7,%f14,0xC9B0C3F8D0E7AD8B)
160 INIT_TH_FP_REG(%l7,%f16,0xF59B0574923872BC)
161 INIT_TH_FP_REG(%l7,%f18,0x75121D18D4B09293)
162 INIT_TH_FP_REG(%l7,%f20,0x099721E63DA7EBA9)
163 INIT_TH_FP_REG(%l7,%f22,0xDDEC52C2C142D36C)
164 INIT_TH_FP_REG(%l7,%f24,0x59CA0055E046B503)
165 INIT_TH_FP_REG(%l7,%f26,0xB79A7C1B0DE9A102)
166 INIT_TH_FP_REG(%l7,%f28,0x16B9B0C47BB6B48A)
167 INIT_TH_FP_REG(%l7,%f30,0xBF102F5D279F71DD)
168
169 !# Execute Main Diag ..
170
171 tn %icc, 0x6
172 nop
173 set 0x14, %g7
174 lduw [%l7 + %g7], %g4
175 tge %icc, 0x7
176 xnorcc %g6, %i5, %o1
177 call loop_1
178 sll %i0, 0x04, %l4
179 wrpr %o7, 0x0F5A, %tick
180 fandnot2 %f18, %f6, %f24
181loop_1:
182 brz,a %g7, loop_2
183 fmovdue %fcc3, %f26, %f22
184 call loop_3
185 faligndata %f26, %f22, %f20
186loop_2:
187 fmovrdgez %l3, %f6, %f4
188 call loop_4
189loop_3:
190 fand %f14, %f18, %f22
191 call loop_5
192 call loop_6
193loop_4:
194 movneg %xcc, 0x39C, %o3
195 fnor %f22, %f12, %f24
196loop_5:
197 call loop_7
198loop_6:
199 call loop_8
200 fmovs %f6, %f6
201 call loop_9
202loop_7:
203 fmovdul %fcc3, %f24, %f26
204loop_8:
205 call loop_10
206 call loop_11
207loop_9:
208 wr %g0, 0x6, %fprs
209 sra %g3, %o6, %i7
210loop_10:
211 fornot2 %f24, %f14, %f2
212loop_11:
213 call loop_12
214 and %o2, 0x05B6, %i6
215 brz,pn %o4, loop_13
216 rdpr %tba, %o5
217loop_12:
218 umulcc %i4, 0x0371, %i3
219 fmovsvs %icc, %f22, %f7
220loop_13:
221 fmovdcc %icc, %f6, %f26
222 fmovscs %xcc, %f5, %f7
223 fmovrdne %g5, %f18, %f26
224 nop
225 set 0x30, %i2
226 lduw [%l7 + %i2], %l6
227 fmovdg %icc, %f12, %f6
228 call loop_14
229 wrpr %l0, %o0, %cwp
230 stx %l5, [%l7 + 0x20]
231 rd %tick_cmpr, %i2
232loop_14:
233 and %l1, %g1, %g2
234 call loop_15
235 fnot2s %f11, %f21
236 fmovsn %xcc, %f3, %f15
237 movneg %icc, %g4, %g6
238loop_15:
239 call loop_16
240 movrlez %i5, 0x2AE, %i0
241 fmovdcc %icc, %f16, %f16
242 call loop_17
243loop_16:
244 restored
245 rdpr %cwp, %g1
246 rdpr %cansave, %g2
247 rdpr %canrestore, %g3
248 rdpr %cleanwin, %g4
249 rdpr %otherwin, %g5
250 rdpr %wstate, %g6
251 call loop_18
252 wr %l4, 0x1DB4, %sys_tick
253loop_17:
254 call loop_19
255 orn %o1, %o7, %l3
256loop_18:
257 edge32l %g7, %i1, %o3
258 fmovsleu %xcc, %f27, %f11
259loop_19:
260 andcc %g3, 0x182C, %l2
261 subc %o6, 0x1C50, %i7
262 call loop_20
263 fmuld8ulx16 %f27, %f28, %f18
264 rd %tick_cmpr, %i6
265 fcmpeq16 %f20, %f20, %o2
266loop_20:
267 fxnor %f8, %f14, %f18
268 call loop_21
269 fandnot2 %f26, %f20, %f14
270 fpsub16s %f15, %f16, %f1
271 call loop_22
272loop_21:
273 call loop_23
274 call loop_24
275 call loop_25
276loop_22:
277 umul %o5, 0x1BDE, %o4
278loop_23:
279 movneg %icc, 0x05F, %i3
280loop_24:
281 te %icc, 0x6
282loop_25:
283 nop
284 set 0x2C, %o2
285 lduh [%l7 + %o2], %g5
286 movu %fcc0, %i4, %l6
287 fmovrdlz %l0, %f10, %f26
288 fmovdcs %icc, %f26, %f12
289 fmovsu %fcc3, %f22, %f15
290 fmovscc %icc, %f12, %f15
291 fnot2 %f0, %f0
292 nop
293 fitos %f2, %f18
294 fstod %f18, %f22
295 call loop_26
296 pdist %f0, %f16, %f30
297 call loop_27
298 call loop_28
299loop_26:
300 call loop_29
301 tle %xcc, 0x1
302loop_27:
303 call loop_30
304loop_28:
305 edge16ln %o0, %l5, %l1
306loop_29:
307 tne %icc, 0x7
308 edge8 %g1, %i2, %g2
309loop_30:
310 fmovsvs %icc, %f26, %f31
311 fnot1s %f18, %f30
312 fnands %f28, %f24, %f2
313 fmul8sux16 %f16, %f22, %f6
314 edge32 %g6, %i5, %i0
315 nop
316 setx loop_31, %l0, %l1
317 wrpr 0x1, %tl
318 wrpr %l1, %tpc
319 add %l1, 0x4, %l1
320 wrpr %l1, %tnpc
321 setx 0x001400001407, %l0, %l1
322 wrpr %l1, %tstate
323 wrhpr 0x4, %htstate
324 retry
325 movvs %icc, 0x5A3, %l4
326 call loop_32
327 fblg,a,pt %fcc3, loop_33
328loop_31:
329 call loop_34
330 tsubcc %g4, 0x06A2, %o1
331loop_32:
332 nop
333 setx 0x0F9B, %l0, %o7
334 sdivcc %l3, %o7, %g7
335loop_33:
336 call loop_35
337loop_34:
338 call loop_36
339 call loop_37
340 bn %icc, loop_38
341loop_35:
342 call loop_39
343loop_36:
344 fmovrslez %o3, %f0, %f17
345loop_37:
346 nop
347 set 0x6F, %o1
348 ldub [%l7 + %o1], %i1
349loop_38:
350 tgu %icc, 0x1
351loop_39:
352 ldd [%l7 + 0x30], %l2
353 rd %softint, %o6
354 call loop_40
355 membar 0x73
356 smul %i7, %i6, %o2
357 call loop_41
358loop_40:
359 fmovdug %fcc3, %f16, %f20
360 fmovs %f21, %f10
361 call loop_42
362loop_41:
363 fmovrde %g3, %f12, %f26
364 fbne,a,pt %fcc2, loop_43
365 call loop_44
366loop_42:
367 fcmps %fcc0, %f8, %f15
368 nop
369 setx 0x6048CE3B233B13F0, %l0, %l6
370 stx %l6, [%l7 + 0x28]
371 ldd [%l7 + 0x28], %f30
372 setx 0xB3EED0EAE6034EC0, %l1, %l5
373 stx %l5, [%l7 + 0x10]
374 ldd [%l7 + 0x10], %f16
375 fmuld %f16, %f30, %f20
376loop_43:
377 fba,pn %fcc2, loop_45
378loop_44:
379 fmovsuge %fcc3, %f8, %f27
380 fxnor %f16, %f4, %f6
381 fmovsvc %xcc, %f11, %f24
382loop_45:
383 te %xcc, 0x4
384 fmovdcs %xcc, %f16, %f30
385 call loop_46
386 fmovdge %icc, %f2, %f2
387 fmovs %f0, %f1
388 orncc %o4, %o5, %g5
389loop_46:
390 edge16n %i4, %i3, %l0
391 call loop_47
392 nop
393 setx 0xFDAA4A5F, %l0, %l6
394 st %l6, [%l7 + 0x28]
395 ld [%l7 + 0x28], %f10
396 setx 0xE4AB2172, %l1, %l5
397 st %l5, [%l7 + 0x10]
398 ld [%l7 + 0x10], %f8
399 fsubs %f8, %f10, %f12
400 call loop_48
401 rdpr %tl, %l6
402loop_47:
403 sllx %o0, 0x16, %l1
404 call loop_49
405loop_48:
406 xnorcc %g1, %l5, %i2
407 nop
408 set 0x6A, %l2
409 stb %g6, [%l7 + %l2]
410 brgz %i5, loop_50
411loop_49:
412 fcmpd %fcc3, %f2, %f4
413 nop
414 fitos %f7, %f1
415 fstoi %f1, %f31
416 smulcc %i0, %g2, %g4
417loop_50:
418 movleu %icc, %l4, %o1
419 call loop_51
420 movpos %xcc, %o7, %g7
421 call loop_52
422 nop
423 set 0x0C, %g5
424 swap [%l7 + %g5], %o3
425loop_51:
426 call loop_53
427 movrlez %i1, 0x03C, %l2
428loop_52:
429 edge32 %o6, %l3, %i7
430 call loop_54
431loop_53:
432 taddcctv %o2, 0x18EA, %i6
433 fornot1 %f26, %f6, %f30
434 call loop_55
435loop_54:
436 be %xcc, loop_56
437 rdhpr %hsys_tick_cmpr, %g3
438 nop
439 set 0x38, %l0
440 prefetch [%l7 + %l0], 0
441loop_55:
442 call loop_57
443loop_56:
444 fmovdvc %icc, %f0, %f0
445 taddcctv %o4, 0x0957, %o5
446 array32 %g5, %i3, %l0
447loop_57:
448 fmovsuge %fcc3, %f27, %f7
449 fmovrde %i4, %f12, %f4
450 rdpr %canrestore, %l6
451 call loop_58
452 call loop_59
453 ldstub [%l7 + 0x71], %l1
454 call loop_60
455loop_58:
456 fmovsue %fcc0, %f6, %f20
457loop_59:
458 sdiv %g1, 0x1D2C, %l5
459 call loop_61
460loop_60:
461 call loop_62
462 xnor %i2, 0x19C0, %g6
463 move %fcc1, %o0, %i5
464loop_61:
465 edge8ln %i0, %g2, %l4
466loop_62:
467 call loop_63
468 call loop_64
469 alignaddr %g4, %o1, %o7
470 call loop_65
471loop_63:
472 faligndata %f12, %f22, %f6
473loop_64:
474 movuge %fcc1, 0x175, %g7
475 fxors %f5, %f26, %f14
476loop_65:
477 nop
478 setx loop_66, %l0, %l1
479 jmpl %l1, %o3
480 alignaddr %i1, %l2, %l3
481 nop
482 setx 0x1C16, %l0, %i7
483 sdiv %o6, %i7, %i6
484 andcc %g3, 0x1C75, %o4
485loop_66:
486 sethi 0x0017, %o2
487 call loop_67
488 fmovdvc %icc, %f2, %f18
489 fbn,pt %fcc3, loop_68
490loop_67:
491 nop
492
493loop_68:
494 nop
495
496 EXIT_GOOD
497
498
499
500!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
501!
502! Stats for Thread 0:
503!
504! Type l : 10
505! Type a : 11
506! Type cti : 68
507! Type f : 57
508! Type i : 54
509!
510!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
511
512!
513! Thread 1 Start
514!
515main_t1:
516 mov %l7, %g1
517 !# Set %cwp for 8 windows
518 !# This threads memory space into each %l7
519 wrpr %g0, 0x7, %cwp
520 mov %g1, %l7
521 wrpr %g0, 0x6, %cwp
522 mov %g1, %l7
523 wrpr %g0, 0x5, %cwp
524 mov %g1, %l7
525 wrpr %g0, 0x4, %cwp
526 mov %g1, %l7
527 wrpr %g0, 0x3, %cwp
528 mov %g1, %l7
529 wrpr %g0, 0x2, %cwp
530 mov %g1, %l7
531 wrpr %g0, 0x1, %cwp
532 mov %g1, %l7
533 wrpr %g0, 0x0, %cwp
534 mov %g1, %l7
535
536 !# Set %fsr
537 setx 0x0000000000000000, %l0, %l6 !# no post process
538 stx %l6, [%l7 + 0x0] !# no post process
539 ldx [%l7 + 0x0], %fsr !# no post process
540
541 !# Initialize registers ..
542
543 !# Global registers
544 set 0x3, %g1
545 set 0x3, %g2
546 set 0x5, %g3
547 set 0xE, %g4
548 set 0x7, %g5
549 set 0x2, %g6
550 set 0xD, %g7
551 !# Input registers
552 set -0xC, %i0
553 set -0xE, %i1
554 set -0x3, %i2
555 set -0x0, %i3
556 set -0xB, %i4
557 set -0x0, %i5
558 set -0x4, %i6
559 set -0xE, %i7
560 !# Local registers
561 set 0x1FB7DF4F, %l0
562 set 0x28C4A374, %l1
563 set 0x4AE4A857, %l2
564 set 0x744A46F7, %l3
565 set 0x6CEDDFC2, %l4
566 set 0x3589FCFD, %l5
567 set 0x5A8EA362, %l6
568 !# Output registers
569 set -0x0068, %o0
570 set 0x1C9B, %o1
571 set 0x1279, %o2
572 set -0x0418, %o3
573 set -0x126B, %o4
574 set 0x006A, %o5
575 set 0x1FF2, %o6
576 set -0x0898, %o7
577 !# Float registers
578 INIT_TH_FP_REG(%l7,%f0,0xA4614F60243B2ED6)
579 INIT_TH_FP_REG(%l7,%f2,0x4DCC2DE710D109EF)
580 INIT_TH_FP_REG(%l7,%f4,0xCB873947E98D9408)
581 INIT_TH_FP_REG(%l7,%f6,0x3A2052A6786BE33F)
582 INIT_TH_FP_REG(%l7,%f8,0x9013DC668BF6D8CF)
583 INIT_TH_FP_REG(%l7,%f10,0x3FF2F28DFE9128BC)
584 INIT_TH_FP_REG(%l7,%f12,0x1EB3E5F49D5026AD)
585 INIT_TH_FP_REG(%l7,%f14,0xC9B0C3F8D0E7AD8B)
586 INIT_TH_FP_REG(%l7,%f16,0xF59B0574923872BC)
587 INIT_TH_FP_REG(%l7,%f18,0x75121D18D4B09293)
588 INIT_TH_FP_REG(%l7,%f20,0x099721E63DA7EBA9)
589 INIT_TH_FP_REG(%l7,%f22,0xDDEC52C2C142D36C)
590 INIT_TH_FP_REG(%l7,%f24,0x59CA0055E046B503)
591 INIT_TH_FP_REG(%l7,%f26,0xB79A7C1B0DE9A102)
592 INIT_TH_FP_REG(%l7,%f28,0x16B9B0C47BB6B48A)
593 INIT_TH_FP_REG(%l7,%f30,0xBF102F5D279F71DD)
594
595 !# Execute Main Diag ..
596
597 nop
598 setx 0x0864, %l0, %g5
599 sdivx %o5, %g5, %l0
600 call loop_69
601 fpsub16 %f14, %f28, %f26
602 movpos %icc, 0x23E, %i3
603 call loop_70
604loop_69:
605 call loop_71
606 fmovrdgez %l6, %f14, %f24
607
608 or %g0, 0x8, %l0
609 sllx %l0, 0x3c, %l0
610 wrhpr %l0, %g0, %hsys_tick_cmpr
611loop_70:
612 fmovsule %fcc3, %f15, %f26
613loop_71:
614 tpos %icc, 0x4
615 call loop_72
616 call loop_73
617 fones %f16
618 ta %xcc, 0x6
619loop_72:
620 orn %l5, %i2, %l1
621loop_73:
622 call loop_74
623 wr %g6, %o0, %pic
624 subccc %i5, 0x03F0, %i0
625 fmovdge %fcc0, %f16, %f12
626loop_74:
627 call loop_75
628 be,pt %icc, loop_76
629 call loop_77
630 call loop_78
631loop_75:
632 call loop_79
633loop_76:
634 stw %g2, [%l7 + 0x34]
635loop_77:
636 call loop_80
637loop_78:
638 fmovscs %xcc, %f10, %f21
639loop_79:
640 fcmpeq32 %f0, %f12, %l4
641 fmovdn %icc, %f6, %f18
642loop_80:
643 fpsub32s %f26, %f22, %f0
644 fmovdneg %xcc, %f8, %f14
645 rdhpr %hpstate, %o1
646 fmovsneg %xcc, %f18, %f12
647 fmovrdgez %o7, %f22, %f2
648 call loop_81
649 movre %g4, 0x13F, %o3
650 fmovdul %fcc2, %f16, %f26
651 membar 0x17
652loop_81:
653 fmovde %xcc, %f20, %f16
654 alignaddrl %g7, %l2, %l3
655 movl %fcc0, %o6, %i1
656 tcs %xcc, 0x0
657 rdpr %wstate, %i6
658 popc %i7, %o4
659 call loop_82
660 nop
661 set 0x6F, %g6
662 ldstub [%l7 + %g6], %g3
663 call loop_83
664 call loop_84
665loop_82:
666 taddcc %o5, %g5, %l0
667 call loop_85
668loop_83:
669 fmovrsgez %i3, %f27, %f21
670loop_84:
671 edge32 %o2, %i4, %l6
672 movrgez %l5, %i2, %l1
673loop_85:
674 fbuge,a %fcc0, loop_86
675 fpsub32 %f4, %f18, %f6
676 call loop_87
677 fmovdle %xcc, %f12, %f30
678loop_86:
679 call loop_88
680 call loop_89
681loop_87:
682 call loop_90
683 call loop_91
684loop_88:
685 bpos %icc, loop_92
686loop_89:
687 fmovslg %fcc0, %f12, %f1
688loop_90:
689 fnand %f30, %f18, %f30
690loop_91:
691 movule %fcc1, %g1, %g6
692loop_92:
693 fbo,a,pn %fcc3, loop_93
694 brlez %i5, loop_94
695 nop
696 setx 0x917ED9B6B3D6D7F4, %l0, %l6
697 stx %l6, [%l7 + 0x28]
698 ldd [%l7 + 0x28], %f0
699 setx 0x143394F42B17B906, %l1, %l5
700 stx %l5, [%l7 + 0x10]
701 ldd [%l7 + 0x10], %f16
702 fmuld %f16, %f0, %f22
703 wr %o0, 0x1649, %set_softint
704loop_93:
705 call loop_95
706loop_94:
707 call loop_96
708 call loop_97
709 rdhpr %ver, %g2
710loop_95:
711 fmovsuge %fcc0, %f16, %f19
712loop_96:
713 orn %l4, 0x0200, %o1
714loop_97:
715 tneg %icc, 0x0
716 call loop_98
717 movneg %icc, %i0, %o7
718 call loop_99
719 call loop_100
720loop_98:
721 tg %icc, 0x1
722 fcmpne32 %f6, %f28, %g4
723loop_99:
724 restored
725 rdpr %cwp, %g1
726 rdpr %cansave, %g2
727 rdpr %canrestore, %g3
728 rdpr %cleanwin, %g4
729 rdpr %otherwin, %g5
730 rdpr %wstate, %g6
731loop_100:
732 nop
733 setx 0x1C74865F, %l0, %l6
734 st %l6, [%l7 + 0x5C]
735 ld [%l7 + 0x5C], %fsr
736 call loop_101
737 call loop_102
738 fcmps %fcc2, %f13, %f11
739 call loop_103
740loop_101:
741 fmovdne %fcc1, %f28, %f26
742loop_102:
743 call loop_104
744 tcc %icc, 0x1
745loop_103:
746 edge16ln %g7, %o3, %l2
747 and %l3, 0x095C, %o6
748loop_104:
749 fmovdg %fcc1, %f4, %f28
750 nop
751 set 0x37, %i7
752 stb %i6, [%l7 + %i7]
753 addccc %i7, %i1, %g3
754 brlz,pt %o4, loop_105
755 call loop_106
756 movrne %o5, %l0, %i3
757 set 0x73, %i0
758 lduba [%l7 + %i0] 0x80, %o2
759loop_105:
760 subccc %g5, 0x1718, %l6
761loop_106:
762 rdpr %tba, %i4
763 tvs %icc, 0x3
764 smul %l5, 0x0DAD, %i2
765 nop
766 setx 0x7DC22A28B5D5EEBB, %l0, %l6
767 stx %l6, [%l7 + 0x28]
768 ldd [%l7 + 0x28], %f14
769 fsqrtd %f14, %f16
770 call loop_107
771 call loop_108
772 fpack16 %f14, %f20
773 fmul8ulx16 %f0, %f0, %f22
774loop_107:
775 fsrc1 %f28, %f12
776loop_108:
777 movrgez %l1, 0x2E2, %g1
778 movul %fcc2, 0x754, %g6
779 fmovsu %fcc2, %f1, %f29
780 sll %i5, 0x15, %o0
781 fbge,a %fcc1, loop_109
782 fmovdl %icc, %f22, %f22
783 call loop_110
784 nop
785 setx 0x1877, %l0, %o1
786 udiv %g2, %o1, %l4
787loop_109:
788 call loop_111
789 call loop_112
790loop_110:
791 fnegd %f0, %f16
792 and %o7, 0x05DA, %g4
793loop_111:
794 tneg %icc, 0x2
795loop_112:
796 fmovrsgez %i0, %f20, %f17
797 call loop_113
798 wr %o3, %g7, %softint
799 fbo %fcc3, loop_114
800 fmovsug %fcc1, %f15, %f17
801loop_113:
802 tge %xcc, 0x4
803 fmovdug %fcc0, %f26, %f20
804loop_114:
805 nop
806 setx 0x000B, %l0, %l2
807 sdiv %l3, %l2, %o6
808 fornot2 %f12, %f26, %f12
809 fpsub32s %f9, %f27, %f10
810 call loop_115
811 fble %fcc3, loop_116
812 edge16ln %i6, %i7, %i1
813 fmovsneg %xcc, %f21, %f9
814loop_115:
815 fnors %f24, %f30, %f11
816loop_116:
817 fmovsneg %icc, %f25, %f3
818 fpsub32 %f10, %f30, %f22
819 nop
820 setx 0x9A0DD4BE, %l0, %l6
821 st %l6, [%l7 + 0x28]
822 ld [%l7 + 0x28], %f5
823 fsqrts %f5, %f25
824 call loop_117
825 sra %o4, 0x0A, %g3
826 fmovdue %fcc2, %f22, %f30
827 fmovdgu %xcc, %f20, %f14
828loop_117:
829 fpack16 %f30, %f22
830 tpos %icc, 0x6
831 call loop_118
832 movrne %o5, 0x293, %i3
833 fcmple16 %f26, %f10, %l0
834 taddcctv %g5, %l6, %o2
835loop_118:
836 nop
837 fitos %f10, %f5
838 fstox %f5, %f2
839 fxtos %f2, %f8
840 fmovdvc %xcc, %f0, %f20
841 array32 %l5, %i2, %i4
842 xor %g1, %g6, %i5
843 fmovsule %fcc0, %f17, %f31
844 call loop_119
845 edge8ln %o0, %l1, %o1
846 call loop_120
847 brlez,a,pn %g2, loop_121
848loop_119:
849 movuge %fcc0, %o7, %g4
850 call loop_122
851loop_120:
852 fmovsug %fcc3, %f22, %f2
853loop_121:
854 tsubcc %l4, %o3, %i0
855 nop
856 setx 0x60FD7FFA0BAD48E2, %l0, %l6
857 stx %l6, [%l7 + 0x60]
858 ldx [%l7 + 0x60], %fsr
859loop_122:
860 call loop_123
861 rd %y, %g7
862 for %f4, %f24, %f16
863 call loop_124
864loop_123:
865 fornot1s %f3, %f10, %f4
866 bleu,a,pt %xcc, loop_125
867 call loop_126
868loop_124:
869 fsrc2s %f2, %f26
870 xnorcc %l3, %o6, %i6
871loop_125:
872 call loop_127
873loop_126:
874 edge32 %i7, %l2, %i1
875 smul %g3, 0x19F0, %o4
876 rdpr %cansave, %o5
877loop_127:
878 call loop_128
879 fmul8x16 %f11, %f2, %f6
880 fcmpgt16 %f24, %f4, %i3
881 fbuge,pt %fcc0, loop_129
882loop_128:
883 rdhpr %hintp, %g5
884 bvs,a %xcc, loop_130
885 call loop_131
886loop_129:
887 addccc %l0, %o2, %l5
888 movu %fcc3, %i2, %i4
889loop_130:
890 fornot2 %f28, %f8, %f2
891loop_131:
892 xnorcc %g1, %l6, %g6
893 movrgz %o0, %l1, %o1
894 wrpr %g0, 0x2, %gl
895 movge %fcc2, %g2, %l4
896 fabsd %f18, %f22
897 nop
898 setx 0x235C448A, %l0, %l6
899 st %l6, [%l7 + 0x28]
900 ld [%l7 + 0x28], %fsr
901 brlez,a %o3, loop_132
902 addccc %g4, 0x1C47, %i0
903 call loop_133
904 fmovdn %fcc2, %f24, %f6
905loop_132:
906 movlg %fcc1, 0x5DE, %l3
907loop_133:
908 nop
909
910 EXIT_GOOD
911
912
913
914!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
915!
916! Stats for Thread 1:
917!
918! Type l : 7
919! Type a : 12
920! Type x : 1
921! Type cti : 65
922! Type f : 58
923! Type i : 57
924!
925!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
926
927!
928! Thread 2 Start
929!
930main_t2:
931 mov %l7, %g1
932 !# Set %cwp for 8 windows
933 !# This threads memory space into each %l7
934 wrpr %g0, 0x7, %cwp
935 mov %g1, %l7
936 wrpr %g0, 0x6, %cwp
937 mov %g1, %l7
938 wrpr %g0, 0x5, %cwp
939 mov %g1, %l7
940 wrpr %g0, 0x4, %cwp
941 mov %g1, %l7
942 wrpr %g0, 0x3, %cwp
943 mov %g1, %l7
944 wrpr %g0, 0x2, %cwp
945 mov %g1, %l7
946 wrpr %g0, 0x1, %cwp
947 mov %g1, %l7
948 wrpr %g0, 0x0, %cwp
949 mov %g1, %l7
950
951 !# Set %fsr
952 setx 0x0000000000000000, %l0, %l6 !# no post process
953 stx %l6, [%l7 + 0x0] !# no post process
954 ldx [%l7 + 0x0], %fsr !# no post process
955
956 !# Initialize registers ..
957
958 !# Global registers
959 set 0x9, %g1
960 set 0x9, %g2
961 set 0xD, %g3
962 set 0x3, %g4
963 set 0xC, %g5
964 set 0xF, %g6
965 set 0x9, %g7
966 !# Input registers
967 set -0x4, %i0
968 set -0xF, %i1
969 set -0x7, %i2
970 set -0xF, %i3
971 set -0x6, %i4
972 set -0x2, %i5
973 set -0x6, %i6
974 set -0x6, %i7
975 !# Local registers
976 set 0x16982D17, %l0
977 set 0x0334F819, %l1
978 set 0x4831B7DD, %l2
979 set 0x6CF0CBA1, %l3
980 set 0x44910330, %l4
981 set 0x0271CA9C, %l5
982 set 0x13236D1E, %l6
983 !# Output registers
984 set 0x0B13, %o0
985 set -0x05A3, %o1
986 set 0x154C, %o2
987 set 0x12DD, %o3
988 set 0x1204, %o4
989 set -0x0DFB, %o5
990 set 0x04D3, %o6
991 set 0x105F, %o7
992 !# Float registers
993 INIT_TH_FP_REG(%l7,%f0,0xA4614F60243B2ED6)
994 INIT_TH_FP_REG(%l7,%f2,0x4DCC2DE710D109EF)
995 INIT_TH_FP_REG(%l7,%f4,0xCB873947E98D9408)
996 INIT_TH_FP_REG(%l7,%f6,0x3A2052A6786BE33F)
997 INIT_TH_FP_REG(%l7,%f8,0x9013DC668BF6D8CF)
998 INIT_TH_FP_REG(%l7,%f10,0x3FF2F28DFE9128BC)
999 INIT_TH_FP_REG(%l7,%f12,0x1EB3E5F49D5026AD)
1000 INIT_TH_FP_REG(%l7,%f14,0xC9B0C3F8D0E7AD8B)
1001 INIT_TH_FP_REG(%l7,%f16,0xF59B0574923872BC)
1002 INIT_TH_FP_REG(%l7,%f18,0x75121D18D4B09293)
1003 INIT_TH_FP_REG(%l7,%f20,0x099721E63DA7EBA9)
1004 INIT_TH_FP_REG(%l7,%f22,0xDDEC52C2C142D36C)
1005 INIT_TH_FP_REG(%l7,%f24,0x59CA0055E046B503)
1006 INIT_TH_FP_REG(%l7,%f26,0xB79A7C1B0DE9A102)
1007 INIT_TH_FP_REG(%l7,%f28,0x16B9B0C47BB6B48A)
1008 INIT_TH_FP_REG(%l7,%f30,0xBF102F5D279F71DD)
1009
1010 !# Execute Main Diag ..
1011
1012 fmovsge %xcc, %f8, %f11
1013 call loop_134
1014 fnot1s %f25, %f19
1015 call loop_135
1016 fmovde %fcc2, %f16, %f18
1017loop_134:
1018 call loop_136
1019 brnz,a %o6, loop_137
1020loop_135:
1021 restored
1022 rdpr %cwp, %g1
1023 rdpr %cansave, %g2
1024 rdpr %canrestore, %g3
1025 rdpr %cleanwin, %g4
1026 rdpr %otherwin, %g5
1027 rdpr %wstate, %g6
1028 fpadd32 %f30, %f20, %f12
1029loop_136:
1030 movrgez %i6, %g7, %i7
1031loop_137:
1032 xnorcc %i1, %g3, %o4
1033 fmovrde %l2, %f22, %f18
1034 fandnot2 %f24, %f4, %f16
1035 ldsw [%l7 + 0x10], %o5
1036 bgu,pn %icc, loop_138
1037 fpadd16 %f24, %f30, %f24
1038 tgu %icc, 0x4
1039 rdpr %wstate, %i3
1040loop_138:
1041 call loop_139
1042 and %l0, %o2, %g5
1043 subccc %i2, 0x0C62, %i4
1044 nop
1045 set 0x50, %i4
1046 ldd [%l7 + %i4], %f12
1047loop_139:
1048 fmovduge %fcc0, %f24, %f12
1049 rd %ccr, %g1
1050 or %l5, %g6, %l6
1051 call loop_140
1052 edge16ln %o0, %l1, %i5
1053 call loop_141
1054 fmul8sux16 %f26, %f0, %f24
1055loop_140:
1056 bneg,a %icc, loop_142
1057 movge %fcc3, 0x19D, %o1
1058loop_141:
1059 call loop_143
1060 call loop_144
1061loop_142:
1062 wr %o7, 0x116E, %ccr
1063 fmovsne %fcc2, %f5, %f2
1064loop_143:
1065 subccc %g2, 0x0835, %o3
1066loop_144:
1067 call loop_145
1068 fsrc1 %f20, %f28
1069 edge16n %g4, %i0, %l3
1070 call loop_146
1071loop_145:
1072 xor %l4, 0x1405, %i6
1073 nop
1074 setx 0x1B58, %l0, %g7
1075 sdiv %o6, %g7, %i1
1076 call loop_147
1077loop_146:
1078 fmovdge %fcc1, %f30, %f2
1079 bpos,pn %icc, loop_148
1080 orn %g3, %i7, %o4
1081loop_147:
1082 sub %o5, 0x13D8, %i3
1083 xnorcc %l2, 0x0E5A, %l0
1084loop_148:
1085 siam 0x3
1086 movo %fcc1, %o2, %i2
1087
1088 or %g0, 0x8, %l0
1089 sllx %l0, 0x3c, %l0
1090 wr %l0, 0x8F8, %sys_tick_cmpr
1091 call loop_149
1092 call loop_150
1093 nop
1094 setx 0x3AAFBBF305D37619, %l0, %l6
1095 stx %l6, [%l7 + 0x28]
1096 ldd [%l7 + 0x28], %f14
1097 setx 0xE8EFB09CB81CF0EE, %l1, %l5
1098 stx %l5, [%l7 + 0x10]
1099 ldd [%l7 + 0x10], %f12
1100 faddd %f12, %f14, %f4
1101 array32 %g5, %g1, %l5
1102loop_149:
1103 movo %fcc3, 0x58F, %l6
1104loop_150:
1105 call loop_151
1106 call loop_152
1107 call loop_153
1108 fmovsa %icc, %f29, %f11
1109loop_151:
1110 call loop_154
1111loop_152:
1112 andncc %g6, %l1, %i5
1113loop_153:
1114 ldsw [%l7 + 0x1C], %o0
1115 call loop_155
1116loop_154:
1117 call loop_156
1118 fba,pn %fcc3, loop_157
1119 stbar
1120loop_155:
1121 fmovrsne %o7, %f22, %f11
1122loop_156:
1123 call loop_158
1124loop_157:
1125 call loop_159
1126 call loop_160
1127 movneg %icc, 0x239, %o1
1128loop_158:
1129 rdhpr %ver, %o3
1130loop_159:
1131 call loop_161
1132loop_160:
1133 edge16ln %g2, %i0, %g4
1134 call loop_162
1135 fabsd %f12, %f12
1136loop_161:
1137 nop
1138 setx 0xE52E077829BAD61F, %l0, %l6
1139 stx %l6, [%l7 + 0x28]
1140 ldd [%l7 + 0x28], %f6
1141 setx 0xC8DD306B2E53A43C, %l1, %l5
1142 stx %l5, [%l7 + 0x10]
1143 ldd [%l7 + 0x10], %f16
1144 fmuld %f16, %f6, %f0
1145 set 0x48, %g1
1146 swapa [%l7 + %g1] 0x81, %l3
1147loop_162:
1148 flushw
1149 fmovsg %xcc, %f1, %f4
1150 call loop_163
1151 nop
1152 setx 0x0FB8, %l0, %i6
1153 sdivcc %l4, %i6, %o6
1154 wr %g7, 0x0378, %clear_softint
1155 movn %fcc1, 0x6FD, %g3
1156loop_163:
1157 call loop_164
1158 bn,a,pn %icc, loop_165
1159 edge8 %i1, %o4, %o5
1160 call loop_166
1161loop_164:
1162 call loop_167
1163loop_165:
1164 movge %fcc0, 0x4CB, %i7
1165 bvc %icc, loop_168
1166loop_166:
1167 call loop_169
1168loop_167:
1169 fsrc2 %f26, %f28
1170 tvs %xcc, 0x1
1171loop_168:
1172 fmovrslez %l2, %f27, %f6
1173loop_169:
1174 rdhpr %htba, %l0
1175 call loop_170
1176 ba,a %icc, loop_171
1177 fpadd32s %f3, %f17, %f10
1178 movcs %icc, %o2, %i2
1179loop_170:
1180 fxnors %f26, %f27, %f11
1181loop_171:
1182 call loop_172
1183 movue %fcc0, 0x378, %i4
1184
1185 or %g0, 0x8, %l0
1186 sllx %l0, 0x3c, %l0
1187 wrhpr %l0, %g0, %hsys_tick_cmpr
1188 movl %icc, 0x0D6, %i3
1189loop_172:
1190 call loop_173
1191 fandnot1s %f18, %f26, %f19
1192 fmovdul %fcc2, %f10, %f18
1193 fornot1s %f27, %f24, %f9
1194loop_173:
1195 call loop_174
1196 call loop_175
1197 fabsd %f20, %f20
1198 fcmpd %fcc0, %f0, %f22
1199loop_174:
1200 call loop_176
1201loop_175:
1202 bpos,a,pt %xcc, loop_177
1203 fmovsu %fcc1, %f16, %f31
1204 bg,pt %xcc, loop_178
1205loop_176:
1206 subc %l5, 0x0382, %g6
1207loop_177:
1208 tpos %icc, 0x6
1209 fmovsl %icc, %f13, %f5
1210loop_178:
1211 fmovdu %fcc2, %f8, %f18
1212 edge8 %l1, %l6, %o0
1213 fcmpeq32 %f8, %f10, %o7
1214 sethi 0x1F0A, %o1
1215 fba,a %fcc0, loop_179
1216 call loop_180
1217 tneg %xcc, 0x7
1218 fmovrsgz %o3, %f14, %f3
1219loop_179:
1220 fbuge,pn %fcc2, loop_181
1221loop_180:
1222 prefetch [%l7 + 0x3C], 2
1223 call loop_182
1224 fmovdcs %icc, %f14, %f4
1225loop_181:
1226 call loop_183
1227 fmul8x16al %f8, %f4, %f20
1228loop_182:
1229 call loop_184
1230 add %i5, %g2, %i0
1231loop_183:
1232 fnor %f14, %f0, %f2
1233 bg %xcc, loop_185
1234loop_184:
1235 fpmerge %f1, %f16, %f18
1236 call loop_186
1237 call loop_187
1238loop_185:
1239 call loop_188
1240 tsubcc %l3, %l4, %i6
1241loop_186:
1242 call loop_189
1243loop_187:
1244 tvc %xcc, 0x5
1245loop_188:
1246 tgu %icc, 0x2
1247 movo %fcc0, %g4, %o6
1248loop_189:
1249 popc 0x0370, %g3
1250 fandnot2 %f8, %f28, %f26
1251 fmovdg %fcc3, %f16, %f12
1252 fors %f15, %f14, %f24
1253 fmovspos %xcc, %f0, %f10
1254 call loop_190
1255 rdpr %otherwin, %g7
1256 fands %f18, %f25, %f12
1257 fxors %f16, %f10, %f16
1258loop_190:
1259 nop
1260 setx loop_191, %l0, %l1
1261 jmpl %l1, %i1
1262 movug %fcc3, 0x286, %o4
1263 fbu %fcc3, loop_192
1264 fcmpne16 %f14, %f28, %o5
1265loop_191:
1266 fabsd %f16, %f12
1267 fnor %f28, %f6, %f14
1268loop_192:
1269 fone %f16
1270 fbul,a %fcc0, loop_193
1271 stbar
1272 pdist %f6, %f22, %f0
1273 movleu %xcc, 0x406, %i7
1274loop_193:
1275 edge8 %l2, %l0, %i2
1276 fcmpgt32 %f0, %f18, %o2
1277 fcmpgt16 %f6, %f6, %g5
1278 fxnors %f13, %f13, %f27
1279 tsubcc %g1, %i4, %i3
1280 call loop_194
1281 call loop_195
1282 mulx %g6, 0x0FD8, %l5
1283 bleu,pt %icc, loop_196
1284loop_194:
1285 fbne,a,pn %fcc2, loop_197
1286loop_195:
1287 fmul8ulx16 %f2, %f28, %f2
1288 movu %fcc3, %l1, %o0
1289loop_196:
1290 call loop_198
1291loop_197:
1292 fbge,a %fcc2, loop_199
1293 call loop_200
1294 te %xcc, 0x7
1295loop_198:
1296 tsubcctv %l6, %o1, %o7
1297loop_199:
1298 bvc,a,pn %xcc, loop_201
1299loop_200:
1300 fsrc2s %f13, %f1
1301 movre %i5, %o3, %i0
1302 call loop_202
1303loop_201:
1304 nop
1305 fitod %f8, %f28
1306 fdtox %f28, %f28
1307 rd %fprs, %l3
1308 fcmpgt16 %f14, %f24, %g2
1309loop_202:
1310 xnor %l4, 0x1AA5, %i6
1311 sub %g4, 0x0BBB, %g3
1312 srlx %o6, 0x11, %i1
1313 call loop_203
1314 stw %o4, [%l7 + 0x2C]
1315 fzero %f10
1316 bn %icc, loop_204
1317loop_203:
1318 nop
1319
1320loop_204:
1321 nop
1322
1323 EXIT_GOOD
1324
1325
1326
1327!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1328!
1329! Stats for Thread 2:
1330!
1331! Type l : 8
1332! Type a : 10
1333! Type x : 1
1334! Type cti : 71
1335! Type f : 56
1336! Type i : 54
1337!
1338!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1339
1340!
1341! Thread 3 Start
1342!
1343main_t3:
1344 mov %l7, %g1
1345 !# Set %cwp for 8 windows
1346 !# This threads memory space into each %l7
1347 wrpr %g0, 0x7, %cwp
1348 mov %g1, %l7
1349 wrpr %g0, 0x6, %cwp
1350 mov %g1, %l7
1351 wrpr %g0, 0x5, %cwp
1352 mov %g1, %l7
1353 wrpr %g0, 0x4, %cwp
1354 mov %g1, %l7
1355 wrpr %g0, 0x3, %cwp
1356 mov %g1, %l7
1357 wrpr %g0, 0x2, %cwp
1358 mov %g1, %l7
1359 wrpr %g0, 0x1, %cwp
1360 mov %g1, %l7
1361 wrpr %g0, 0x0, %cwp
1362 mov %g1, %l7
1363
1364 !# Set %fsr
1365 setx 0x0000000000000000, %l0, %l6 !# no post process
1366 stx %l6, [%l7 + 0x0] !# no post process
1367 ldx [%l7 + 0x0], %fsr !# no post process
1368
1369 !# Initialize registers ..
1370
1371 !# Global registers
1372 set 0x4, %g1
1373 set 0xD, %g2
1374 set 0x4, %g3
1375 set 0xD, %g4
1376 set 0xE, %g5
1377 set 0x8, %g6
1378 set 0x8, %g7
1379 !# Input registers
1380 set -0x1, %i0
1381 set -0xA, %i1
1382 set -0xD, %i2
1383 set -0x8, %i3
1384 set -0x4, %i4
1385 set -0xC, %i5
1386 set -0x9, %i6
1387 set -0x6, %i7
1388 !# Local registers
1389 set 0x75CFAF4A, %l0
1390 set 0x730D98F7, %l1
1391 set 0x5C4D427E, %l2
1392 set 0x5CF389C6, %l3
1393 set 0x261B8706, %l4
1394 set 0x4AF92CBB, %l5
1395 set 0x5EF4B00F, %l6
1396 !# Output registers
1397 set -0x0AB7, %o0
1398 set 0x03F2, %o1
1399 set 0x1948, %o2
1400 set -0x1471, %o3
1401 set 0x1799, %o4
1402 set -0x0900, %o5
1403 set 0x0F9B, %o6
1404 set 0x15DE, %o7
1405 !# Float registers
1406 INIT_TH_FP_REG(%l7,%f0,0xA4614F60243B2ED6)
1407 INIT_TH_FP_REG(%l7,%f2,0x4DCC2DE710D109EF)
1408 INIT_TH_FP_REG(%l7,%f4,0xCB873947E98D9408)
1409 INIT_TH_FP_REG(%l7,%f6,0x3A2052A6786BE33F)
1410 INIT_TH_FP_REG(%l7,%f8,0x9013DC668BF6D8CF)
1411 INIT_TH_FP_REG(%l7,%f10,0x3FF2F28DFE9128BC)
1412 INIT_TH_FP_REG(%l7,%f12,0x1EB3E5F49D5026AD)
1413 INIT_TH_FP_REG(%l7,%f14,0xC9B0C3F8D0E7AD8B)
1414 INIT_TH_FP_REG(%l7,%f16,0xF59B0574923872BC)
1415 INIT_TH_FP_REG(%l7,%f18,0x75121D18D4B09293)
1416 INIT_TH_FP_REG(%l7,%f20,0x099721E63DA7EBA9)
1417 INIT_TH_FP_REG(%l7,%f22,0xDDEC52C2C142D36C)
1418 INIT_TH_FP_REG(%l7,%f24,0x59CA0055E046B503)
1419 INIT_TH_FP_REG(%l7,%f26,0xB79A7C1B0DE9A102)
1420 INIT_TH_FP_REG(%l7,%f28,0x16B9B0C47BB6B48A)
1421 INIT_TH_FP_REG(%l7,%f30,0xBF102F5D279F71DD)
1422
1423 !# Execute Main Diag ..
1424
1425 fmovdg %xcc, %f12, %f28
1426 sll %o5, 0x0E, %i7
1427 fmuld8sux16 %f6, %f18, %f28
1428 fmovsn %xcc, %f11, %f19
1429 pdist %f10, %f30, %f14
1430 fsrc2s %f13, %f26
1431 call loop_205
1432 movule %fcc0, %l2, %l0
1433 fcmple16 %f6, %f2, %i2
1434 fmovrsne %o2, %f28, %f23
1435loop_205:
1436 fmovsule %fcc3, %f22, %f18
1437 call loop_206
1438 fcmpgt16 %f26, %f8, %g5
1439 alignaddrl %g1, %i4, %i3
1440 fmovdg %fcc2, %f8, %f14
1441loop_206:
1442 call loop_207
1443 nop
1444 setx 0x13D5, %l0, %l5
1445 udiv %g7, %l5, %g6
1446 call loop_208
1447 add %l1, %l6, %o0
1448loop_207:
1449 sllx %o1, 0x1C, %o7
1450 nop
1451 setx 0xFAB0ECFA, %l0, %l6
1452 st %l6, [%l7 + 0x28]
1453 ld [%l7 + 0x28], %f25
1454 setx 0x0DD11D7E, %l1, %l5
1455 st %l5, [%l7 + 0x10]
1456 ld [%l7 + 0x10], %f8
1457 fmuls %f8, %f25, %f20
1458loop_208:
1459 call loop_209
1460 fcmpeq16 %f18, %f0, %o3
1461 nop
1462 setx 0xE1C4449905919977, %l0, %l6
1463 stx %l6, [%l7 + 0x28]
1464 ldd [%l7 + 0x28], %f0
1465 setx 0x39BB11FA0DB61B4F, %l1, %l5
1466 stx %l5, [%l7 + 0x10]
1467 ldd [%l7 + 0x10], %f28
1468 fmuld %f28, %f0, %f2
1469 call loop_210
1470loop_209:
1471 xor %i0, 0x12E0, %i5
1472 fmovrdne %l3, %f2, %f4
1473 call loop_211
1474loop_210:
1475 fbg,pn %fcc2, loop_212
1476 edge8ln %l4, %g2, %g4
1477 fmovrslz %g3, %f19, %f17
1478loop_211:
1479 fxors %f20, %f31, %f31
1480loop_212:
1481 rdpr %cwp, %i6
1482 call loop_213
1483 call loop_214
1484 movrgz %o6, %o4, %o5
1485 movug %fcc2, %i1, %i7
1486loop_213:
1487 nop
1488 setx 0x19B65041DFC33622, %l0, %l6
1489 stx %l6, [%l7 + 0x28]
1490 ldd [%l7 + 0x28], %f26
1491 setx 0x01081FBB, %l1, %l5
1492 stx %l5, [%l7 + 0x10]
1493 ldd [%l7 + 0x10], %f24
1494 fsmuld %f24, %f26, %f18
1495loop_214:
1496 nop
1497 setx loop_215, %l0, %l1
1498 wrpr 0x1, %tl
1499 wrpr %l1, %tpc
1500 add %l1, 0x4, %l1
1501 wrpr %l1, %tnpc
1502 setx 0x012100001401, %l0, %l1
1503 wrpr %l1, %tstate
1504 wrhpr 0x4, %htstate
1505 retry
1506 rd %pc, %l0
1507 call loop_216
1508 call loop_217
1509loop_215:
1510 fornot1s %f16, %f30, %f3
1511 fmovso %fcc3, %f11, %f0
1512loop_216:
1513 nop
1514 fitos %f3, %f11
1515 fstoi %f11, %f5
1516loop_217:
1517 mulx %i2, 0x0F05, %l2
1518 call loop_218
1519 nop
1520 fitos %f1, %f12
1521 fstod %f12, %f4
1522 movcs %xcc, 0x374, %o2
1523 call loop_219
1524loop_218:
1525 fmovdne %icc, %f8, %f8
1526 movul %fcc2, 0x526, %g1
1527 call loop_220
1528loop_219:
1529 fcmped %fcc2, %f22, %f16
1530 movne %fcc1, 0x322, %g5
1531 brnz,a %i4, loop_221
1532loop_220:
1533 and %g7, %l5, %g6
1534 fcmpes %fcc3, %f5, %f6
1535 call loop_222
1536loop_221:
1537 st %f8, [%l7 + 0x0C]
1538 call loop_223
1539 or %i3, %l6, %l1
1540loop_222:
1541 call loop_224
1542 call loop_225
1543loop_223:
1544 rdpr %canrestore, %o0
1545 tle %xcc, 0x3
1546loop_224:
1547 or %o7, %o3, %o1
1548loop_225:
1549 fmovdule %fcc0, %f20, %f4
1550 fzeros %f27
1551 call loop_226
1552 rdhpr %ver, %i0
1553 fmovdue %fcc1, %f2, %f26
1554 st %f28, [%l7 + 0x50]
1555loop_226:
1556 nop
1557 set 0x5C, %o5
1558 sth %i5, [%l7 + %o5]
1559 fnegs %f19, %f12
1560 srlx %l4, %g2, %g4
1561 fmovdlg %fcc3, %f8, %f28
1562 brz,a,pt %l3, loop_227
1563 call loop_228
1564 call loop_229
1565 ta %xcc, 0x1
1566loop_227:
1567 call loop_230
1568loop_228:
1569 tcs %icc, 0x2
1570loop_229:
1571 fpsub16s %f16, %f4, %f13
1572 fmovdgu %icc, %f20, %f26
1573loop_230:
1574 movneg %icc, %i6, %g3
1575 fabsd %f18, %f24
1576 rdhpr %hintp, %o6
1577 call loop_231
1578 fcmps %fcc2, %f13, %f31
1579 tcs %icc, 0x0
1580 smul %o4, %i1, %i7
1581loop_231:
1582 brlz,pt %l0, loop_232
1583 call loop_233
1584 rdpr %canrestore, %i2
1585 call loop_234
1586loop_232:
1587 brgez,pt %l2, loop_235
1588loop_233:
1589 rdpr %canrestore, %o5
1590 sir 0x1398
1591loop_234:
1592 call loop_236
1593loop_235:
1594 call loop_237
1595 call loop_238
1596 call loop_239
1597loop_236:
1598 xnorcc %g1, 0x1C91, %o2
1599loop_237:
1600 fxor %f26, %f8, %f20
1601loop_238:
1602 fmovsvc %xcc, %f15, %f1
1603loop_239:
1604 call loop_240
1605 fmovsvs %icc, %f5, %f17
1606 fzero %f4
1607 tg %xcc, 0x4
1608loop_240:
1609 andcc %i4, %g5, %l5
1610 fmovsleu %xcc, %f31, %f19
1611 edge16 %g6, %g7, %i3
1612 call loop_241
1613 ba,a,pt %icc, loop_242
1614 call loop_243
1615 edge16n %l6, %l1, %o7
1616loop_241:
1617 call loop_244
1618loop_242:
1619 brz,a,pt %o3, loop_245
1620loop_243:
1621 nop
1622 set 0x18, %l5
1623 std %o0, [%l7 + %l5]
1624 fbge %fcc1, loop_246
1625loop_244:
1626 fmovdug %fcc2, %f2, %f24
1627loop_245:
1628 call loop_247
1629 fmovdu %fcc0, %f14, %f26
1630loop_246:
1631 tvs %xcc, 0x5
1632 fmovrdne %i0, %f24, %f24
1633loop_247:
1634 tleu %xcc, 0x6
1635 movge %xcc, 0x7AA, %o0
1636 nop
1637 fitod %f2, %f28
1638 fdtoi %f28, %f5
1639 nop
1640 fitos %f8, %f5
1641 fstoi %f5, %f5
1642 call loop_248
1643 fmovrdne %i5, %f18, %f18
1644 fmovsul %fcc1, %f27, %f19
1645 fmovsa %xcc, %f10, %f0
1646loop_248:
1647 call loop_249
1648 fpsub16s %f11, %f1, %f14
1649 wr %g2, 0x08A7, %clear_softint
1650 call loop_250
1651loop_249:
1652 call loop_251
1653 fpadd16 %f6, %f20, %f22
1654 membar #Sync
1655 set 0x40, %l1
1656 ldda [%l7 + %l1] 0xf1, %f16
1657loop_250:
1658 fmovdcc %xcc, %f18, %f4
1659loop_251:
1660 wrpr %g4, 0x1BC0, %cwp
1661 fcmpeq16 %f28, %f12, %l3
1662 call loop_252
1663 call loop_253
1664 call loop_254
1665 fpadd32s %f22, %f11, %f3
1666loop_252:
1667 fnegs %f27, %f29
1668loop_253:
1669 call loop_255
1670loop_254:
1671 fmovdgu %xcc, %f2, %f28
1672 fmovdn %fcc2, %f0, %f22
1673 taddcctv %l4, 0x1809, %i6
1674loop_255:
1675 fnegd %f4, %f0
1676 fmovsule %fcc1, %f20, %f21
1677 sir 0x1BD4
1678 rd %pc, %o6
1679 movgu %icc, 0x2A0, %g3
1680 fmovsule %fcc0, %f16, %f0
1681 fmovsg %fcc1, %f12, %f20
1682 ld [%l7 + 0x58], %f16
1683 movrlz %i1, %o4, %i7
1684 rdhpr %hpstate, %i2
1685
1686 or %g0, 0x8, %l0
1687 sllx %l0, 0x3c, %l0
1688 wrhpr %l0, %g0, %hsys_tick_cmpr
1689 edge32n %o5, %l0, %o2
1690 bg %icc, loop_256
1691 subc %i4, 0x0E56, %g5
1692 rd %tick_cmpr, %g1
1693 fmovrdlz %l5, %f28, %f22
1694loop_256:
1695 nop
1696 set 0x24, %o0
1697 prefetch [%l7 + %o0], 2
1698
1699 or %g0, 0x8, %l0
1700 sllx %l0, 0x3c, %l0
1701 wr %l0, 0x1C6, %sys_tick_cmpr
1702 bcs %xcc, loop_257
1703 xnor %g7, %l6, %i3
1704 fandnot1s %f6, %f18, %f31
1705 fmovdule %fcc0, %f6, %f6
1706loop_257:
1707 fexpand %f5, %f24
1708 call loop_258
1709 fandnot1 %f6, %f6, %f28
1710 nop
1711 fitos %f1, %f5
1712 fstox %f5, %f24
1713 fxtos %f24, %f10
1714 ta %xcc, 0x3
1715loop_258:
1716 xnor %o7, 0x11DA, %l1
1717 fmovrsgez %o1, %f0, %f24
1718 move %fcc2, 0x25B, %i0
1719 fnot2s %f9, %f3
1720 fpack16 %f10, %f31
1721 nop
1722 set 0x79, %g3
1723 ldstub [%l7 + %g3], %o0
1724 srax %o3, %g2, %i5
1725 call loop_259
1726 fandnot1 %f24, %f16, %f4
1727 array16 %g4, %l4, %l3
1728 bshuffle %f24, %f22, %f10
1729loop_259:
1730 call loop_260
1731 fpadd16 %f8, %f2, %f18
1732 call loop_261
1733 call loop_262
1734loop_260:
1735 andn %o6, 0x10F4, %g3
1736 nop
1737 set 0x40, %o7
1738 stx %fsr, [%l7 + %o7]
1739loop_261:
1740 fsrc1 %f0, %f30
1741loop_262:
1742 fnot1 %f4, %f4
1743 EXIT_GOOD
1744
1745
1746
1747!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1748!
1749! Stats for Thread 3:
1750!
1751! Type l : 9
1752! Type a : 14
1753! Type x : 1
1754! Type cti : 58
1755! Type f : 72
1756! Type i : 46
1757!
1758!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1759
1760!
1761! Thread 4 Start
1762!
1763main_t4:
1764 mov %l7, %g1
1765 !# Set %cwp for 8 windows
1766 !# This threads memory space into each %l7
1767 wrpr %g0, 0x7, %cwp
1768 mov %g1, %l7
1769 wrpr %g0, 0x6, %cwp
1770 mov %g1, %l7
1771 wrpr %g0, 0x5, %cwp
1772 mov %g1, %l7
1773 wrpr %g0, 0x4, %cwp
1774 mov %g1, %l7
1775 wrpr %g0, 0x3, %cwp
1776 mov %g1, %l7
1777 wrpr %g0, 0x2, %cwp
1778 mov %g1, %l7
1779 wrpr %g0, 0x1, %cwp
1780 mov %g1, %l7
1781 wrpr %g0, 0x0, %cwp
1782 mov %g1, %l7
1783
1784 !# Set %fsr
1785 setx 0x0000000000000000, %l0, %l6 !# no post process
1786 stx %l6, [%l7 + 0x0] !# no post process
1787 ldx [%l7 + 0x0], %fsr !# no post process
1788
1789 !# Initialize registers ..
1790
1791 !# Global registers
1792 set 0x3, %g1
1793 set 0xA, %g2
1794 set 0x0, %g3
1795 set 0x4, %g4
1796 set 0xA, %g5
1797 set 0x0, %g6
1798 set 0x7, %g7
1799 !# Input registers
1800 set -0x3, %i0
1801 set -0xE, %i1
1802 set -0xF, %i2
1803 set -0x4, %i3
1804 set -0x3, %i4
1805 set -0x6, %i5
1806 set -0x1, %i6
1807 set -0x5, %i7
1808 !# Local registers
1809 set 0x18FADD8F, %l0
1810 set 0x2FEE160F, %l1
1811 set 0x197C1796, %l2
1812 set 0x2B93B977, %l3
1813 set 0x6EE25DCF, %l4
1814 set 0x12A99DD1, %l5
1815 set 0x251CD8CA, %l6
1816 !# Output registers
1817 set 0x032D, %o0
1818 set -0x19AB, %o1
1819 set -0x0C0C, %o2
1820 set -0x0140, %o3
1821 set 0x117A, %o4
1822 set -0x13AF, %o5
1823 set 0x016E, %o6
1824 set 0x0618, %o7
1825 !# Float registers
1826 INIT_TH_FP_REG(%l7,%f0,0xA4614F60243B2ED6)
1827 INIT_TH_FP_REG(%l7,%f2,0x4DCC2DE710D109EF)
1828 INIT_TH_FP_REG(%l7,%f4,0xCB873947E98D9408)
1829 INIT_TH_FP_REG(%l7,%f6,0x3A2052A6786BE33F)
1830 INIT_TH_FP_REG(%l7,%f8,0x9013DC668BF6D8CF)
1831 INIT_TH_FP_REG(%l7,%f10,0x3FF2F28DFE9128BC)
1832 INIT_TH_FP_REG(%l7,%f12,0x1EB3E5F49D5026AD)
1833 INIT_TH_FP_REG(%l7,%f14,0xC9B0C3F8D0E7AD8B)
1834 INIT_TH_FP_REG(%l7,%f16,0xF59B0574923872BC)
1835 INIT_TH_FP_REG(%l7,%f18,0x75121D18D4B09293)
1836 INIT_TH_FP_REG(%l7,%f20,0x099721E63DA7EBA9)
1837 INIT_TH_FP_REG(%l7,%f22,0xDDEC52C2C142D36C)
1838 INIT_TH_FP_REG(%l7,%f24,0x59CA0055E046B503)
1839 INIT_TH_FP_REG(%l7,%f26,0xB79A7C1B0DE9A102)
1840 INIT_TH_FP_REG(%l7,%f28,0x16B9B0C47BB6B48A)
1841 INIT_TH_FP_REG(%l7,%f30,0xBF102F5D279F71DD)
1842
1843 !# Execute Main Diag ..
1844
1845 call loop_263
1846 call loop_264
1847 fcmped %fcc0, %f24, %f22
1848 call loop_265
1849loop_263:
1850 call loop_266
1851loop_264:
1852 tvc %icc, 0x6
1853 xorcc %i1, 0x0750, %o4
1854loop_265:
1855 fbul,a %fcc0, loop_267
1856loop_266:
1857 nop
1858 fitod %f6, %f18
1859 fdtoi %f18, %f2
1860 sethi 0x1DF8, %i6
1861 call loop_268
1862loop_267:
1863 movl %icc, 0x6D8, %i7
1864 movule %fcc1, 0x349, %l2
1865 movre %o5, %i2, %l0
1866loop_268:
1867 fcmpeq32 %f12, %f2, %i4
1868 call loop_269
1869 call loop_270
1870 nop
1871 fitos %f22, %f12
1872 rdpr %gl, %o2
1873loop_269:
1874 edge16n %g1, %g5, %l5
1875loop_270:
1876 fmovsu %fcc1, %f23, %f7
1877 call loop_271
1878 rd %ccr, %g6
1879 subccc %l6, %g7, %i3
1880 call loop_272
1881loop_271:
1882 nop
1883 setx loop_273, %l0, %l1
1884 wrpr 0x1, %tl
1885 wrpr %l1, %tpc
1886 add %l1, 0x4, %l1
1887 wrpr %l1, %tnpc
1888 setx 0x024100001403, %l0, %l1
1889 wrpr %l1, %tstate
1890 wrhpr 0x4, %htstate
1891 retry
1892 fmovdul %fcc0, %f22, %f14
1893 srl %l1, 0x12, %o7
1894loop_272:
1895 call loop_274
1896loop_273:
1897 stx %fsr, [%l7 + 0x38]
1898 taddcc %i0, %o0, %o3
1899 rdpr %pil, %g2
1900loop_274:
1901 call loop_275
1902 xor %o1, %g4, %l4
1903 fsrc2 %f28, %f24
1904 fmovrslez %i5, %f16, %f28
1905loop_275:
1906 fmovslg %fcc3, %f16, %f31
1907 xorcc %o6, 0x1CAB, %g3
1908 mulscc %i1, %o4, %l3
1909 fmovs %f17, %f29
1910 call loop_276
1911 saved
1912 rdpr %cwp, %g1
1913 rdpr %cansave, %g2
1914 rdpr %canrestore, %g3
1915 rdpr %cleanwin, %g4
1916 rdpr %otherwin, %g5
1917 rdpr %wstate, %g6
1918 fmovsgu %xcc, %f11, %f18
1919 movlg %fcc3, 0x515, %i6
1920loop_276:
1921 subccc %i7, 0x0EF1, %o5
1922 fcmpgt16 %f26, %f6, %i2
1923 fmovdvc %icc, %f0, %f28
1924 call loop_277
1925 rd %asi, %l2
1926 fones %f26
1927 edge8 %l0, %i4, %g1
1928loop_277:
1929 tcs %icc, 0x0
1930 bneg %xcc, loop_278
1931 call loop_279
1932 bshuffle %f10, %f8, %f18
1933 fmovdle %icc, %f14, %f4
1934loop_278:
1935 edge8 %o2, %l5, %g6
1936loop_279:
1937 movne %fcc3, 0x352, %g5
1938 wr %g0, 0x19, %asi
1939 ldswa [%l7 + 0x28] %asi, %l6
1940 call loop_280
1941 nop
1942 set 0x78, %g2
1943 ldd [%l7 + %g2], %f24
1944 fands %f24, %f8, %f8
1945 nop
1946 setx 0xD3F1C7CE, %l0, %l6
1947 st %l6, [%l7 + 0x28]
1948 ld [%l7 + 0x28], %f6
1949 setx 0x90DE8488, %l1, %l5
1950 st %l5, [%l7 + 0x10]
1951 ld [%l7 + 0x10], %f5
1952 fmuls %f5, %f6, %f12
1953loop_280:
1954 subccc %g7, %i3, %o7
1955 call loop_281
1956 fmovspos %icc, %f18, %f12
1957 fand %f22, %f22, %f12
1958 call loop_282
1959loop_281:
1960 xorcc %l1, %i0, %o3
1961 call loop_283
1962 movneg %xcc, %g2, %o0
1963loop_282:
1964 call loop_284
1965 call loop_285
1966loop_283:
1967 bg,a %xcc, loop_286
1968 call loop_287
1969loop_284:
1970 fandnot1 %f18, %f16, %f4
1971loop_285:
1972 fmovsgu %xcc, %f20, %f7
1973loop_286:
1974 bcs %xcc, loop_288
1975loop_287:
1976 fmovd %f0, %f8
1977 tgu %icc, 0x1
1978 xnor %g4, 0x11DD, %l4
1979loop_288:
1980 fmul8x16au %f9, %f19, %f24
1981 sethi 0x1205, %i5
1982 srl %o1, 0x12, %o6
1983 fmovdlg %fcc0, %f0, %f4
1984 call loop_289
1985 alignaddr %i1, %g3, %o4
1986 rdhpr %htba, %l3
1987 fbne %fcc1, loop_290
1988loop_289:
1989 call loop_291
1990 fmovda %xcc, %f16, %f12
1991 nop
1992 fitod %f4, %f22
1993 fdtos %f22, %f15
1994loop_290:
1995 call loop_292
1996loop_291:
1997 brnz,a %i6, loop_293
1998 fmovsvs %xcc, %f21, %f6
1999 call loop_294
2000loop_292:
2001 array16 %o5, %i2, %i7
2002loop_293:
2003 wr %l2, %i4, %sys_tick
2004 fmovda %icc, %f22, %f24
2005loop_294:
2006 call loop_295
2007 alignaddr %l0, %o2, %l5
2008 call loop_296
2009 udivcc %g1, 0x0471, %g6
2010loop_295:
2011 sdivx %g5, 0x1BE6, %l6
2012 fmul8x16al %f11, %f5, %f6
2013loop_296:
2014 alignaddrl %i3, %o7, %g7
2015 move %fcc1, 0x282, %i0
2016 movl %xcc, 0x73A, %o3
2017 mova %fcc3, %g2, %o0
2018 call loop_297
2019 call loop_298
2020 call loop_299
2021 array16 %l1, %l4, %g4
2022loop_297:
2023 brgz,pt %o1, loop_300
2024loop_298:
2025 call loop_301
2026loop_299:
2027 smulcc %i5, %i1, %o6
2028 call loop_302
2029loop_300:
2030 fmovsa %fcc2, %f26, %f17
2031loop_301:
2032 nop
2033 add %l7, 0x18, %l6
2034 wr %g0, 0x19, %asi
2035 casa [%l6] %asi, %o4, %l3
2036loop_302:
2037 for %f14, %f30, %f24
2038 call loop_303
2039 fmovrslez %i6, %f13, %f4
2040 call loop_304
2041 call loop_305
2042loop_303:
2043 call loop_306
2044 movpos %icc, %o5, %i2
2045loop_304:
2046 brgz,a,pt %i7, loop_307
2047loop_305:
2048 movug %fcc3, 0x4DF, %l2
2049loop_306:
2050 fmovdl %fcc3, %f10, %f28
2051 movul %fcc3, 0x0AE, %g3
2052loop_307:
2053 nop
2054 setx 0x0900, %l1, %l0
2055 sdivx %i4, %l0, %o2
2056 call loop_308
2057 call loop_309
2058 rdpr %otherwin, %l5
2059 fmovsa %fcc3, %f14, %f17
2060loop_308:
2061 rdpr %otherwin, %g1
2062loop_309:
2063 fmovsug %fcc2, %f23, %f27
2064 call loop_310
2065 call loop_311
2066 call loop_312
2067 nop
2068 setx 0x68137D9D3096C782, %l0, %l6
2069 stx %l6, [%l7 + 0x28]
2070 ldd [%l7 + 0x28], %f22
2071 fsqrtd %f22, %f18
2072loop_310:
2073 bshuffle %f4, %f10, %f6
2074loop_311:
2075 bcs,a %xcc, loop_313
2076loop_312:
2077 call loop_314
2078 fmovsule %fcc0, %f23, %f4
2079 fbug,pt %fcc2, loop_315
2080loop_313:
2081 call loop_316
2082loop_314:
2083 call loop_317
2084 fmovrdlez %g5, %f12, %f24
2085loop_315:
2086 udivcc %g6, 0x0520, %l6
2087loop_316:
2088 call loop_318
2089loop_317:
2090 siam 0x0
2091 fxor %f14, %f2, %f28
2092 fmovsvc %icc, %f17, %f29
2093loop_318:
2094 lduw [%l7 + 0x18], %o7
2095 tcs %xcc, 0x2
2096 fpsub16s %f5, %f19, %f6
2097 brlez,a %g7, loop_319
2098 call loop_320
2099 call loop_321
2100 bneg,a,pt %xcc, loop_322
2101loop_319:
2102 fmovrdlez %i3, %f0, %f20
2103loop_320:
2104 ldsb [%l7 + 0x3D], %o3
2105loop_321:
2106 call loop_323
2107loop_322:
2108 movge %icc, %i0, %g2
2109 rdpr %canrestore, %l1
2110 te %xcc, 0x1
2111loop_323:
2112 movuge %fcc0, 0x53B, %o0
2113 movrgez %g4, %o1, %i5
2114 fbn,a,pn %fcc3, loop_324
2115 subc %l4, 0x130D, %o6
2116 call loop_325
2117 tpos %icc, 0x6
2118loop_324:
2119 tvc %icc, 0x7
2120 nop
2121 setx 0x995E771BD919A7D1, %l0, %l6
2122 stx %l6, [%l7 + 0x28]
2123 ldd [%l7 + 0x28], %f16
2124 setx 0xB056F79D, %l1, %l5
2125 stx %l5, [%l7 + 0x10]
2126 ldd [%l7 + 0x10], %f28
2127 fsmuld %f28, %f16, %f0
2128loop_325:
2129 addc %o4, %i1, %l3
2130 fmovscs %icc, %f24, %f18
2131 edge16n %i6, %i2, %o5
2132 call loop_326
2133 fmovrdgez %i7, %f12, %f10
2134 fmovrse %l2, %f9, %f5
2135 wr %g0, 0x11, %asi
2136 ldswa [%l7 + 0x5C] %asi, %i4
2137loop_326:
2138 fzeros %f1
2139 fcmped %fcc2, %f8, %f30
2140 fcmpne32 %f16, %f10, %g3
2141 sir 0x0AA5
2142 fones %f28
2143 set 0x20, %i3
2144 ldda [%l7 + %i3] 0x88, %o2
2145 wr %g0, 0x5, %fprs
2146 call loop_327
2147 fmovsge %icc, %f13, %f7
2148 call loop_328
2149 movn %icc, %l5, %g5
2150loop_327:
2151 rdhpr %hintp, %g6
2152 fpack16 %f16, %f27
2153loop_328:
2154 call loop_329
2155loop_329:
2156 nop
2157
2158 EXIT_GOOD
2159
2160
2161
2162!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2163!
2164! Stats for Thread 4:
2165!
2166! Type l : 8
2167! Type a : 11
2168! Type x : 4
2169! Type cti : 67
2170! Type f : 55
2171! Type i : 55
2172!
2173!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2174
2175!
2176! Thread 5 Start
2177!
2178main_t5:
2179 mov %l7, %g1
2180 !# Set %cwp for 8 windows
2181 !# This threads memory space into each %l7
2182 wrpr %g0, 0x7, %cwp
2183 mov %g1, %l7
2184 wrpr %g0, 0x6, %cwp
2185 mov %g1, %l7
2186 wrpr %g0, 0x5, %cwp
2187 mov %g1, %l7
2188 wrpr %g0, 0x4, %cwp
2189 mov %g1, %l7
2190 wrpr %g0, 0x3, %cwp
2191 mov %g1, %l7
2192 wrpr %g0, 0x2, %cwp
2193 mov %g1, %l7
2194 wrpr %g0, 0x1, %cwp
2195 mov %g1, %l7
2196 wrpr %g0, 0x0, %cwp
2197 mov %g1, %l7
2198
2199 !# Set %fsr
2200 setx 0x0000000000000000, %l0, %l6 !# no post process
2201 stx %l6, [%l7 + 0x0] !# no post process
2202 ldx [%l7 + 0x0], %fsr !# no post process
2203
2204 !# Initialize registers ..
2205
2206 !# Global registers
2207 set 0x7, %g1
2208 set 0x9, %g2
2209 set 0xC, %g3
2210 set 0x3, %g4
2211 set 0xB, %g5
2212 set 0x6, %g6
2213 set 0xB, %g7
2214 !# Input registers
2215 set -0x9, %i0
2216 set -0x1, %i1
2217 set -0xA, %i2
2218 set -0xB, %i3
2219 set -0xE, %i4
2220 set -0x4, %i5
2221 set -0x5, %i6
2222 set -0x1, %i7
2223 !# Local registers
2224 set 0x6C6F6024, %l0
2225 set 0x17F0C020, %l1
2226 set 0x471490F4, %l2
2227 set 0x55D4CAA7, %l3
2228 set 0x2500E4DF, %l4
2229 set 0x0C4D47A1, %l5
2230 set 0x52B173A4, %l6
2231 !# Output registers
2232 set -0x0964, %o0
2233 set -0x1726, %o1
2234 set 0x1B92, %o2
2235 set -0x10EB, %o3
2236 set 0x04A8, %o4
2237 set 0x07A4, %o5
2238 set 0x0F34, %o6
2239 set 0x0518, %o7
2240 !# Float registers
2241 INIT_TH_FP_REG(%l7,%f0,0xA4614F60243B2ED6)
2242 INIT_TH_FP_REG(%l7,%f2,0x4DCC2DE710D109EF)
2243 INIT_TH_FP_REG(%l7,%f4,0xCB873947E98D9408)
2244 INIT_TH_FP_REG(%l7,%f6,0x3A2052A6786BE33F)
2245 INIT_TH_FP_REG(%l7,%f8,0x9013DC668BF6D8CF)
2246 INIT_TH_FP_REG(%l7,%f10,0x3FF2F28DFE9128BC)
2247 INIT_TH_FP_REG(%l7,%f12,0x1EB3E5F49D5026AD)
2248 INIT_TH_FP_REG(%l7,%f14,0xC9B0C3F8D0E7AD8B)
2249 INIT_TH_FP_REG(%l7,%f16,0xF59B0574923872BC)
2250 INIT_TH_FP_REG(%l7,%f18,0x75121D18D4B09293)
2251 INIT_TH_FP_REG(%l7,%f20,0x099721E63DA7EBA9)
2252 INIT_TH_FP_REG(%l7,%f22,0xDDEC52C2C142D36C)
2253 INIT_TH_FP_REG(%l7,%f24,0x59CA0055E046B503)
2254 INIT_TH_FP_REG(%l7,%f26,0xB79A7C1B0DE9A102)
2255 INIT_TH_FP_REG(%l7,%f28,0x16B9B0C47BB6B48A)
2256 INIT_TH_FP_REG(%l7,%f30,0xBF102F5D279F71DD)
2257
2258 !# Execute Main Diag ..
2259
2260 nop
2261 setx 0x13D764CA, %l0, %l6
2262 st %l6, [%l7 + 0x28]
2263 ld [%l7 + 0x28], %f8
2264 setx 0x731DEA73, %l1, %l5
2265 st %l5, [%l7 + 0x10]
2266 ld [%l7 + 0x10], %f10
2267 fsubs %f10, %f8, %f16
2268 tcc %icc, 0x3
2269 movuge %fcc2, %o7, %g7
2270 fandnot1 %f20, %f26, %f12
2271 call loop_330
2272 call loop_331
2273 call loop_332
2274 call loop_333
2275loop_330:
2276 call loop_334
2277loop_331:
2278 call loop_335
2279loop_332:
2280 fmovda %icc, %f26, %f22
2281loop_333:
2282 st %fsr, [%l7 + 0x0C]
2283loop_334:
2284 call loop_336
2285loop_335:
2286 umul %i3, %l6, %o3
2287 xor %i0, %l1, %g2
2288 fnand %f2, %f22, %f12
2289loop_336:
2290 fnand %f6, %f20, %f18
2291 andn %o0, %o1, %g4
2292 nop
2293 fitos %f5, %f24
2294 fcmple32 %f26, %f22, %l4
2295 call loop_337
2296 call loop_338
2297 call loop_339
2298 array8 %i5, %o4, %i1
2299loop_337:
2300 call loop_340
2301loop_338:
2302 srl %l3, %i6, %o6
2303loop_339:
2304 sll %o5, 0x19, %i7
2305 call loop_341
2306loop_340:
2307 fcmpne16 %f24, %f28, %l2
2308 call loop_342
2309 bleu %icc, loop_343
2310loop_341:
2311 fcmpeq16 %f4, %f24, %i2
2312 call loop_344
2313loop_342:
2314 fone %f12
2315loop_343:
2316 call loop_345
2317 fxnor %f8, %f12, %f0
2318loop_344:
2319 fmovsneg %icc, %f24, %f12
2320 call loop_346
2321loop_345:
2322 fmovsu %fcc1, %f2, %f14
2323 call loop_347
2324 fsrc2s %f3, %f9
2325loop_346:
2326 tge %xcc, 0x3
2327 subc %g3, 0x0835, %o2
2328loop_347:
2329 fcmple32 %f22, %f4, %l0
2330 call loop_348
2331 array8 %i4, %g1, %g5
2332 call loop_349
2333 call loop_350
2334loop_348:
2335 fmovslg %fcc0, %f26, %f15
2336 fmovdvc %icc, %f4, %f10
2337loop_349:
2338 nop
2339 setx 0xAE1AC5B3, %l0, %l6
2340 st %l6, [%l7 + 0x28]
2341 ld [%l7 + 0x28], %f0
2342 setx 0x878FCC70, %l1, %l5
2343 st %l5, [%l7 + 0x10]
2344 ld [%l7 + 0x10], %f13
2345 fsubs %f13, %f0, %f19
2346loop_350:
2347 fmuld8sux16 %f10, %f21, %f10
2348 fpmerge %f19, %f3, %f0
2349 set 0x18, %g4
2350 lduwa [%l7 + %g4] 0x89, %g6
2351 fzeros %f18
2352 fandnot1s %f20, %f4, %f23
2353 addc %o7, 0x06A4, %g7
2354 edge32l %i3, %l5, %o3
2355 movg %fcc3, 0x498, %i0
2356 srax %l1, 0x15, %g2
2357 tcc %xcc, 0x5
2358 fcmple32 %f6, %f4, %o0
2359 call loop_351
2360 nop
2361 fitod %f13, %f0
2362 be,a %icc, loop_352
2363 wr %l6, 0x0C1F, %sys_tick
2364loop_351:
2365 call loop_353
2366 tneg %icc, 0x5
2367loop_352:
2368 umul %g4, 0x03E3, %l4
2369 fbuge,a,pt %fcc3, loop_354
2370loop_353:
2371 fcmped %fcc3, %f30, %f28
2372 movg %icc, 0x2B8, %i5
2373 array16 %o4, %o1, %l3
2374loop_354:
2375 movg %xcc, %i6, %o6
2376 brz %o5, loop_355
2377 bgu,pt %xcc, loop_356
2378 nop
2379 fitod %f2, %f30
2380 fdtoi %f30, %f22
2381 bmask %i1, %l2, %i2
2382loop_355:
2383 fmovdvc %icc, %f0, %f20
2384loop_356:
2385 fmovrdgz %i7, %f0, %f8
2386 xnorcc %o2, %l0, %g3
2387 fpsub32 %f0, %f2, %f6
2388 call loop_357
2389 ldd [%l7 + 0x58], %f4
2390 fmovdug %fcc2, %f30, %f14
2391 fcmple16 %f4, %f26, %g1
2392loop_357:
2393 nop
2394 setx 0x19B018ED3F1AE8BE, %l0, %l6
2395 stx %l6, [%l7 + 0x28]
2396 ldd [%l7 + 0x28], %f20
2397 setx 0x9E485A92529B1F89, %l1, %l5
2398 stx %l5, [%l7 + 0x10]
2399 ldd [%l7 + 0x10], %f10
2400 faddd %f10, %f20, %f18
2401 edge16l %g5, %g6, %o7
2402 taddcctv %i4, 0x0D4A, %i3
2403 call loop_358
2404 edge16ln %l5, %g7, %i0
2405 nop
2406 setx 0x0D19, %l0, %g2
2407 sdiv %l1, %g2, %o0
2408 call loop_359
2409loop_358:
2410 call loop_360
2411 call loop_361
2412 call loop_362
2413loop_359:
2414 call loop_363
2415loop_360:
2416 fmovrsgz %o3, %f10, %f12
2417loop_361:
2418 fmovd %f18, %f8
2419loop_362:
2420 call loop_364
2421loop_363:
2422 nop
2423 setx 0x3B7EBF0691930F89, %l0, %l6
2424 stx %l6, [%l7 + 0x28]
2425 ldd [%l7 + 0x28], %f18
2426 setx 0x0A670A714C906231, %l1, %l5
2427 stx %l5, [%l7 + 0x10]
2428 ldd [%l7 + 0x10], %f18
2429 fdivd %f18, %f18, %f20
2430 or %g4, 0x10D1, %l6
2431 rd %asi, %l4
2432loop_364:
2433 restored
2434 rdpr %cwp, %g1
2435 rdpr %cansave, %g2
2436 rdpr %canrestore, %g3
2437 rdpr %cleanwin, %g4
2438 rdpr %otherwin, %g5
2439 rdpr %wstate, %g6
2440 orn %o4, 0x14BC, %i5
2441 call loop_365
2442 call loop_366
2443 call loop_367
2444 call loop_368
2445loop_365:
2446 call loop_369
2447loop_366:
2448 edge8l %l3, %i6, %o6
2449loop_367:
2450 addcc %o1, %i1, %l2
2451loop_368:
2452 andcc %o5, %i7, %i2
2453loop_369:
2454 taddcctv %o2, %g3, %g1
2455 fpack16 %f24, %f17
2456 fxnor %f30, %f10, %f16
2457 fxor %f12, %f20, %f8
2458 fmovsu %fcc0, %f26, %f19
2459 fmovdul %fcc3, %f22, %f2
2460 nop
2461 setx 0x831FF72DD57BDC1E, %l0, %l6
2462 stx %l6, [%l7 + 0x28]
2463 ldd [%l7 + 0x28], %f26
2464 setx 0xF690C8DC58F230E7, %l1, %l5
2465 stx %l5, [%l7 + 0x10]
2466 ldd [%l7 + 0x10], %f20
2467 faddd %f20, %f26, %f4
2468 fpack16 %f16, %f21
2469 call loop_370
2470 sdiv %l0, 0x112F, %g5
2471 fxnor %f0, %f16, %f26
2472 sethi 0x1336, %g6
2473loop_370:
2474 fmovscs %icc, %f30, %f0
2475 call loop_371
2476 bl,a %icc, loop_372
2477 wr %i4, 0x1DC1, %sys_tick
2478 fmovsge %fcc1, %f25, %f17
2479loop_371:
2480 fandnot1s %f5, %f24, %f4
2481loop_372:
2482 for %f10, %f20, %f14
2483 call loop_373
2484 call loop_374
2485 movcc %icc, 0x7FB, %o7
2486 call loop_375
2487loop_373:
2488 subcc %i3, %l5, %g7
2489loop_374:
2490 bne,pn %icc, loop_376
2491 call loop_377
2492loop_375:
2493 movvc %xcc, 0x0BD, %i0
2494 fmovrslz %l1, %f5, %f22
2495loop_376:
2496 fnegs %f9, %f12
2497loop_377:
2498 call loop_378
2499 nop
2500 setx 0x9D417166, %l0, %l6
2501 st %l6, [%l7 + 0x28]
2502 ld [%l7 + 0x28], %f30
2503 setx 0x40DBDCEA, %l1, %l5
2504 st %l5, [%l7 + 0x10]
2505 ld [%l7 + 0x10], %f31
2506 fsubs %f31, %f30, %f26
2507 brz,a,pn %o0, loop_379
2508 fmul8x16 %f16, %f28, %f18
2509loop_378:
2510 call loop_380
2511 nop
2512 setx loop_381, %l0, %l1
2513 jmpl %l1, %g2
2514loop_379:
2515 call loop_382
2516 fmovdule %fcc2, %f10, %f16
2517loop_380:
2518 movleu %xcc, %g4, %o3
2519loop_381:
2520 fornot2 %f30, %f16, %f16
2521loop_382:
2522 rdpr %tba, %l4
2523 fpadd32 %f0, %f20, %f18
2524 fsrc2s %f25, %f29
2525 nop
2526 setx 0x9E4DF8D31D0A7AB8, %l0, %l6
2527 stx %l6, [%l7 + 0x28]
2528 ldd [%l7 + 0x28], %f14
2529 setx 0xA90E6AC7, %l1, %l5
2530 stx %l5, [%l7 + 0x10]
2531 ldd [%l7 + 0x10], %f20
2532 fsmuld %f20, %f14, %f26
2533 rdpr %wstate, %o4
2534 fsrc2 %f2, %f26
2535 nop
2536 setx 0x57CF482B, %l0, %l6
2537 st %l6, [%l7 + 0x28]
2538 ld [%l7 + 0x28], %f20
2539 fsqrts %f20, %f29
2540 call loop_383
2541 pdist %f18, %f30, %f26
2542 wr %l6, 0x0FA9, %y
2543 brz,a %l3, loop_384
2544loop_383:
2545 move %icc, 0x1B4, %i6
2546 fpackfix %f14, %f23
2547 fpack16 %f0, %f27
2548loop_384:
2549 movlg %fcc1, 0x342, %o6
2550 bne %xcc, loop_385
2551 brlez,pt %i5, loop_386
2552 fone %f6
2553 xnor %o1, 0x0BD6, %l2
2554loop_385:
2555 fand %f4, %f2, %f28
2556loop_386:
2557 bvs,pn %xcc, loop_387
2558 andcc %i1, 0x0428, %i7
2559 fmovrdlz %i2, %f30, %f8
2560 nop
2561 fitod %f12, %f18
2562 fdtoi %f18, %f27
2563loop_387:
2564 andn %o5, 0x16E8, %o2
2565 fmovduge %fcc2, %f8, %f4
2566 call loop_388
2567 movpos %icc, 0x3C3, %g1
2568 nop
2569 setx 0x6668389C, %l0, %l6
2570 st %l6, [%l7 + 0x28]
2571 ld [%l7 + 0x28], %f4
2572 setx 0x3D524FF9, %l1, %l5
2573 st %l5, [%l7 + 0x10]
2574 ld [%l7 + 0x10], %f15
2575 fmuls %f15, %f4, %f28
2576 movo %fcc1, %l0, %g5
2577loop_388:
2578 fxnor %f16, %f4, %f14
2579 fmul8ulx16 %f16, %f26, %f6
2580 fmovdlg %fcc3, %f0, %f18
2581 nop
2582 setx 0x55F44CEFE7EF2DC2, %l0, %l6
2583 stx %l6, [%l7 + 0x28]
2584 ldd [%l7 + 0x28], %f0
2585 setx 0x352523AA9DAEF932, %l1, %l5
2586 stx %l5, [%l7 + 0x10]
2587 ldd [%l7 + 0x10], %f10
2588 faddd %f10, %f0, %f4
2589 ldd [%l7 + 0x60], %g2
2590 fnand %f24, %f8, %f10
2591 subccc %i4, %g6, %o7
2592 tg %icc, 0x5
2593 fmovrsgz %l5, %f27, %f14
2594 call loop_389
2595 fcmpne16 %f8, %f10, %i3
2596 call loop_390
2597 call loop_391
2598loop_389:
2599 sra %i0, 0x16, %l1
2600 call loop_392
2601loop_390:
2602 faligndata %f2, %f28, %f16
2603loop_391:
2604 xorcc %g7, 0x073F, %g2
2605loop_392:
2606 nop
2607
2608 EXIT_GOOD
2609
2610
2611
2612!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2613!
2614! Stats for Thread 5:
2615!
2616! Type l : 4
2617! Type a : 6
2618! Type x : 1
2619! Type cti : 63
2620! Type f : 75
2621! Type i : 51
2622!
2623!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2624
2625!
2626! Thread 6 Start
2627!
2628main_t6:
2629 mov %l7, %g1
2630 !# Set %cwp for 8 windows
2631 !# This threads memory space into each %l7
2632 wrpr %g0, 0x7, %cwp
2633 mov %g1, %l7
2634 wrpr %g0, 0x6, %cwp
2635 mov %g1, %l7
2636 wrpr %g0, 0x5, %cwp
2637 mov %g1, %l7
2638 wrpr %g0, 0x4, %cwp
2639 mov %g1, %l7
2640 wrpr %g0, 0x3, %cwp
2641 mov %g1, %l7
2642 wrpr %g0, 0x2, %cwp
2643 mov %g1, %l7
2644 wrpr %g0, 0x1, %cwp
2645 mov %g1, %l7
2646 wrpr %g0, 0x0, %cwp
2647 mov %g1, %l7
2648
2649 !# Set %fsr
2650 setx 0x0000000000000000, %l0, %l6 !# no post process
2651 stx %l6, [%l7 + 0x0] !# no post process
2652 ldx [%l7 + 0x0], %fsr !# no post process
2653
2654 !# Initialize registers ..
2655
2656 !# Global registers
2657 set 0x7, %g1
2658 set 0x5, %g2
2659 set 0xC, %g3
2660 set 0xB, %g4
2661 set 0x8, %g5
2662 set 0x0, %g6
2663 set 0x5, %g7
2664 !# Input registers
2665 set -0xA, %i0
2666 set -0x5, %i1
2667 set -0x5, %i2
2668 set -0xF, %i3
2669 set -0xE, %i4
2670 set -0x1, %i5
2671 set -0xE, %i6
2672 set -0x6, %i7
2673 !# Local registers
2674 set 0x3591A3DD, %l0
2675 set 0x0B4FC34D, %l1
2676 set 0x43FA97F8, %l2
2677 set 0x70D361CE, %l3
2678 set 0x0AC3C4FF, %l4
2679 set 0x32B39907, %l5
2680 set 0x714872FB, %l6
2681 !# Output registers
2682 set 0x04CF, %o0
2683 set -0x0DCC, %o1
2684 set 0x1300, %o2
2685 set 0x05E7, %o3
2686 set 0x18D2, %o4
2687 set 0x1B54, %o5
2688 set 0x01BD, %o6
2689 set -0x1BF2, %o7
2690 !# Float registers
2691 INIT_TH_FP_REG(%l7,%f0,0xA4614F60243B2ED6)
2692 INIT_TH_FP_REG(%l7,%f2,0x4DCC2DE710D109EF)
2693 INIT_TH_FP_REG(%l7,%f4,0xCB873947E98D9408)
2694 INIT_TH_FP_REG(%l7,%f6,0x3A2052A6786BE33F)
2695 INIT_TH_FP_REG(%l7,%f8,0x9013DC668BF6D8CF)
2696 INIT_TH_FP_REG(%l7,%f10,0x3FF2F28DFE9128BC)
2697 INIT_TH_FP_REG(%l7,%f12,0x1EB3E5F49D5026AD)
2698 INIT_TH_FP_REG(%l7,%f14,0xC9B0C3F8D0E7AD8B)
2699 INIT_TH_FP_REG(%l7,%f16,0xF59B0574923872BC)
2700 INIT_TH_FP_REG(%l7,%f18,0x75121D18D4B09293)
2701 INIT_TH_FP_REG(%l7,%f20,0x099721E63DA7EBA9)
2702 INIT_TH_FP_REG(%l7,%f22,0xDDEC52C2C142D36C)
2703 INIT_TH_FP_REG(%l7,%f24,0x59CA0055E046B503)
2704 INIT_TH_FP_REG(%l7,%f26,0xB79A7C1B0DE9A102)
2705 INIT_TH_FP_REG(%l7,%f28,0x16B9B0C47BB6B48A)
2706 INIT_TH_FP_REG(%l7,%f30,0xBF102F5D279F71DD)
2707
2708 !# Execute Main Diag ..
2709
2710 call loop_393
2711 call loop_394
2712 call loop_395
2713 brlez,a,pn %o0, loop_396
2714loop_393:
2715 pdist %f14, %f12, %f28
2716loop_394:
2717 rdpr %cleanwin, %g4
2718loop_395:
2719 edge16l %l4, %o4, %l6
2720loop_396:
2721 call loop_397
2722 call loop_398
2723 bmask %o3, %i6, %o6
2724 fnot2 %f24, %f12
2725loop_397:
2726 movn %fcc0, %l3, %i5
2727loop_398:
2728 fcmpne32 %f22, %f22, %l2
2729 call loop_399
2730 brlz,a %i1, loop_400
2731 nop
2732 setx 0x800FF27E4ACABDFE, %l0, %l6
2733 stx %l6, [%l7 + 0x28]
2734 ldd [%l7 + 0x28], %f20
2735 setx 0x8C4EEAA59923AEB9, %l1, %l5
2736 stx %l5, [%l7 + 0x10]
2737 ldd [%l7 + 0x10], %f2
2738 fdivd %f2, %f20, %f14
2739 rdpr %cansave, %o1
2740loop_399:
2741 movuge %fcc1, 0x2DB, %i2
2742loop_400:
2743 mulx %i7, %o5, %o2
2744 call loop_401
2745 fmovdvs %icc, %f6, %f20
2746 call loop_402
2747 st %fsr, [%l7 + 0x40]
2748loop_401:
2749 xnor %l0, 0x0848, %g1
2750 fmovdu %fcc1, %f6, %f16
2751loop_402:
2752 movle %fcc3, %g5, %i4
2753 rdhpr %hsys_tick_cmpr, %g6
2754 fmovsgu %xcc, %f20, %f15
2755 fmovsl %fcc3, %f14, %f0
2756 nop
2757 setx loop_403, %l0, %l1
2758 jmpl %l1, %g3
2759 nop
2760 setx 0x27C6162CDEACFE48, %l0, %l6
2761 stx %l6, [%l7 + 0x28]
2762 ldd [%l7 + 0x28], %f2
2763 setx 0x742CE25E, %l1, %l5
2764 stx %l5, [%l7 + 0x10]
2765 ldd [%l7 + 0x10], %f28
2766 fsmuld %f28, %f2, %f30
2767 fbue,a,pt %fcc3, loop_404
2768 tsubcctv %o7, %i3, %i0
2769loop_403:
2770 nop
2771 wr %g0, 0x80, %asi
2772 prefetcha [%l7 + 0x28] %asi, 1
2773loop_404:
2774 movrlez %l1, %g7, %o0
2775 call loop_405
2776 call loop_406
2777 be %icc, loop_407
2778 nop
2779 setx 0x3DD4D36C1FC6DE1C, %l0, %l6
2780 stx %l6, [%l7 + 0x28]
2781 ldd [%l7 + 0x28], %f28
2782 setx 0x1FCA56D3, %l1, %l5
2783 stx %l5, [%l7 + 0x10]
2784 ldd [%l7 + 0x10], %f26
2785 fsmuld %f26, %f28, %f18
2786loop_405:
2787 wrpr %g0, 0x1, %gl
2788loop_406:
2789 fmovrdgz %l4, %f18, %f26
2790loop_407:
2791 fpadd16 %f28, %f10, %f14
2792 bcs,pt %xcc, loop_408
2793 restored
2794 rdpr %cwp, %g1
2795 rdpr %cansave, %g2
2796 rdpr %canrestore, %g3
2797 rdpr %cleanwin, %g4
2798 rdpr %otherwin, %g5
2799 rdpr %wstate, %g6
2800 array32 %g4, %o4, %l6
2801 call loop_409
2802loop_408:
2803 rd %ccr, %o3
2804 fsrc2 %f0, %f6
2805 wr %g0, 0x11, %asi
2806 stha %i6, [%l7 + 0x56] %asi
2807loop_409:
2808 sir 0x0380
2809 movvs %icc, %o6, %l3
2810 call loop_410
2811 rdpr %cwp, %i5
2812 rdpr %gl, %i1
2813 fmul8x16au %f20, %f13, %f8
2814loop_410:
2815 call loop_411
2816 movuge %fcc1, 0x20D, %l2
2817 edge16l %o1, %i2, %o5
2818 fmovde %fcc1, %f22, %f28
2819loop_411:
2820 rd %asi, %o2
2821 fmovrslez %i7, %f10, %f30
2822 st %fsr, [%l7 + 0x78]
2823 add %l7, 0x44, %l6
2824 wr %g0, 0x80, %asi
2825 lda [%l6] %asi, %l0
2826 casa [%l6] 0x80, %l0, %g5
2827 call loop_412
2828 call loop_413
2829 fpsub32s %f0, %f7, %f8
2830 call loop_414
2831loop_412:
2832 call loop_415
2833loop_413:
2834 and %g1, %i4, %g6
2835 tleu %icc, 0x4
2836loop_414:
2837 nop
2838 setx 0x0BD9, %l0, %i3
2839 sdivx %g3, %i3, %i0
2840loop_415:
2841 fmovdvs %xcc, %f10, %f4
2842 movvs %icc, %l5, %o7
2843 call loop_416
2844 call loop_417
2845 fornot1s %f15, %f16, %f4
2846 srlx %l1, 0x10, %g7
2847loop_416:
2848 call loop_418
2849loop_417:
2850 call loop_419
2851 call loop_420
2852 edge16l %o0, %g2, %l4
2853loop_418:
2854 call loop_421
2855loop_419:
2856 call loop_422
2857loop_420:
2858 call loop_423
2859 call loop_424
2860loop_421:
2861 call loop_425
2862loop_422:
2863 movg %icc, 0x5C5, %o4
2864loop_423:
2865 call loop_426
2866loop_424:
2867 fnors %f23, %f19, %f6
2868loop_425:
2869 call loop_427
2870 call loop_428
2871loop_426:
2872 call loop_429
2873 call loop_430
2874loop_427:
2875 fmovrsgz %l6, %f1, %f25
2876loop_428:
2877 call loop_431
2878loop_429:
2879 fcmple16 %f12, %f24, %g4
2880loop_430:
2881 bpos,a %xcc, loop_432
2882 call loop_433
2883loop_431:
2884 call loop_434
2885 sir 0x1AF6
2886loop_432:
2887 array16 %i6, %o6, %l3
2888loop_433:
2889 wrpr %i5, 0x108E, %pil
2890loop_434:
2891 ba,a %xcc, loop_435
2892 fbu,a %fcc1, loop_436
2893 fmovrslz %i1, %f22, %f29
2894 flushw
2895loop_435:
2896 call loop_437
2897loop_436:
2898 call loop_438
2899 fmovso %fcc1, %f6, %f5
2900 call loop_439
2901loop_437:
2902 fbo,pn %fcc2, loop_440
2903loop_438:
2904 bne,a,pt %icc, loop_441
2905 fmul8x16al %f21, %f17, %f6
2906loop_439:
2907 be,pn %xcc, loop_442
2908loop_440:
2909 brnz %l2, loop_443
2910loop_441:
2911 movle %icc, 0x0C8, %o3
2912 fmovdne %fcc0, %f0, %f16
2913loop_442:
2914 call loop_444
2915loop_443:
2916 fmovdg %xcc, %f24, %f4
2917 tcc %xcc, 0x2
2918 fmul8ulx16 %f2, %f12, %f12
2919loop_444:
2920 call loop_445
2921 brlz,a,pn %o1, loop_446
2922 fcmple32 %f30, %f2, %i2
2923 fmovrde %o5, %f8, %f10
2924loop_445:
2925 fsrc1s %f22, %f5
2926loop_446:
2927 call loop_447
2928 movn %fcc3, 0x610, %i7
2929 call loop_448
2930 fmovdge %fcc0, %f30, %f10
2931loop_447:
2932 edge8 %o2, %l0, %g5
2933 tleu %icc, 0x3
2934loop_448:
2935 movuge %fcc1, %i4, %g6
2936 fxnors %f14, %f0, %f0
2937 umulcc %g3, %g1, %i0
2938 fpsub16 %f22, %f18, %f22
2939 and %i3, %l5, %l1
2940 rd %pc, %g7
2941 fandnot1s %f16, %f26, %f10
2942 fnegd %f6, %f2
2943 fmuld8ulx16 %f11, %f19, %f8
2944 tl %xcc, 0x1
2945 call loop_449
2946 fmovscc %xcc, %f30, %f21
2947 movg %fcc2, %o7, %g2
2948 call loop_450
2949loop_449:
2950 fnot2 %f22, %f26
2951 call loop_451
2952 movue %fcc2, %o0, %o4
2953loop_450:
2954 nop
2955 setx loop_452, %l0, %l1
2956 wrpr 0x1, %tl
2957 wrpr %l1, %tnpc
2958 setx 0x001100001407, %l0, %l1
2959 wrpr %l1, %tstate
2960 wrhpr 0x4, %htstate
2961 rdpr %tt, %l1
2962 wrpr %g0, %l1, %tt
2963 rdpr %pstate, %l1
2964 wrpr %g0, %l1, %pstate
2965 rdpr %tl, %l1
2966 wrpr %g0, %l1, %tl
2967 rdpr %tpc, %l1
2968 wrpr %g0, %l1, %tpc
2969 rdpr %tnpc, %l1
2970 wrpr %g0, %l1, %tnpc
2971 rdpr %tstate, %l1
2972 wrpr %g0, %l1, %tstate
2973 rdpr %tba, %l1
2974 wrpr %g0, %l1, %tba
2975 rdpr %tba, %l1
2976 wrpr %g0, %l1, %tba
2977 rdhpr %hpstate, %l1
2978 wrhpr %g0, %l1, %hpstate
2979 rdhpr %htstate, %l1
2980 wrhpr %g0, %l1, %htstate
2981 rdhpr %hintp, %l1
2982 wrhpr %g0, %l1, %hintp
2983 done
2984 orn %l4, %g4, %l6
2985loop_451:
2986 call loop_453
2987 fmovrdgez %i6, %f0, %f6
2988loop_452:
2989 nop
2990 set 0x2F, %o4
2991 ldsba [%l7 + %o4] 0x10, %o6
2992loop_453:
2993 sllx %l3, %i1, %i5
2994 fsrc2 %f30, %f14
2995 bshuffle %f30, %f28, %f6
2996 movue %fcc2, 0x7BD, %l2
2997 fand %f2, %f22, %f16
2998 addcc %o3, %i2, %o5
2999 fba,a %fcc3, loop_454
3000 fsrc2 %f14, %f0
3001 bne,pt %xcc, loop_455
3002 call loop_456
3003loop_454:
3004 call loop_457
3005 movle %fcc3, %o1, %o2
3006loop_455:
3007 nop
3008 set 0x70, %l4
3009 prefetcha [%l7 + %l4] 0x89, 3
3010loop_456:
3011 call loop_458
3012loop_457:
3013 movul %fcc1, %g5, %i4
3014 fmovso %fcc2, %f12, %f24
3015 fmovsuge %fcc3, %f19, %f6
3016loop_458:
3017 call loop_459
3018 fornot2s %f5, %f27, %f18
3019 subcc %i7, %g6, %g3
3020 nop
3021 set 0x6C, %l3
3022 swap [%l7 + %l3], %i0
3023loop_459:
3024 call loop_460
3025 fmovsneg %xcc, %f20, %f18
3026 wr %g0, 0x2f, %asi
3027 ldda [%l7 + 0x30] %asi, %g0
3028loop_460:
3029 call loop_461
3030 wrpr %i3, 0x01A0, %pil
3031 call loop_462
3032 fmovsleu %icc, %f27, %f9
3033loop_461:
3034 mulx %l1, 0x03C1, %l5
3035 fnegs %f14, %f24
3036loop_462:
3037 nop
3038 fitod %f10, %f18
3039 fdtox %f18, %f26
3040 fxtod %f26, %f12
3041 fxor %f20, %f18, %f14
3042 fands %f16, %f30, %f30
3043 bn %xcc, loop_463
3044 alignaddrl %o7, %g7, %o0
3045 fmovsge %fcc2, %f10, %f9
3046 movgu %xcc, %o4, %g2
3047loop_463:
3048 fmovrslez %g4, %f18, %f8
3049 call loop_464
3050 fmovdul %fcc2, %f24, %f26
3051loop_464:
3052 nop
3053
3054 EXIT_GOOD
3055
3056
3057
3058!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3059!
3060! Stats for Thread 6:
3061!
3062! Type l : 9
3063! Type a : 11
3064! Type x : 6
3065! Type cti : 72
3066! Type f : 56
3067! Type i : 46
3068!
3069!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3070
3071!
3072! Thread 7 Start
3073!
3074main_t7:
3075 mov %l7, %g1
3076 !# Set %cwp for 8 windows
3077 !# This threads memory space into each %l7
3078 wrpr %g0, 0x7, %cwp
3079 mov %g1, %l7
3080 wrpr %g0, 0x6, %cwp
3081 mov %g1, %l7
3082 wrpr %g0, 0x5, %cwp
3083 mov %g1, %l7
3084 wrpr %g0, 0x4, %cwp
3085 mov %g1, %l7
3086 wrpr %g0, 0x3, %cwp
3087 mov %g1, %l7
3088 wrpr %g0, 0x2, %cwp
3089 mov %g1, %l7
3090 wrpr %g0, 0x1, %cwp
3091 mov %g1, %l7
3092 wrpr %g0, 0x0, %cwp
3093 mov %g1, %l7
3094
3095 !# Set %fsr
3096 setx 0x0000000000000000, %l0, %l6 !# no post process
3097 stx %l6, [%l7 + 0x0] !# no post process
3098 ldx [%l7 + 0x0], %fsr !# no post process
3099
3100 !# Initialize registers ..
3101
3102 !# Global registers
3103 set 0x8, %g1
3104 set 0xF, %g2
3105 set 0x8, %g3
3106 set 0x9, %g4
3107 set 0x5, %g5
3108 set 0xF, %g6
3109 set 0x6, %g7
3110 !# Input registers
3111 set -0xC, %i0
3112 set -0xE, %i1
3113 set -0x5, %i2
3114 set -0xA, %i3
3115 set -0xC, %i4
3116 set -0x2, %i5
3117 set -0x9, %i6
3118 set -0x3, %i7
3119 !# Local registers
3120 set 0x03F92CEC, %l0
3121 set 0x1FF90E53, %l1
3122 set 0x0769A1E3, %l2
3123 set 0x600A6E08, %l3
3124 set 0x40E40A3A, %l4
3125 set 0x3308F30B, %l5
3126 set 0x4B400914, %l6
3127 !# Output registers
3128 set 0x0389, %o0
3129 set 0x168D, %o1
3130 set 0x1695, %o2
3131 set -0x0F76, %o3
3132 set -0x1CA4, %o4
3133 set 0x1E80, %o5
3134 set -0x0A7C, %o6
3135 set -0x17A1, %o7
3136 !# Float registers
3137 INIT_TH_FP_REG(%l7,%f0,0xA4614F60243B2ED6)
3138 INIT_TH_FP_REG(%l7,%f2,0x4DCC2DE710D109EF)
3139 INIT_TH_FP_REG(%l7,%f4,0xCB873947E98D9408)
3140 INIT_TH_FP_REG(%l7,%f6,0x3A2052A6786BE33F)
3141 INIT_TH_FP_REG(%l7,%f8,0x9013DC668BF6D8CF)
3142 INIT_TH_FP_REG(%l7,%f10,0x3FF2F28DFE9128BC)
3143 INIT_TH_FP_REG(%l7,%f12,0x1EB3E5F49D5026AD)
3144 INIT_TH_FP_REG(%l7,%f14,0xC9B0C3F8D0E7AD8B)
3145 INIT_TH_FP_REG(%l7,%f16,0xF59B0574923872BC)
3146 INIT_TH_FP_REG(%l7,%f18,0x75121D18D4B09293)
3147 INIT_TH_FP_REG(%l7,%f20,0x099721E63DA7EBA9)
3148 INIT_TH_FP_REG(%l7,%f22,0xDDEC52C2C142D36C)
3149 INIT_TH_FP_REG(%l7,%f24,0x59CA0055E046B503)
3150 INIT_TH_FP_REG(%l7,%f26,0xB79A7C1B0DE9A102)
3151 INIT_TH_FP_REG(%l7,%f28,0x16B9B0C47BB6B48A)
3152 INIT_TH_FP_REG(%l7,%f30,0xBF102F5D279F71DD)
3153
3154 !# Execute Main Diag ..
3155
3156 fmovdl %fcc3, %f28, %f8
3157 fmovdge %fcc2, %f8, %f22
3158 call loop_465
3159 fcmped %fcc2, %f0, %f20
3160 rdhpr %hsys_tick_cmpr, %l4
3161 tne %xcc, 0x2
3162loop_465:
3163 call loop_466
3164 tg %icc, 0x0
3165 call loop_467
3166 call loop_468
3167loop_466:
3168 wrpr %g0, 0x3, %gl
3169 fpack16 %f18, %f10
3170loop_467:
3171 call loop_469
3172loop_468:
3173 call loop_470
3174 rdpr %wstate, %l6
3175 fmovrdne %l3, %f4, %f14
3176loop_469:
3177 call loop_471
3178loop_470:
3179 movuge %fcc1, %o6, %i5
3180 movrgez %l2, %o3, %i1
3181 call loop_472
3182loop_471:
3183 call loop_473
3184 faligndata %f2, %f6, %f24
3185 nop
3186 setx 0x97AB5AE0C5B45606, %l0, %l6
3187 stx %l6, [%l7 + 0x28]
3188 ldd [%l7 + 0x28], %f10
3189 setx 0x0F9FB273, %l1, %l5
3190 stx %l5, [%l7 + 0x10]
3191 ldd [%l7 + 0x10], %f2
3192 fsmuld %f2, %f10, %f0
3193loop_472:
3194 call loop_474
3195loop_473:
3196 call loop_475
3197 tleu %xcc, 0x7
3198 siam 0x0
3199loop_474:
3200 umulcc %i2, 0x1E6A, %o1
3201loop_475:
3202 umulcc %o2, 0x1FC1, %l0
3203 fmul8x16al %f3, %f5, %f24
3204 nop
3205 fitos %f1, %f13
3206 fstox %f13, %f24
3207 fbule,a %fcc3, loop_476
3208 movo %fcc3, 0x297, %o5
3209 call loop_477
3210 fmovdne %fcc2, %f2, %f24
3211loop_476:
3212 call loop_478
3213 call loop_479
3214loop_477:
3215 tleu %xcc, 0x1
3216 lduw [%l7 + 0x18], %g5
3217loop_478:
3218 nop
3219 setx loop_480, %l0, %l1
3220 jmpl %l1, %i7
3221loop_479:
3222 movrgz %g6, 0x3C6, %g3
3223 popc %i0, %i4
3224 udivcc %g1, 0x1383, %l1
3225loop_480:
3226 fmovsvs %xcc, %f20, %f27
3227 edge8ln %l5, %o7, %g7
3228 call loop_481
3229 fors %f5, %f9, %f10
3230 tvc %xcc, 0x7
3231 edge8l %o0, %i3, %g2
3232loop_481:
3233 call loop_482
3234 call loop_483
3235 call loop_484
3236 fxors %f4, %f16, %f27
3237loop_482:
3238 fmovsle %icc, %f11, %f21
3239loop_483:
3240 fmovda %xcc, %f8, %f26
3241loop_484:
3242 call loop_485
3243 fmovrdgez %g4, %f22, %f24
3244 call loop_486
3245 movleu %icc, %l4, %o4
3246loop_485:
3247 movl %icc, 0x04E, %i6
3248 fornot1 %f24, %f8, %f6
3249loop_486:
3250 tcc %icc, 0x6
3251 fmovdvs %icc, %f14, %f2
3252 call loop_487
3253 nop
3254 fitod %f7, %f10
3255 call loop_488
3256 call loop_489
3257loop_487:
3258 nop
3259 set 0x20, %i5
3260 std %f24, [%l7 + %i5]
3261 fone %f20
3262loop_488:
3263 call loop_490
3264loop_489:
3265 fandnot1 %f12, %f22, %f18
3266 tpos %xcc, 0x4
3267 movvc %icc, %l3, %o6
3268loop_490:
3269 call loop_491
3270 call loop_492
3271 nop
3272 setx 0x1D4E, %l0, %l2
3273 udiv %i5, %l2, %o3
3274 udivx %i1, 0x0CF0, %l6
3275loop_491:
3276 fmovrdlz %o1, %f30, %f20
3277loop_492:
3278 be %icc, loop_493
3279 fmovsu %fcc0, %f17, %f22
3280 add %i2, %o2, %l0
3281 call loop_494
3282loop_493:
3283 call loop_495
3284 call loop_496
3285 rd %ccr, %g5
3286loop_494:
3287 bcs,a %icc, loop_497
3288loop_495:
3289 nop
3290 set 0x6E, %o6
3291 ldstub [%l7 + %o6], %i7
3292loop_496:
3293 fmovdg %fcc1, %f8, %f20
3294 fmovrslz %g6, %f6, %f1
3295loop_497:
3296 call loop_498
3297 nop
3298 fitos %f12, %f15
3299 fstoi %f15, %f1
3300 call loop_499
3301 fmovslg %fcc0, %f18, %f19
3302loop_498:
3303 movge %fcc2, %g3, %i0
3304 and %i4, 0x12B6, %g1
3305loop_499:
3306 bleu %icc, loop_500
3307 fandnot1 %f28, %f20, %f20
3308 srlx %o5, %l1, %l5
3309 call loop_501
3310loop_500:
3311 addc %o7, %o0, %i3
3312 xnor %g2, %g7, %g4
3313 tg %xcc, 0x6
3314loop_501:
3315 brlez,pt %l4, loop_502
3316 wrpr %o4, 0x18E6, %pil
3317 call loop_503
3318 nop
3319 fitod %f6, %f18
3320loop_502:
3321 call loop_504
3322 fpmerge %f28, %f5, %f2
3323loop_503:
3324 fmovsl %xcc, %f12, %f9
3325 call loop_505
3326loop_504:
3327 rdhpr %ver, %l3
3328 edge8n %i6, %i5, %o6
3329 edge32n %o3, %i1, %l6
3330loop_505:
3331 call loop_506
3332 call loop_507
3333 ldd [%l7 + 0x60], %l2
3334 fmul8sux16 %f24, %f8, %f12
3335loop_506:
3336 call loop_508
3337loop_507:
3338 fmovse %fcc0, %f3, %f10
3339 tvs %icc, 0x0
3340 wr %g0, 0xe2, %asi
3341 stha %i2, [%l7 + 0x0A] %asi
3342 membar #Sync
3343loop_508:
3344 fornot1s %f8, %f0, %f29
3345 movuge %fcc3, %o2, %o1
3346 call loop_509
3347 call loop_510
3348 fmovdvc %xcc, %f18, %f12
3349 movgu %icc, %l0, %g5
3350loop_509:
3351 call loop_511
3352loop_510:
3353 fone %f10
3354 nop
3355 set 0x38, %i6
3356 prefetch [%l7 + %i6], 3
3357 call loop_512
3358loop_511:
3359 flush %l7 + 0x78
3360 fpadd16 %f20, %f16, %f2
3361 brgz,a,pt %g6, loop_513
3362loop_512:
3363 call loop_514
3364 call loop_515
3365 fble %fcc0, loop_516
3366loop_513:
3367 call loop_517
3368loop_514:
3369 fpadd32s %f11, %f12, %f28
3370loop_515:
3371 fmovsvs %icc, %f29, %f5
3372loop_516:
3373 fexpand %f19, %f10
3374loop_517:
3375 call loop_518
3376 rdpr %cansave, %i7
3377 flush %l7 + 0x60
3378 call loop_519
3379loop_518:
3380 wr %i0, %i4, %sys_tick
3381 call loop_520
3382 fpmerge %f17, %f7, %f2
3383loop_519:
3384 fnot1s %f7, %f19
3385 call loop_521
3386loop_520:
3387 rd %fprs, %g1
3388 call loop_522
3389 fmovdo %fcc2, %f0, %f4
3390loop_521:
3391 fmovdl %xcc, %f8, %f6
3392 udiv %o5, 0x04C6, %l1
3393loop_522:
3394 nop
3395 setx 0xC288A9CE, %l0, %l6
3396 st %l6, [%l7 + 0x28]
3397 ld [%l7 + 0x28], %f15
3398 setx 0x09AABE36, %l1, %l5
3399 st %l5, [%l7 + 0x10]
3400 ld [%l7 + 0x10], %f25
3401 fdivs %f25, %f15, %f19
3402 nop
3403 setx 0x1B8F, %l0, %o7
3404 sdivcc %l5, %o7, %o0
3405 call loop_523
3406 tge %xcc, 0x5
3407 call loop_524
3408 fcmpes %fcc2, %f6, %f15
3409loop_523:
3410 fmovdne %xcc, %f6, %f14
3411 tcs %xcc, 0x7
3412loop_524:
3413 call loop_525
3414 movneg %icc, 0x005, %g3
3415 call loop_526
3416 call loop_527
3417loop_525:
3418 fmovsue %fcc2, %f10, %f24
3419 fone %f8
3420loop_526:
3421 fmovsgu %icc, %f11, %f14
3422loop_527:
3423 rdhpr %hintp, %i3
3424 fmovrdlz %g2, %f0, %f16
3425 set 0x5C, %o3
3426 stwa %g4, [%l7 + %o3] 0x2a
3427 membar #Sync
3428 fbug,pn %fcc1, loop_528
3429 call loop_529
3430 ld [%l7 + 0x20], %f9
3431 fpadd16 %f14, %f4, %f2
3432loop_528:
3433 fmovrdlz %l4, %f10, %f22
3434loop_529:
3435 call loop_530
3436 call loop_531
3437 fmovsgu %icc, %f21, %f11
3438 fxnors %f16, %f10, %f25
3439loop_530:
3440 ld [%l7 + 0x54], %f28
3441loop_531:
3442 wr %o4, %l3, %pic
3443 fmovsneg %xcc, %f29, %f8
3444 call loop_532
3445 wrpr %i6, 0x1A45, %tick
3446 call loop_533
3447 nop
3448 setx 0x1B7F, %l0, %o6
3449 sdivx %i5, %o6, %o3
3450loop_532:
3451 call loop_534
3452 fmovrsgz %i1, %f10, %f11
3453loop_533:
3454 fabss %f5, %f27
3455 fmovrslz %l6, %f31, %f3
3456loop_534:
3457 call loop_535
3458 call loop_536
3459 call loop_537
3460 call loop_538
3461loop_535:
3462 call loop_539
3463loop_536:
3464 nop
3465
3466loop_537:
3467 nop
3468
3469loop_538:
3470 nop
3471
3472loop_539:
3473 nop
3474
3475 EXIT_GOOD
3476
3477
3478
3479!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3480!
3481! Stats for Thread 7:
3482!
3483! Type l : 11
3484! Type a : 12
3485! Type x : 2
3486! Type cti : 75
3487! Type f : 60
3488! Type i : 40
3489!
3490!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3491
3492
3493 EXIT_GOOD /* test finish */
3494
3495/************************************************************************
3496 Test case data start
3497 ************************************************************************/
3498.data
3499user_data_start:
3500scratch_area:
3501.word 0x614892B7
3502.word 0x2EACFE26
3503.word 0xEEE47771
3504.word 0x046E3ACD
3505.word 0x489ACFAB
3506.word 0xA768A586
3507.word 0xF7629C3C
3508.word 0x83C095B6
3509.word 0xF8BE7E55
3510.word 0x8CF5A679
3511.word 0x8D73947B
3512.word 0x155EE241
3513.word 0x03BB7B6C
3514.word 0x04F1959F
3515.word 0x1A530A78
3516.word 0x1B0284F1
3517.word 0x7BA3A641
3518.word 0x0FC08847
3519.word 0xA813A78B
3520.word 0x7C7312BB
3521.word 0x010AA0A3
3522.word 0x33021137
3523.word 0x209828BF
3524.word 0x9DF99BD2
3525.word 0x0D691893
3526.word 0x29DBA331
3527.word 0xB2F950D8
3528.word 0x01E7EA3B
3529.word 0x78F7BA25
3530.word 0x2BD4CBBB
3531.word 0xF25E7A44
3532.word 0x7ECCDAB8
3533.word 0x49E94D15
3534.word 0x4FAB2E43
3535.word 0xBE7F3C64
3536.word 0x0E4CC901
3537.word 0x42F98596
3538.word 0x4EE94A8B
3539.word 0x6F5AAFAA
3540.word 0xA45BD2DC
3541.word 0xF619FB28
3542.word 0x58D62EA2
3543.word 0x37676012
3544.word 0x2731A9CD
3545.word 0x5F536B7A
3546.word 0x4017F485
3547.word 0xF839CC2C
3548.word 0xBE5EAA16
3549.word 0xFFFFE2C4
3550.word 0x95BF0ACE
3551.word 0x78DD9979
3552.word 0x07501CD0
3553.word 0xDDAC27BC
3554.word 0xD7DBEEEA
3555.word 0xC2607CCF
3556.word 0xDF37B997
3557.word 0xA6F4865A
3558.word 0xC7BD51CF
3559.word 0x70A899A6
3560.word 0xFA16BE97
3561.word 0x0C310CEA
3562.word 0xFEDD38E7
3563.word 0xB44709BD
3564.word 0x55480FEA
3565.end