Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / diag / assembly / fgu / fgu_siam_traps_21.s
CommitLineData
86530b38
AT
1/*
2* ========== Copyright Header Begin ==========================================
3*
4* OpenSPARC T2 Processor File: fgu_siam_traps_21.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=1234"
39.ident "Mon Dec 8 19:51:05 CST 2003"
40.ident "Using Instruction Hash for Focus :$Id: fgu_siam_traps_21.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 0x9, %g1
119 set 0x8, %g2
120 set 0x3, %g3
121 set 0x0, %g4
122 set 0xD, %g5
123 set 0xF, %g6
124 set 0xF, %g7
125 !# Input registers
126 set -0xB, %i0
127 set -0xA, %i1
128 set -0x1, %i2
129 set -0x3, %i3
130 set -0x0, %i4
131 set -0x3, %i5
132 set -0x8, %i6
133 set -0xA, %i7
134 !# Local registers
135 set 0x741FD612, %l0
136 set 0x150D1EE3, %l1
137 set 0x33C5F95B, %l2
138 set 0x0824F6B4, %l3
139 set 0x071A2858, %l4
140 set 0x450B8AFB, %l5
141 set 0x72C81A65, %l6
142 !# Output registers
143 set -0x102A, %o0
144 set -0x1EEA, %o1
145 set -0x0D07, %o2
146 set -0x000E, %o3
147 set 0x0E15, %o4
148 set 0x10D0, %o5
149 set 0x1D7F, %o6
150 set 0x1FFE, %o7
151 !# Float registers
152 INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
153 INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
154 INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
155 INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
156 INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
157 INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
158 INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
159 INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
160 INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
161 INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
162 INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
163 INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
164 INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
165 INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
166 INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
167 INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
168
169 !# Execute Main Diag ..
170
171 tvc %xcc, 0x4
172 siam 0x4
173 edge32l %l5, %o3, %l0
174 siam 0x0
175 siam 0x4
176 siam 0x0
177 siam 0x1
178 siam 0x6
179 siam 0x5
180 orncc %i2, 0x0E85, %g6
181 smulcc %g1, 0x0D7A, %i6
182 movrlez %o6, %g3, %l1
183 nop
184 setx 0x8235415133403864, %l0, %l6
185 stx %l6, [%l7 + 0x68]
186 ldx [%l7 + 0x68], %fsr
187 siam 0x3
188 siam 0x0
189 siam 0x1
190 orncc %l4, 0x0782, %l3
191 movu %fcc2, 0x5AF, %g4
192 siam 0x7
193 movule %fcc2, %g2, %o2
194 siam 0x5
195 siam 0x7
196 movvs %xcc, 0x2F2, %i0
197 siam 0x1
198 siam 0x1
199 movneg %xcc, %i3, %o7
200 movule %fcc2, %o5, %i1
201 alignaddr %l6, %o1, %i5
202 siam 0x2
203 siam 0x4
204 movleu %xcc, 0x1FC, %i4
205 array32 %o4, %g5, %i7
206 siam 0x2
207 movul %fcc0, 0x344, %o0
208 siam 0x4
209 movn %fcc1, 0x756, %l2
210 siam 0x4
211 bne,a,pn %xcc, loop_1
212 edge16ln %l5, %g7, %l0
213 siam 0x4
214 umul %o3, %i2, %g1
215loop_1:
216 or %i6, %o6, %g3
217 siam 0x7
218 tn %icc, 0x0
219 siam 0x6
220 siam 0x0
221 set 0x50, %i0
222 ldda [%l7 + %i0] 0xea, %g6
223 siam 0x5
224 siam 0x6
225 movne %icc, %l4, %l1
226 set 0x3C, %g4
227 ldswa [%l7 + %g4] 0x89, %g4
228 umulcc %l3, %g2, %o2
229 movle %fcc2, 0x160, %i3
230 xnorcc %o7, 0x08D4, %i0
231 siam 0x4
232 tcs %icc, 0x2
233 addcc %o5, %l6, %i1
234 bmask %i5, %o1, %i4
235 siam 0x4
236 movlg %fcc3, %o4, %g5
237 siam 0x1
238 siam 0x7
239 xorcc %i7, %o0, %l2
240 taddcc %g7, %l5, %o3
241 set 0x60, %o7
242 stba %l0, [%l7 + %o7] 0x2f
243 membar #Sync
244 nop
245 setx 0x0A1D, %l0, %i2
246 sdivcc %g1, %i2, %o6
247 siam 0x6
248 tpos %icc, 0x0
249 siam 0x3
250 edge32ln %i6, %g3, %g6
251 siam 0x7
252 nop
253 set 0x18, %l4
254 lduh [%l7 + %l4], %l4
255 siam 0x7
256 siam 0x4
257 siam 0x1
258 movvs %icc, 0x003, %l1
259 movuge %fcc1, %l3, %g4
260 siam 0x5
261 siam 0x3
262 edge8ln %o2, %i3, %o7
263 and %i0, %g2, %o5
264 siam 0x3
265 siam 0x6
266 edge32n %i1, %i5, %o1
267 subcc %l6, %o4, %i4
268 nop
269 set 0x10, %g6
270 ldx [%l7 + %g6], %i7
271 nop
272 set 0x78, %i6
273 flush %l7 + %i6
274 umulcc %o0, %g5, %g7
275 siam 0x6
276 xnorcc %l5, %l2, %o3
277 fbn,a %fcc0, loop_2
278 siam 0x4
279 siam 0x3
280 sll %g1, %l0, %o6
281loop_2:
282 nop
283 wr %g0, 0x04, %asi
284 ldstuba [%l7 + 0x5F] %asi, %i6
285 siam 0x6
286 sir 0x013A
287 smulcc %i2, 0x0949, %g6
288 siam 0x4
289 edge8ln %g3, %l4, %l3
290 andncc %l1, 0x0A1E, %o2
291 move %xcc, %i3, %g4
292 siam 0x0
293 bmask %i0, %o7, %o5
294 be,a %xcc, loop_3
295 move %fcc3, %i1, %g2
296 siam 0x7
297 siam 0x0
298loop_3:
299 tsubcc %o1, %l6, %o4
300 wr %g0, 0x89, %asi
301 ldda [%l7 + 0x40] %asi, %f16
302 siam 0x7
303 tl %xcc, 0x4
304 flushw
305 siam 0x4
306 bg,pt %xcc, loop_4
307 nop
308 setx 0x10C2, %l0, %i4
309 sdiv %i5, %i4, %i7
310 sll %g5, 0x01, %o0
311 orn %l5, 0x0778, %g7
312loop_4:
313 siam 0x6
314 siam 0x0
315 siam 0x5
316 call loop_5
317 siam 0x1
318 membar 0x6A
319 andcc %o3, 0x193B, %l2
320loop_5:
321 andncc %l0, 0x1214, %g1
322 siam 0x5
323 tle %xcc, 0x6
324 ldd [%l7 + 0x58], %f8
325 siam 0x5
326 movcc %xcc, %o6, %i2
327 siam 0x4
328 siam 0x3
329 mulscc %g6, 0x14B6, %g3
330 siam 0x0
331 tneg %xcc, 0x2
332 bmask %l4, %i6, %l3
333 edge8n %l1, %i3, %o2
334 siam 0x4
335 siam 0x0
336 siam 0x1
337 siam 0x0
338 siam 0x6
339 tsubcc %g4, %o7, %o5
340 nop
341 set 0x10, %g1
342 ldd [%l7 + %g1], %i0
343 tn %xcc, 0x2
344 movge %fcc0, 0x5D8, %g2
345 siam 0x6
346 siam 0x5
347 xor %i0, 0x09F9, %o1
348 popc %o4, %l6
349 siam 0x1
350 siam 0x7
351 siam 0x7
352 siam 0x0
353 bvs,a,pt %icc, loop_6
354 movpos %xcc, %i4, %i7
355 sdivcc %i5, 0x0F6E, %o0
356 tle %icc, 0x1
357loop_6:
358 movneg %xcc, 0x760, %g5
359 tneg %icc, 0x4
360 siam 0x3
361 and %g7, %l5, %o3
362 siam 0x2
363 ba,a,pt %xcc, loop_7
364 mulscc %l2, 0x0707, %g1
365 movpos %icc, %l0, %i2
366 bvc,pn %xcc, loop_8
367loop_7:
368 siam 0x1
369 fba,pt %fcc1, loop_9
370 bl,a %icc, loop_10
371loop_8:
372 siam 0x5
373 bpos,a,pn %icc, loop_11
374loop_9:
375 movrlz %g6, %o6, %l4
376loop_10:
377 tvc %icc, 0x4
378 tvs %xcc, 0x1
379loop_11:
380 siam 0x3
381 siam 0x6
382 siam 0x6
383 siam 0x7
384 siam 0x7
385 membar 0x53
386 st %fsr, [%l7 + 0x24]
387 smulcc %i6, %g3, %l3
388 fbue,a %fcc0, loop_12
389 membar 0x5C
390 and %i3, 0x118E, %l1
391 mulscc %g4, %o2, %o5
392loop_12:
393 movcc %icc, 0x614, %i1
394 siam 0x2
395 sethi 0x00EC, %o7
396 bne,a %icc, loop_13
397 movrgz %i0, %o1, %g2
398 set 0x08, %g3
399 stda %i6, [%l7 + %g3] 0x22
400 membar #Sync
401loop_13:
402 nop
403
404 EXIT_GOOD
405
406
407
408!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
409!
410! Stats for Thread 0:
411!
412! Type l : 13
413! Type x : 6
414! Type cti : 13
415! Type f : 80
416! Type i : 88
417!
418!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
419
420!
421! Thread 1 Start
422!
423main_t1:
424 mov %l7, %g1
425 !# Set %cwp for 8 windows
426 !# This threads memory space into each %l7
427 wrpr %g0, 0x7, %cwp
428 mov %g1, %l7
429 wrpr %g0, 0x6, %cwp
430 mov %g1, %l7
431 wrpr %g0, 0x5, %cwp
432 mov %g1, %l7
433 wrpr %g0, 0x4, %cwp
434 mov %g1, %l7
435 wrpr %g0, 0x3, %cwp
436 mov %g1, %l7
437 wrpr %g0, 0x2, %cwp
438 mov %g1, %l7
439 wrpr %g0, 0x1, %cwp
440 mov %g1, %l7
441 wrpr %g0, 0x0, %cwp
442 mov %g1, %l7
443
444 !# Set %fsr
445 setx 0x0000000000000000, %l0, %l6 !# no post process
446 stx %l6, [%l7 + 0x0] !# no post process
447 ldx [%l7 + 0x0], %fsr !# no post process
448
449 !# Initialize registers ..
450
451 !# Global registers
452 set 0x9, %g1
453 set 0x1, %g2
454 set 0x7, %g3
455 set 0x6, %g4
456 set 0xD, %g5
457 set 0xD, %g6
458 set 0x2, %g7
459 !# Input registers
460 set -0x2, %i0
461 set -0x7, %i1
462 set -0x2, %i2
463 set -0xD, %i3
464 set -0xE, %i4
465 set -0xB, %i5
466 set -0x7, %i6
467 set -0x9, %i7
468 !# Local registers
469 set 0x5175F673, %l0
470 set 0x7EC05BEF, %l1
471 set 0x6A992E6C, %l2
472 set 0x31391331, %l3
473 set 0x10CCB3FD, %l4
474 set 0x7614D3AC, %l5
475 set 0x4B998D20, %l6
476 !# Output registers
477 set -0x1B6A, %o0
478 set -0x10A0, %o1
479 set -0x1DB0, %o2
480 set -0x014F, %o3
481 set -0x1436, %o4
482 set -0x125A, %o5
483 set 0x183F, %o6
484 set 0x17CD, %o7
485 !# Float registers
486 INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
487 INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
488 INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
489 INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
490 INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
491 INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
492 INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
493 INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
494 INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
495 INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
496 INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
497 INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
498 INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
499 INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
500 INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
501 INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
502
503 !# Execute Main Diag ..
504
505 siam 0x5
506 brgz,pn %o4, loop_14
507 array32 %i7, %i5, %o0
508 srlx %g5, 0x19, %g7
509 movre %i4, 0x06A, %o3
510loop_14:
511 edge8l %l5, %g1, %l2
512 edge8l %l0, %i2, %g6
513 siam 0x2
514 fblg %fcc3, loop_15
515 siam 0x2
516 siam 0x5
517 siam 0x6
518loop_15:
519 tvc %icc, 0x3
520 srl %o6, %i6, %l4
521 siam 0x5
522 nop
523 setx 0x1FF5, %l0, %i3
524 sdivcc %g3, %i3, %l3
525 siam 0x3
526 siam 0x4
527 siam 0x5
528 siam 0x0
529 xnorcc %g4, 0x171B, %l1
530 siam 0x2
531 siam 0x4
532 siam 0x1
533 siam 0x6
534 movvc %xcc, 0x292, %o5
535 movule %fcc2, 0x1F9, %o2
536 array16 %i1, %o7, %o1
537 movle %icc, %g2, %l6
538 siam 0x6
539 sethi 0x060B, %o4
540 fbne %fcc1, loop_16
541 brlz %i7, loop_17
542 ld [%l7 + 0x10], %f28
543 siam 0x7
544loop_16:
545 nop
546 setx 0x09E7, %l0, %i0
547 udiv %i5, %i0, %o0
548loop_17:
549 tsubcctv %g7, %i4, %o3
550 sra %l5, 0x15, %g1
551 siam 0x2
552 siam 0x6
553 siam 0x6
554 set 0x0D, %o3
555 stba %g5, [%l7 + %o3] 0x18
556 siam 0x6
557 set 0x0C, %g7
558 lda [%l7 + %g7] 0x18, %f4
559 popc 0x04A4, %l0
560 siam 0x5
561 stx %l2, [%l7 + 0x60]
562 siam 0x7
563 tvs %icc, 0x0
564 xor %i2, 0x1E2F, %o6
565 movg %xcc, 0x4EE, %i6
566 siam 0x1
567 movne %fcc2, 0x498, %g6
568 siam 0x0
569 mulscc %g3, %l4, %i3
570 movleu %icc, %l3, %g4
571 siam 0x3
572 sir 0x0AA2
573 taddcc %l1, %o5, %o2
574 alignaddr %i1, %o7, %o1
575 wr %g0, 0x88, %asi
576 ldstuba [%l7 + 0x22] %asi, %l6
577 siam 0x6
578 siam 0x4
579 siam 0x6
580 movl %fcc3, %o4, %i7
581 siam 0x4
582 call loop_18
583 andcc %g2, 0x1DC4, %i5
584 siam 0x1
585 set 0x1C, %i7
586 lda [%l7 + %i7] 0x81, %f22
587loop_18:
588 siam 0x6
589 edge8ln %i0, %o0, %g7
590 ba,a,pt %xcc, loop_19
591 siam 0x6
592 siam 0x1
593 subcc %o3, %i4, %g1
594loop_19:
595 siam 0x0
596 edge8ln %g5, %l0, %l2
597 fbule,a,pt %fcc2, loop_20
598 nop
599 set 0x28, %o5
600 ldsw [%l7 + %o5], %l5
601 siam 0x0
602 sir 0x0C3B
603loop_20:
604 siam 0x3
605 siam 0x6
606 edge16n %i2, %i6, %g6
607 tge %xcc, 0x5
608 siam 0x6
609 movcs %icc, 0x701, %o6
610 add %l7, 0x74, %l6
611 wr %g0, 0x18, %asi
612 lda [%l6] %asi, %l4
613 casa [%l6] 0x18, %l4, %i3
614 siam 0x2
615 andn %l3, 0x09F9, %g3
616 mulscc %g4, 0x18FC, %l1
617 udiv %o5, 0x05C5, %o2
618 nop
619 setx 0x0961, %l0, %o7
620 udivcc %i1, %o7, %o1
621 udivcc %l6, 0x11BB, %i7
622 movl %icc, %o4, %g2
623 smul %i5, %i0, %g7
624 udivcc %o3, 0x067D, %o0
625 nop
626 setx 0x0A32, %l0, %g5
627 sdivcc %g1, %g5, %i4
628 tgu %icc, 0x5
629 xorcc %l0, %l5, %i2
630 tleu %icc, 0x6
631 siam 0x1
632 lduw [%l7 + 0x6C], %l2
633 movrlz %i6, 0x201, %o6
634 xnor %g6, 0x139E, %i3
635 siam 0x6
636 movl %fcc1, %l3, %g3
637 edge32ln %l4, %g4, %l1
638 xor %o2, 0x094A, %o5
639 siam 0x2
640 siam 0x2
641 siam 0x1
642 siam 0x4
643 siam 0x0
644 movlg %fcc2, %o7, %o1
645 tsubcc %i1, %i7, %o4
646 srax %g2, %i5, %i0
647 tvc %xcc, 0x5
648 siam 0x1
649 siam 0x3
650 and %g7, 0x03FB, %o3
651 membar 0x76
652 tsubcctv %l6, 0x08A0, %o0
653 siam 0x7
654 siam 0x1
655 subccc %g5, 0x1924, %g1
656 siam 0x5
657 siam 0x3
658 siam 0x6
659 fbn,a,pn %fcc3, loop_21
660 tleu %xcc, 0x0
661 fbge,a,pt %fcc3, loop_22
662 tcc %icc, 0x7
663loop_21:
664 siam 0x6
665 wr %g0, 0x27, %asi
666 stwa %l0, [%l7 + 0x38] %asi
667 membar #Sync
668loop_22:
669 bcs,pn %xcc, loop_23
670 stbar
671 movrlz %l5, 0x37F, %i4
672 movo %fcc2, %l2, %i2
673loop_23:
674 movleu %xcc, %o6, %g6
675 set 0x34, %i4
676 ldsha [%l7 + %i4] 0x11, %i6
677 add %l7, 0x48, %l6
678 wr %g0, 0x80, %asi
679 casa [%l6] 0x80, %i3, %l3
680 fbge %fcc1, loop_24
681 swap [%l7 + 0x20], %g3
682 siam 0x6
683 move %fcc3, %l4, %g4
684loop_24:
685 movneg %xcc, %o2, %o5
686 siam 0x7
687 fbug,pt %fcc0, loop_25
688 array32 %o7, %o1, %i1
689 addcc %l1, %o4, %g2
690 siam 0x3
691loop_25:
692 siam 0x5
693 siam 0x5
694 flushw
695 taddcctv %i5, %i0, %i7
696 set 0x4C, %o4
697 ldswa [%l7 + %o4] 0x0c, %g7
698 saved
699 rdpr %cwp, %g1
700 rdpr %cansave, %g2
701 rdpr %canrestore, %g3
702 rdpr %cleanwin, %g4
703 rdpr %otherwin, %g5
704 rdpr %wstate, %g6
705 edge32ln %l6, %o3, %g5
706 siam 0x4
707 bg,a %xcc, loop_26
708 srax %o0, %l0, %g1
709 siam 0x6
710 fblg,pt %fcc2, loop_27
711loop_26:
712 siam 0x1
713 siam 0x3
714 wr %g0, 0xf1, %asi
715 stda %f16, [%l7 + 0x40] %asi
716 membar #Sync
717loop_27:
718 orncc %i4, 0x192F, %l5
719 edge16 %l2, %o6, %g6
720 siam 0x0
721 movrne %i6, 0x191, %i3
722 srax %i2, %g3, %l4
723 siam 0x6
724 siam 0x7
725 movlg %fcc2, 0x524, %l3
726 wr %g0, 0xeb, %asi
727 stwa %g4, [%l7 + 0x5C] %asi
728 membar #Sync
729 xnorcc %o2, %o7, %o5
730 siam 0x3
731 call loop_28
732 brgez,pt %o1, loop_29
733 edge32 %i1, %o4, %g2
734 addcc %i5, %l1, %i0
735loop_28:
736 ba,a,pt %icc, loop_30
737loop_29:
738 siam 0x2
739 subc %i7, 0x08D8, %l6
740 array32 %o3, %g7, %g5
741loop_30:
742 bneg,pn %icc, loop_31
743 siam 0x5
744loop_31:
745 nop
746
747 EXIT_GOOD
748
749
750
751!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
752!
753! Stats for Thread 1:
754!
755! Type l : 17
756! Type x : 11
757! Type cti : 18
758! Type f : 69
759! Type i : 85
760!
761!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
762
763!
764! Thread 2 Start
765!
766main_t2:
767 mov %l7, %g1
768 !# Set %cwp for 8 windows
769 !# This threads memory space into each %l7
770 wrpr %g0, 0x7, %cwp
771 mov %g1, %l7
772 wrpr %g0, 0x6, %cwp
773 mov %g1, %l7
774 wrpr %g0, 0x5, %cwp
775 mov %g1, %l7
776 wrpr %g0, 0x4, %cwp
777 mov %g1, %l7
778 wrpr %g0, 0x3, %cwp
779 mov %g1, %l7
780 wrpr %g0, 0x2, %cwp
781 mov %g1, %l7
782 wrpr %g0, 0x1, %cwp
783 mov %g1, %l7
784 wrpr %g0, 0x0, %cwp
785 mov %g1, %l7
786
787 !# Set %fsr
788 setx 0x0000000000000000, %l0, %l6 !# no post process
789 stx %l6, [%l7 + 0x0] !# no post process
790 ldx [%l7 + 0x0], %fsr !# no post process
791
792 !# Initialize registers ..
793
794 !# Global registers
795 set 0x0, %g1
796 set 0xC, %g2
797 set 0x2, %g3
798 set 0x2, %g4
799 set 0x4, %g5
800 set 0x9, %g6
801 set 0xD, %g7
802 !# Input registers
803 set -0x5, %i0
804 set -0xF, %i1
805 set -0x9, %i2
806 set -0xA, %i3
807 set -0x0, %i4
808 set -0x1, %i5
809 set -0xF, %i6
810 set -0x3, %i7
811 !# Local registers
812 set 0x1D165AC8, %l0
813 set 0x7CF15BEF, %l1
814 set 0x4FD69807, %l2
815 set 0x50286738, %l3
816 set 0x2CF22337, %l4
817 set 0x29734A62, %l5
818 set 0x3717B3D8, %l6
819 !# Output registers
820 set -0x1936, %o0
821 set -0x0189, %o1
822 set -0x0ABC, %o2
823 set 0x165C, %o3
824 set 0x1AF3, %o4
825 set -0x1059, %o5
826 set 0x03F7, %o6
827 set -0x0C0D, %o7
828 !# Float registers
829 INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
830 INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
831 INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
832 INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
833 INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
834 INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
835 INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
836 INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
837 INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
838 INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
839 INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
840 INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
841 INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
842 INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
843 INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
844 INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
845
846 !# Execute Main Diag ..
847
848 siam 0x1
849 orncc %l0, 0x1244, %o0
850 movge %xcc, 0x77F, %i4
851 siam 0x5
852 siam 0x3
853 siam 0x0
854 movgu %xcc, %l5, %l2
855 siam 0x6
856 wr %g0, 0x04, %asi
857 ldsha [%l7 + 0x30] %asi, %o6
858 sdivcc %g1, 0x17CA, %i6
859 siam 0x6
860 siam 0x6
861 siam 0x7
862 array32 %g6, %i2, %g3
863 edge16l %i3, %l4, %l3
864 siam 0x1
865 siam 0x6
866 ba,a,pn %icc, loop_32
867 siam 0x4
868 tleu %xcc, 0x0
869 array32 %g4, %o7, %o2
870loop_32:
871 siam 0x1
872 tle %xcc, 0x1
873 movpos %icc, 0x339, %o5
874 siam 0x3
875 siam 0x3
876 brlz,a %o1, loop_33
877 edge16 %i1, %o4, %g2
878 brz %l1, loop_34
879 siam 0x2
880loop_33:
881 sra %i0, 0x1F, %i5
882 tleu %xcc, 0x7
883loop_34:
884 siam 0x2
885 ld [%l7 + 0x4C], %f15
886 te %xcc, 0x6
887 movl %fcc0, %l6, %o3
888 movlg %fcc2, 0x3C8, %g7
889 siam 0x1
890 siam 0x7
891 bvc,a,pn %xcc, loop_35
892 siam 0x5
893 bvs %xcc, loop_36
894 siam 0x1
895loop_35:
896 siam 0x7
897 ta %xcc, 0x0
898loop_36:
899 siam 0x4
900 nop
901 set 0x08, %i3
902 ldx [%l7 + %i3], %g5
903 andncc %i7, %o0, %i4
904 siam 0x1
905 nop
906 set 0x78, %o0
907 stx %l0, [%l7 + %o0]
908 bgu,pn %icc, loop_37
909 be,a %icc, loop_38
910 edge8 %l5, %o6, %l2
911 siam 0x1
912loop_37:
913 sll %g1, %g6, %i2
914loop_38:
915 siam 0x2
916 tge %xcc, 0x2
917 edge8n %g3, %i3, %l4
918 be %xcc, loop_39
919 udivcc %l3, 0x05D7, %g4
920 subc %o7, 0x01D1, %o2
921 sra %i6, %o5, %i1
922loop_39:
923 tneg %icc, 0x0
924 umulcc %o1, 0x03F3, %g2
925 siam 0x0
926 andncc %l1, 0x05F1, %o4
927 orn %i0, %l6, %o3
928 fbg,pt %fcc1, loop_40
929 siam 0x4
930 flush %l7 + 0x30
931 siam 0x0
932loop_40:
933 siam 0x7
934 siam 0x6
935 saved
936 rdpr %cwp, %g1
937 rdpr %cansave, %g2
938 rdpr %canrestore, %g3
939 rdpr %cleanwin, %g4
940 rdpr %otherwin, %g5
941 rdpr %wstate, %g6
942 siam 0x5
943 siam 0x1
944 sll %g7, 0x09, %g5
945 subccc %i7, 0x1F99, %i5
946 tle %icc, 0x3
947 movrlez %o0, %i4, %l5
948 edge16n %o6, %l0, %g1
949 tn %icc, 0x5
950 stbar
951 nop
952 set 0x4C, %o1
953 swap [%l7 + %o1], %l2
954 brnz,a %i2, loop_41
955 siam 0x1
956 siam 0x7
957 ba %xcc, loop_42
958loop_41:
959 nop
960 setx loop_43, %l0, %l1
961 jmpl %l1, %g3
962 siam 0x0
963 orcc %g6, %l4, %i3
964loop_42:
965 nop
966 set 0x40, %g2
967 stda %f16, [%l7 + %g2] 0xcd
968loop_43:
969 siam 0x7
970 siam 0x5
971 siam 0x7
972 brnz,pt %l3, loop_44
973 subccc %o7, 0x0D19, %o2
974 fbo,a %fcc1, loop_45
975 siam 0x2
976loop_44:
977 siam 0x2
978 alignaddr %g4, %o5, %i6
979loop_45:
980 andcc %o1, %i1, %l1
981 bcc,a %icc, loop_46
982 siam 0x1
983 restored
984 rdpr %cwp, %g1
985 rdpr %cansave, %g2
986 rdpr %canrestore, %g3
987 rdpr %cleanwin, %g4
988 rdpr %otherwin, %g5
989 rdpr %wstate, %g6
990 siam 0x0
991loop_46:
992 movg %fcc2, 0x766, %o4
993 siam 0x4
994 siam 0x5
995 siam 0x2
996 bmask %g2, %i0, %l6
997 siam 0x1
998 andn %g7, 0x0FBA, %g5
999 siam 0x4
1000 add %o3, 0x0EF3, %i5
1001 siam 0x4
1002 movleu %icc, %o0, %i7
1003 tcc %icc, 0x2
1004 xorcc %l5, %o6, %l0
1005 siam 0x0
1006 siam 0x5
1007 edge16n %g1, %l2, %i2
1008 bvs,a,pt %xcc, loop_47
1009 tl %xcc, 0x7
1010 andncc %g3, 0x07AA, %i4
1011 siam 0x3
1012loop_47:
1013 subcc %l4, %i3, %g6
1014 siam 0x2
1015 siam 0x4
1016 siam 0x0
1017 siam 0x1
1018 sethi 0x11FB, %o7
1019 movlg %fcc0, 0x624, %o2
1020 bg %xcc, loop_48
1021 sub %g4, %l3, %i6
1022 siam 0x4
1023 edge8l %o5, %o1, %i1
1024loop_48:
1025 tvs %icc, 0x7
1026 ldx [%l7 + 0x68], %o4
1027 siam 0x0
1028 siam 0x7
1029 orncc %l1, 0x1B3C, %g2
1030 movue %fcc2, 0x0B1, %i0
1031 sir 0x014E
1032 siam 0x7
1033 siam 0x0
1034 flushw
1035 siam 0x4
1036 siam 0x2
1037 edge16n %g7, %l6, %o3
1038 siam 0x0
1039 siam 0x0
1040 subc %i5, %o0, %g5
1041 movrgz %i7, 0x110, %o6
1042 stx %fsr, [%l7 + 0x78]
1043 siam 0x0
1044 sethi 0x08B3, %l5
1045 siam 0x0
1046 tvs %icc, 0x2
1047 addccc %l0, 0x0F59, %l2
1048 st %fsr, [%l7 + 0x18]
1049 siam 0x6
1050 tsubcctv %i2, %g1, %g3
1051 siam 0x2
1052 siam 0x2
1053 fbn,a,pn %fcc3, loop_49
1054 edge16 %i4, %i3, %g6
1055 tle %xcc, 0x3
1056 tvc %xcc, 0x6
1057loop_49:
1058 siam 0x6
1059 udivx %l4, 0x0359, %o7
1060 std %g4, [%l7 + 0x68]
1061 set 0x40, %l3
1062 stha %l3, [%l7 + %l3] 0xea
1063 membar #Sync
1064 tne %xcc, 0x3
1065 siam 0x5
1066 add %i6, %o5, %o1
1067 movleu %icc, 0x565, %o2
1068 siam 0x7
1069 sdivx %i1, 0x1F34, %o4
1070 siam 0x6
1071 siam 0x1
1072 movneg %icc, 0x030, %l1
1073 membar 0x5C
1074 bvc,a %xcc, loop_50
1075 edge8n %i0, %g2, %g7
1076 ldsw [%l7 + 0x54], %l6
1077 edge8ln %i5, %o3, %o0
1078loop_50:
1079 movlg %fcc3, %g5, %i7
1080 siam 0x6
1081 movrne %o6, 0x038, %l5
1082 siam 0x5
1083 movne %fcc3, 0x291, %l0
1084 siam 0x0
1085 siam 0x4
1086 movpos %xcc, %i2, %g1
1087 siam 0x1
1088 fbe,a %fcc2, loop_51
1089loop_51:
1090 nop
1091
1092 EXIT_GOOD
1093
1094
1095
1096!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1097!
1098! Stats for Thread 2:
1099!
1100! Type l : 14
1101! Type cti : 20
1102! Type x : 3
1103! Type f : 79
1104! Type i : 84
1105!
1106!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1107
1108!
1109! Thread 3 Start
1110!
1111main_t3:
1112 mov %l7, %g1
1113 !# Set %cwp for 8 windows
1114 !# This threads memory space into each %l7
1115 wrpr %g0, 0x7, %cwp
1116 mov %g1, %l7
1117 wrpr %g0, 0x6, %cwp
1118 mov %g1, %l7
1119 wrpr %g0, 0x5, %cwp
1120 mov %g1, %l7
1121 wrpr %g0, 0x4, %cwp
1122 mov %g1, %l7
1123 wrpr %g0, 0x3, %cwp
1124 mov %g1, %l7
1125 wrpr %g0, 0x2, %cwp
1126 mov %g1, %l7
1127 wrpr %g0, 0x1, %cwp
1128 mov %g1, %l7
1129 wrpr %g0, 0x0, %cwp
1130 mov %g1, %l7
1131
1132 !# Set %fsr
1133 setx 0x0000000000000000, %l0, %l6 !# no post process
1134 stx %l6, [%l7 + 0x0] !# no post process
1135 ldx [%l7 + 0x0], %fsr !# no post process
1136
1137 !# Initialize registers ..
1138
1139 !# Global registers
1140 set 0xA, %g1
1141 set 0xE, %g2
1142 set 0x4, %g3
1143 set 0xD, %g4
1144 set 0xA, %g5
1145 set 0xE, %g6
1146 set 0x5, %g7
1147 !# Input registers
1148 set -0x3, %i0
1149 set -0x9, %i1
1150 set -0x9, %i2
1151 set -0x3, %i3
1152 set -0x6, %i4
1153 set -0x4, %i5
1154 set -0xA, %i6
1155 set -0x1, %i7
1156 !# Local registers
1157 set 0x2767527B, %l0
1158 set 0x0B1A9E99, %l1
1159 set 0x548E2701, %l2
1160 set 0x7C392080, %l3
1161 set 0x45B21112, %l4
1162 set 0x25C4AA7C, %l5
1163 set 0x25F95F7F, %l6
1164 !# Output registers
1165 set 0x12A7, %o0
1166 set -0x0C3E, %o1
1167 set 0x1A33, %o2
1168 set 0x08D6, %o3
1169 set 0x0EDA, %o4
1170 set -0x0E23, %o5
1171 set 0x1D42, %o6
1172 set 0x0333, %o7
1173 !# Float registers
1174 INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
1175 INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
1176 INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
1177 INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
1178 INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
1179 INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
1180 INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
1181 INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
1182 INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
1183 INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
1184 INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
1185 INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
1186 INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
1187 INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
1188 INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
1189 INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
1190
1191 !# Execute Main Diag ..
1192
1193 siam 0x6
1194 sir 0x0BFB
1195 siam 0x7
1196 siam 0x5
1197 membar 0x43
1198 siam 0x3
1199 siam 0x1
1200 siam 0x5
1201 siam 0x7
1202 bn,a,pn %xcc, loop_52
1203 siam 0x4
1204 or %g3, 0x18CF, %i4
1205 sll %i3, 0x13, %l2
1206loop_52:
1207 std %l4, [%l7 + 0x20]
1208 andncc %o7, %g6, %g4
1209 siam 0x1
1210 movo %fcc0, 0x694, %i6
1211 orn %l3, 0x0362, %o5
1212 siam 0x6
1213 siam 0x6
1214 fble,pt %fcc0, loop_53
1215 siam 0x2
1216 siam 0x4
1217 movug %fcc1, 0x714, %o1
1218loop_53:
1219 andncc %o2, 0x0A8C, %o4
1220 and %i1, %l1, %g2
1221 movgu %xcc, %g7, %l6
1222 siam 0x6
1223 siam 0x3
1224 smul %i5, 0x07E3, %o3
1225 fbo,a,pt %fcc2, loop_54
1226 bmask %i0, %o0, %g5
1227 popc %o6, %l5
1228 movrlez %l0, %i7, %i2
1229loop_54:
1230 fba,pn %fcc0, loop_55
1231 siam 0x7
1232 saved
1233 rdpr %cwp, %g1
1234 rdpr %cansave, %g2
1235 rdpr %canrestore, %g3
1236 rdpr %cleanwin, %g4
1237 rdpr %otherwin, %g5
1238 rdpr %wstate, %g6
1239 siam 0x3
1240loop_55:
1241 bl,a,pt %icc, loop_56
1242 siam 0x1
1243 siam 0x1
1244 bg,a %xcc, loop_57
1245loop_56:
1246 siam 0x7
1247 edge32 %g1, %g3, %i3
1248 subccc %l2, 0x012A, %i4
1249loop_57:
1250 siam 0x6
1251 movcc %icc, 0x6A1, %o7
1252 siam 0x4
1253 siam 0x0
1254 array16 %l4, %g6, %i6
1255 siam 0x4
1256 sethi 0x1732, %g4
1257 siam 0x5
1258 siam 0x3
1259 bcs %xcc, loop_58
1260 edge32n %o5, %l3, %o1
1261 movre %o2, %i1, %o4
1262 taddcctv %l1, 0x1E54, %g7
1263loop_58:
1264 siam 0x2
1265 siam 0x6
1266 set 0x20, %g5
1267 prefetcha [%l7 + %g5] 0x81, 3
1268 edge32 %i5, %o3, %g2
1269 nop
1270 set 0x21, %i5
1271 ldub [%l7 + %i5], %i0
1272 siam 0x2
1273 siam 0x3
1274 tn %icc, 0x4
1275 tvs %icc, 0x0
1276 movg %icc, %o0, %g5
1277 nop
1278 setx 0xF08272939D30257C, %l0, %l6
1279 stx %l6, [%l7 + 0x68]
1280 ldx [%l7 + 0x68], %fsr
1281 flushw
1282 orn %o6, %l0, %l5
1283 wr %g0, 0xeb, %asi
1284 stxa %i2, [%l7 + 0x58] %asi
1285 membar #Sync
1286 siam 0x5
1287 wr %g0, 0x04, %asi
1288 lduwa [%l7 + 0x58] %asi, %i7
1289 siam 0x4
1290 siam 0x4
1291 siam 0x6
1292 siam 0x7
1293 edge8 %g1, %g3, %l2
1294 fbe %fcc0, loop_59
1295 siam 0x0
1296 flushw
1297 movrgez %i3, %o7, %i4
1298loop_59:
1299 siam 0x3
1300 nop
1301 setx 0x714A76DF, %l0, %l6
1302 st %l6, [%l7 + 0x40]
1303 ld [%l7 + 0x40], %fsr
1304 xnorcc %l4, %g6, %g4
1305 bcs,pt %icc, loop_60
1306 siam 0x3
1307 siam 0x7
1308 fbuge %fcc1, loop_61
1309loop_60:
1310 movpos %xcc, 0x652, %o5
1311 udivx %i6, 0x07E4, %o1
1312 andn %o2, %l3, %o4
1313loop_61:
1314 siam 0x1
1315 bgu %xcc, loop_62
1316 add %i1, 0x10D2, %l1
1317 edge32 %g7, %i5, %o3
1318 array8 %l6, %g2, %o0
1319loop_62:
1320 umul %g5, %o6, %i0
1321 siam 0x7
1322 siam 0x4
1323 siam 0x4
1324 fba,a,pn %fcc3, loop_63
1325 lduh [%l7 + 0x36], %l0
1326 sethi 0x0D2A, %i2
1327 siam 0x2
1328loop_63:
1329 st %fsr, [%l7 + 0x30]
1330 swap [%l7 + 0x50], %l5
1331 nop
1332 set 0x58, %l1
1333 prefetch [%l7 + %l1], 4
1334 tgu %icc, 0x0
1335 siam 0x6
1336 nop
1337 setx loop_64, %l0, %l1
1338 jmpl %l1, %g1
1339 siam 0x7
1340 nop
1341 set 0x48, %l0
1342 ldsh [%l7 + %l0], %g3
1343 membar 0x37
1344loop_64:
1345 tle %xcc, 0x6
1346 siam 0x7
1347 movre %l2, 0x120, %i3
1348 bpos,a,pt %xcc, loop_65
1349 siam 0x0
1350 siam 0x0
1351 siam 0x7
1352loop_65:
1353 ba,pt %xcc, loop_66
1354 add %o7, %i7, %l4
1355 siam 0x2
1356 addcc %g6, 0x03E2, %i4
1357loop_66:
1358 subccc %o5, %g4, %o1
1359 fbu %fcc1, loop_67
1360 fbuge,a,pt %fcc3, loop_68
1361 fbge,a,pt %fcc2, loop_69
1362 array16 %o2, %l3, %o4
1363loop_67:
1364 movuge %fcc3, 0x3F6, %i6
1365loop_68:
1366 bge %xcc, loop_70
1367loop_69:
1368 siam 0x2
1369 movrgez %i1, 0x067, %l1
1370 siam 0x2
1371loop_70:
1372 andcc %g7, 0x1483, %o3
1373 siam 0x1
1374 siam 0x6
1375 siam 0x2
1376 tpos %icc, 0x7
1377 siam 0x3
1378 edge32ln %i5, %l6, %g2
1379 siam 0x4
1380 siam 0x3
1381 siam 0x2
1382 alignaddrl %o0, %o6, %g5
1383 siam 0x1
1384 siam 0x6
1385 tcc %icc, 0x5
1386 siam 0x5
1387 movg %fcc0, %l0, %i0
1388 sub %i2, %g1, %g3
1389 bcs %icc, loop_71
1390 siam 0x2
1391 srax %l5, 0x18, %i3
1392 sethi 0x09F3, %o7
1393loop_71:
1394 fbn %fcc2, loop_72
1395 siam 0x7
1396 siam 0x5
1397 siam 0x1
1398loop_72:
1399 nop
1400 setx 0x0E13, %l0, %l2
1401 sdivx %i7, %l2, %g6
1402 siam 0x6
1403 siam 0x4
1404 siam 0x6
1405 bpos,a,pt %icc, loop_73
1406 siam 0x2
1407 movgu %xcc, 0x468, %i4
1408 restored
1409 rdpr %cwp, %g1
1410 rdpr %cansave, %g2
1411 rdpr %canrestore, %g3
1412 rdpr %cleanwin, %g4
1413 rdpr %otherwin, %g5
1414 rdpr %wstate, %g6
1415loop_73:
1416 alignaddrl %l4, %g4, %o5
1417 popc %o2, %o1
1418 movcs %xcc, 0x608, %l3
1419 siam 0x5
1420 sdiv %o4, 0x080A, %i6
1421 ba %xcc, loop_74
1422 movl %xcc, 0x2E3, %i1
1423 wr %g0, 0x2c, %asi
1424 ldda [%l7 + 0x70] %asi, %g6
1425loop_74:
1426 siam 0x2
1427 siam 0x7
1428 siam 0x1
1429 fbn,pn %fcc3, loop_75
1430 edge16n %l1, %o3, %i5
1431 siam 0x5
1432 brlz,a,pt %l6, loop_76
1433loop_75:
1434 bmask %g2, %o0, %g5
1435 nop
1436 set 0x56, %l6
1437 ldstub [%l7 + %l6], %l0
1438 sir 0x0922
1439loop_76:
1440 movue %fcc2, 0x458, %o6
1441 siam 0x5
1442 sdiv %i2, 0x1C1B, %g1
1443 fbl %fcc3, loop_77
1444 movrgez %g3, %l5, %i3
1445 siam 0x0
1446 st %f19, [%l7 + 0x3C]
1447loop_77:
1448 tsubcctv %i0, %o7, %l2
1449 sdiv %g6, 0x0DC6, %i7
1450 EXIT_GOOD
1451
1452
1453
1454!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1455!
1456! Stats for Thread 3:
1457!
1458! Type l : 15
1459! Type x : 4
1460! Type cti : 26
1461! Type f : 78
1462! Type i : 77
1463!
1464!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1465
1466!
1467! Thread 4 Start
1468!
1469main_t4:
1470 mov %l7, %g1
1471 !# Set %cwp for 8 windows
1472 !# This threads memory space into each %l7
1473 wrpr %g0, 0x7, %cwp
1474 mov %g1, %l7
1475 wrpr %g0, 0x6, %cwp
1476 mov %g1, %l7
1477 wrpr %g0, 0x5, %cwp
1478 mov %g1, %l7
1479 wrpr %g0, 0x4, %cwp
1480 mov %g1, %l7
1481 wrpr %g0, 0x3, %cwp
1482 mov %g1, %l7
1483 wrpr %g0, 0x2, %cwp
1484 mov %g1, %l7
1485 wrpr %g0, 0x1, %cwp
1486 mov %g1, %l7
1487 wrpr %g0, 0x0, %cwp
1488 mov %g1, %l7
1489
1490 !# Set %fsr
1491 setx 0x0000000000000000, %l0, %l6 !# no post process
1492 stx %l6, [%l7 + 0x0] !# no post process
1493 ldx [%l7 + 0x0], %fsr !# no post process
1494
1495 !# Initialize registers ..
1496
1497 !# Global registers
1498 set 0xA, %g1
1499 set 0x8, %g2
1500 set 0x6, %g3
1501 set 0xF, %g4
1502 set 0xA, %g5
1503 set 0x7, %g6
1504 set 0xD, %g7
1505 !# Input registers
1506 set -0x1, %i0
1507 set -0x2, %i1
1508 set -0xC, %i2
1509 set -0x2, %i3
1510 set -0x4, %i4
1511 set -0x9, %i5
1512 set -0x2, %i6
1513 set -0x3, %i7
1514 !# Local registers
1515 set 0x0FEBB093, %l0
1516 set 0x61C9C8C2, %l1
1517 set 0x7E672984, %l2
1518 set 0x40D95741, %l3
1519 set 0x5255560D, %l4
1520 set 0x783ED651, %l5
1521 set 0x609583A5, %l6
1522 !# Output registers
1523 set 0x08BF, %o0
1524 set 0x1503, %o1
1525 set -0x1A05, %o2
1526 set -0x0033, %o3
1527 set -0x1E86, %o4
1528 set -0x1E1C, %o5
1529 set 0x06E9, %o6
1530 set -0x1764, %o7
1531 !# Float registers
1532 INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
1533 INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
1534 INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
1535 INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
1536 INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
1537 INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
1538 INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
1539 INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
1540 INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
1541 INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
1542 INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
1543 INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
1544 INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
1545 INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
1546 INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
1547 INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
1548
1549 !# Execute Main Diag ..
1550
1551 movn %icc, %i4, %l4
1552 siam 0x7
1553 flushw
1554 siam 0x2
1555 siam 0x7
1556 fblg %fcc3, loop_78
1557 siam 0x7
1558 mulx %g4, %o2, %o5
1559 siam 0x6
1560loop_78:
1561 brlez,a,pn %l3, loop_79
1562 array8 %o1, %i6, %i1
1563 fba %fcc0, loop_80
1564 tpos %xcc, 0x7
1565loop_79:
1566 siam 0x3
1567 tge %icc, 0x1
1568loop_80:
1569 tle %xcc, 0x7
1570 taddcc %o4, %g7, %l1
1571 tgu %xcc, 0x1
1572 siam 0x7
1573 saved
1574 rdpr %cwp, %g1
1575 rdpr %cansave, %g2
1576 rdpr %canrestore, %g3
1577 rdpr %cleanwin, %g4
1578 rdpr %otherwin, %g5
1579 rdpr %wstate, %g6
1580 siam 0x2
1581 movvs %icc, %o3, %l6
1582 addc %i5, %o0, %g5
1583 siam 0x6
1584 flushw
1585 siam 0x1
1586 siam 0x6
1587 mulx %g2, %o6, %i2
1588 nop
1589 setx loop_81, %l0, %l1
1590 wrpr 0x1, %tl
1591 wrpr %l1, %tnpc
1592 setx 0x021400001407, %l0, %l1
1593 wrpr %l1, %tstate
1594 wrhpr 0x4, %htstate
1595 rdpr %tt, %l1
1596 wrpr %g0, %l1, %tt
1597 rdpr %pstate, %l1
1598 wrpr %g0, %l1, %pstate
1599 rdpr %tl, %l1
1600 wrpr %g0, %l1, %tl
1601 rdpr %tpc, %l1
1602 wrpr %g0, %l1, %tpc
1603 rdpr %tnpc, %l1
1604 wrpr %g0, %l1, %tnpc
1605 rdpr %tstate, %l1
1606 wrpr %g0, %l1, %tstate
1607 rdpr %tba, %l1
1608 wrpr %g0, %l1, %tba
1609 rdpr %tba, %l1
1610 wrpr %g0, %l1, %tba
1611 rdhpr %hpstate, %l1
1612 wrhpr %g0, %l1, %hpstate
1613 rdhpr %htstate, %l1
1614 wrhpr %g0, %l1, %htstate
1615 rdhpr %hintp, %l1
1616 wrhpr %g0, %l1, %hintp
1617 done
1618 siam 0x5
1619 fbuge,pt %fcc2, loop_82
1620 movcs %icc, 0x1CF, %g1
1621loop_81:
1622 nop
1623 setx loop_83, %l0, %l1
1624 wrpr 0x1, %tl
1625 wrpr %l1, %tpc
1626 add %l1, 0x4, %l1
1627 wrpr %l1, %tnpc
1628 setx 0x034100001405, %l0, %l1
1629 wrpr %l1, %tstate
1630 wrhpr 0x4, %htstate
1631 retry
1632 siam 0x7
1633loop_82:
1634 nop
1635 set 0x20, %i1
1636 ldd [%l7 + %i1], %g2
1637 te %icc, 0x2
1638loop_83:
1639 siam 0x3
1640 siam 0x1
1641 wr %g0, 0x04, %asi
1642 ldsba [%l7 + 0x26] %asi, %l0
1643 movrlez %l5, 0x26F, %i0
1644 edge16n %o7, %l2, %g6
1645 siam 0x1
1646 tsubcctv %i7, 0x07C1, %i4
1647 tcc %xcc, 0x7
1648 movvc %xcc, 0x072, %i3
1649 siam 0x6
1650 movge %fcc2, %l4, %o2
1651 andcc %o5, %l3, %o1
1652 siam 0x0
1653 siam 0x2
1654 siam 0x4
1655 siam 0x0
1656 nop
1657 set 0x08, %o2
1658 stx %i6, [%l7 + %o2]
1659 nop
1660 setx loop_84, %l0, %l1
1661 jmpl %l1, %i1
1662 movcc %xcc, 0x2E9, %o4
1663 nop
1664 set 0x1E, %l2
1665 lduh [%l7 + %l2], %g7
1666 movlg %fcc2, %g4, %l1
1667loop_84:
1668 edge8l %o3, %l6, %o0
1669 alignaddrl %i5, %g5, %o6
1670 movge %xcc, 0x68A, %g2
1671 sethi 0x1017, %i2
1672 set 0x38, %l5
1673 stda %g0, [%l7 + %l5] 0x2f
1674 membar #Sync
1675 siam 0x5
1676 nop
1677 setx 0x15E1, %l0, %g3
1678 udivx %l0, %g3, %l5
1679 array16 %o7, %l2, %i0
1680 tsubcc %g6, 0x1870, %i7
1681 tn %xcc, 0x2
1682 siam 0x4
1683 ldx [%l7 + 0x20], %i3
1684 mova %icc, %i4, %l4
1685 edge16ln %o2, %l3, %o5
1686 siam 0x2
1687 movge %fcc1, 0x735, %i6
1688 siam 0x2
1689 nop
1690 set 0x68, %i2
1691 stx %fsr, [%l7 + %i2]
1692 movn %icc, 0x60E, %i1
1693 siam 0x2
1694 siam 0x6
1695 wr %g0, 0x04, %asi
1696 lduba [%l7 + 0x6A] %asi, %o1
1697 srlx %o4, %g7, %g4
1698 addcc %o3, %l1, %o0
1699 xor %i5, 0x01D9, %l6
1700 siam 0x2
1701 nop
1702 set 0x5C, %o6
1703 ldstub [%l7 + %o6], %g5
1704 movug %fcc0, 0x331, %g2
1705 siam 0x1
1706 edge16 %i2, %g1, %o6
1707 andncc %l0, %g3, %o7
1708 edge16 %l2, %i0, %g6
1709 siam 0x5
1710 siam 0x3
1711 bvs,a,pn %xcc, loop_85
1712 siam 0x4
1713 movre %l5, %i7, %i3
1714 siam 0x6
1715loop_85:
1716 movrgez %l4, %i4, %o2
1717 siam 0x1
1718 siam 0x3
1719 siam 0x7
1720 sethi 0x0E06, %o5
1721 std %f0, [%l7 + 0x70]
1722 tpos %xcc, 0x0
1723 movle %icc, %l3, %i1
1724 siam 0x6
1725 siam 0x5
1726 movleu %icc, %i6, %o1
1727 bgu,a,pt %icc, loop_86
1728 siam 0x1
1729 edge8 %g7, %o4, %o3
1730 movge %fcc1, 0x34A, %l1
1731loop_86:
1732 siam 0x2
1733 siam 0x6
1734 fbul,a %fcc0, loop_87
1735 siam 0x1
1736 siam 0x1
1737 siam 0x5
1738loop_87:
1739 movre %o0, 0x159, %i5
1740 siam 0x3
1741 nop
1742 setx 0x0407, %l0, %g5
1743 udivx %g4, %g5, %g2
1744 siam 0x2
1745 siam 0x0
1746 subccc %l6, %g1, %i2
1747 sdivx %l0, 0x172D, %g3
1748 xnor %o7, %o6, %l2
1749 tvs %xcc, 0x3
1750 siam 0x4
1751 smulcc %i0, 0x1894, %l5
1752 sllx %i7, %i3, %l4
1753 tvc %xcc, 0x0
1754 umulcc %g6, 0x113F, %i4
1755 siam 0x6
1756 siam 0x2
1757 tvc %icc, 0x0
1758 movle %xcc, %o2, %l3
1759 orncc %o5, 0x1315, %i1
1760 siam 0x3
1761 mulx %o1, %i6, %g7
1762 siam 0x7
1763 siam 0x5
1764 tcc %xcc, 0x5
1765 siam 0x6
1766 siam 0x7
1767 movcs %xcc, %o4, %o3
1768 bcc %xcc, loop_88
1769 bne,pt %xcc, loop_89
1770 siam 0x6
1771 siam 0x1
1772loop_88:
1773 alignaddrl %o0, %l1, %g4
1774loop_89:
1775 movl %xcc, 0x3CF, %g5
1776 siam 0x6
1777 set 0x40, %g4
1778 swapa [%l7 + %g4] 0x81, %g2
1779 addc %l6, 0x15B6, %g1
1780 brz,pn %i5, loop_90
1781 siam 0x3
1782 andncc %l0, %i2, %g3
1783 sub %o7, %o6, %i0
1784loop_90:
1785 edge32ln %l2, %l5, %i3
1786 edge32n %l4, %g6, %i7
1787 siam 0x2
1788 siam 0x6
1789 movvc %icc, 0x33D, %o2
1790 siam 0x6
1791 saved
1792 rdpr %cwp, %g1
1793 rdpr %cansave, %g2
1794 rdpr %canrestore, %g3
1795 rdpr %cleanwin, %g4
1796 rdpr %otherwin, %g5
1797 rdpr %wstate, %g6
1798 siam 0x1
1799 tcc %icc, 0x2
1800 siam 0x3
1801 smulcc %i4, 0x0B8C, %o5
1802 siam 0x7
1803 siam 0x3
1804 subc %l3, 0x141D, %o1
1805 siam 0x1
1806 siam 0x7
1807 nop
1808 set 0x40, %i0
1809 std %i6, [%l7 + %i0]
1810 siam 0x3
1811 siam 0x0
1812 nop
1813 setx 0x0BE6, %l0, %i1
1814 udiv %g7, %i1, %o3
1815 siam 0x0
1816 sub %o4, 0x03F3, %l1
1817 flushw
1818 xnor %o0, %g4, %g2
1819 siam 0x1
1820 fbge,a %fcc3, loop_91
1821 nop
1822 setx 0x1E29CBB6, %l0, %l6
1823 st %l6, [%l7 + 0x28]
1824 ld [%l7 + 0x28], %fsr
1825 movg %xcc, %g5, %g1
1826 siam 0x0
1827loop_91:
1828 movvs %icc, 0x753, %i5
1829 siam 0x3
1830 siam 0x1
1831 te %xcc, 0x0
1832 siam 0x3
1833 siam 0x1
1834 tpos %icc, 0x6
1835 edge16n %l6, %l0, %i2
1836 siam 0x6
1837 siam 0x4
1838 siam 0x2
1839 EXIT_GOOD
1840
1841
1842
1843!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1844!
1845! Stats for Thread 4:
1846!
1847! Type l : 13
1848! Type x : 4
1849! Type cti : 14
1850! Type f : 80
1851! Type i : 89
1852!
1853!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1854
1855!
1856! Thread 5 Start
1857!
1858main_t5:
1859 mov %l7, %g1
1860 !# Set %cwp for 8 windows
1861 !# This threads memory space into each %l7
1862 wrpr %g0, 0x7, %cwp
1863 mov %g1, %l7
1864 wrpr %g0, 0x6, %cwp
1865 mov %g1, %l7
1866 wrpr %g0, 0x5, %cwp
1867 mov %g1, %l7
1868 wrpr %g0, 0x4, %cwp
1869 mov %g1, %l7
1870 wrpr %g0, 0x3, %cwp
1871 mov %g1, %l7
1872 wrpr %g0, 0x2, %cwp
1873 mov %g1, %l7
1874 wrpr %g0, 0x1, %cwp
1875 mov %g1, %l7
1876 wrpr %g0, 0x0, %cwp
1877 mov %g1, %l7
1878
1879 !# Set %fsr
1880 setx 0x0000000000000000, %l0, %l6 !# no post process
1881 stx %l6, [%l7 + 0x0] !# no post process
1882 ldx [%l7 + 0x0], %fsr !# no post process
1883
1884 !# Initialize registers ..
1885
1886 !# Global registers
1887 set 0xD, %g1
1888 set 0xF, %g2
1889 set 0xC, %g3
1890 set 0xC, %g4
1891 set 0x4, %g5
1892 set 0x7, %g6
1893 set 0x8, %g7
1894 !# Input registers
1895 set -0x2, %i0
1896 set -0x8, %i1
1897 set -0x2, %i2
1898 set -0x4, %i3
1899 set -0x3, %i4
1900 set -0x2, %i5
1901 set -0xB, %i6
1902 set -0xC, %i7
1903 !# Local registers
1904 set 0x02A4B6C0, %l0
1905 set 0x30F1F9C4, %l1
1906 set 0x585ADDFA, %l2
1907 set 0x19322758, %l3
1908 set 0x4823D7C1, %l4
1909 set 0x77780BFD, %l5
1910 set 0x61D40055, %l6
1911 !# Output registers
1912 set 0x1146, %o0
1913 set 0x118A, %o1
1914 set 0x020E, %o2
1915 set 0x1F13, %o3
1916 set -0x1CDA, %o4
1917 set -0x11ED, %o5
1918 set -0x1C8D, %o6
1919 set -0x1E0E, %o7
1920 !# Float registers
1921 INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
1922 INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
1923 INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
1924 INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
1925 INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
1926 INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
1927 INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
1928 INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
1929 INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
1930 INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
1931 INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
1932 INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
1933 INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
1934 INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
1935 INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
1936 INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
1937
1938 !# Execute Main Diag ..
1939
1940 edge32n %o7, %o6, %i0
1941 siam 0x1
1942 alignaddr %l2, %l5, %i3
1943 add %l7, 0x30, %l6
1944 wr %g0, 0x81, %asi
1945 ldxa [%l6] %asi, %l4
1946 casxa [%l6] 0x81, %l4, %g6
1947 siam 0x5
1948 and %g3, %o2, %i7
1949 siam 0x7
1950 fbl,a %fcc1, loop_92
1951 sra %o5, 0x09, %l3
1952 tcc %xcc, 0x1
1953 edge8n %i4, %i6, %g7
1954loop_92:
1955 siam 0x6
1956 siam 0x0
1957 siam 0x4
1958 movl %icc, %o1, %i1
1959 siam 0x7
1960 fbule,a,pn %fcc0, loop_93
1961 tsubcc %o4, 0x0EFC, %o3
1962 fbuge,pn %fcc0, loop_94
1963 siam 0x2
1964loop_93:
1965 edge32l %o0, %g4, %g2
1966 sdivcc %l1, 0x1F7D, %g5
1967loop_94:
1968 ldsh [%l7 + 0x24], %i5
1969 siam 0x4
1970 popc 0x1EAA, %l6
1971 add %l0, 0x0675, %i2
1972 sir 0x18D3
1973 xorcc %g1, 0x0129, %o6
1974 tg %icc, 0x2
1975 siam 0x5
1976 array16 %i0, %l2, %o7
1977 siam 0x6
1978 srl %i3, 0x07, %l4
1979 siam 0x0
1980 siam 0x4
1981 movrgz %l5, 0x1CA, %g6
1982 movl %icc, %o2, %g3
1983 addc %o5, 0x0BE2, %i7
1984 siam 0x6
1985 siam 0x1
1986 siam 0x0
1987 edge8 %i4, %i6, %l3
1988 siam 0x0
1989 be,a %icc, loop_95
1990 siam 0x0
1991 edge16l %o1, %g7, %o4
1992 ta %icc, 0x2
1993loop_95:
1994 sdiv %o3, 0x01F1, %o0
1995 siam 0x2
1996 siam 0x1
1997 ta %icc, 0x6
1998 popc %i1, %g2
1999 edge8l %l1, %g5, %i5
2000 array32 %l6, %l0, %i2
2001 siam 0x6
2002 set 0x74, %o7
2003 stwa %g1, [%l7 + %o7] 0xea
2004 membar #Sync
2005 movgu %icc, %g4, %i0
2006 siam 0x5
2007 movcc %icc, 0x5AF, %o6
2008 siam 0x1
2009 siam 0x6
2010 tcc %xcc, 0x3
2011 sir 0x073C
2012 siam 0x7
2013 bgu,pt %xcc, loop_96
2014 ld [%l7 + 0x58], %f30
2015 siam 0x0
2016 tle %xcc, 0x4
2017loop_96:
2018 siam 0x2
2019 edge32n %l2, %o7, %i3
2020 siam 0x2
2021 siam 0x4
2022 sll %l4, %l5, %o2
2023 siam 0x2
2024 siam 0x7
2025 siam 0x1
2026 siam 0x0
2027 or %g6, %o5, %g3
2028 siam 0x4
2029 siam 0x3
2030 siam 0x2
2031 siam 0x2
2032 siam 0x5
2033 alignaddrl %i7, %i6, %i4
2034 set 0x58, %g6
2035 prefetcha [%l7 + %g6] 0x80, 2
2036 alignaddr %g7, %o4, %o3
2037 saved
2038 rdpr %cwp, %g1
2039 rdpr %cansave, %g2
2040 rdpr %canrestore, %g3
2041 rdpr %cleanwin, %g4
2042 rdpr %otherwin, %g5
2043 rdpr %wstate, %g6
2044 siam 0x7
2045 nop
2046 setx 0x18FB, %l0, %i1
2047 sdivcc %l3, %i1, %o0
2048 siam 0x3
2049 fbne,a,pt %fcc2, loop_97
2050 bmask %l1, %g2, %g5
2051 tsubcc %i5, %l6, %l0
2052 siam 0x6
2053loop_97:
2054 mova %icc, 0x141, %g1
2055 siam 0x5
2056 edge16 %i2, %g4, %i0
2057 nop
2058 setx 0x05CA, %l0, %o7
2059 sdivcc %o6, %o7, %l2
2060 fbne,a %fcc0, loop_98
2061 siam 0x7
2062 bneg,pt %xcc, loop_99
2063 srlx %l4, %l5, %o2
2064loop_98:
2065 siam 0x6
2066 siam 0x1
2067loop_99:
2068 siam 0x3
2069 siam 0x5
2070 bge %xcc, loop_100
2071 siam 0x6
2072 wr %g0, 0x04, %asi
2073 swapa [%l7 + 0x78] %asi, %g6
2074loop_100:
2075 siam 0x4
2076 add %l7, 0x14, %l6
2077 wr %g0, 0x18, %asi
2078 casa [%l6] 0x18, %o5, %g3
2079 fbl,a %fcc1, loop_101
2080 siam 0x2
2081 edge32ln %i7, %i6, %i4
2082 fbuge,pt %fcc2, loop_102
2083loop_101:
2084 bpos,a,pn %xcc, loop_103
2085 tpos %icc, 0x5
2086 subcc %i3, %g7, %o1
2087loop_102:
2088 siam 0x1
2089loop_103:
2090 movrne %o4, 0x111, %l3
2091 ldx [%l7 + 0x68], %i1
2092 fbul %fcc2, loop_104
2093 array32 %o0, %l1, %g2
2094 fbule %fcc0, loop_105
2095 nop
2096 set 0x7C, %l4
2097 lduw [%l7 + %l4], %o3
2098loop_104:
2099 array16 %i5, %g5, %l0
2100 ld [%l7 + 0x68], %f24
2101loop_105:
2102 brlez,a %l6, loop_106
2103 mulscc %g1, 0x1AA4, %i2
2104 siam 0x2
2105 move %icc, 0x79F, %i0
2106loop_106:
2107 siam 0x7
2108 tsubcctv %g4, %o6, %l2
2109 tg %xcc, 0x6
2110 siam 0x0
2111 subcc %o7, 0x072A, %l5
2112 movo %fcc2, 0x471, %o2
2113 siam 0x5
2114 sethi 0x107D, %l4
2115 array8 %o5, %g6, %g3
2116 siam 0x3
2117 siam 0x2
2118 movre %i7, %i4, %i6
2119 srl %g7, %i3, %o1
2120 xorcc %o4, %l3, %i1
2121 siam 0x3
2122 siam 0x5
2123 fbn,a,pt %fcc1, loop_107
2124 nop
2125 setx loop_108, %l0, %l1
2126 wrpr 0x1, %tl
2127 wrpr %l1, %tnpc
2128 setx 0x001100001407, %l0, %l1
2129 wrpr %l1, %tstate
2130 wrhpr 0x4, %htstate
2131 rdpr %tt, %l1
2132 wrpr %g0, %l1, %tt
2133 rdpr %pstate, %l1
2134 wrpr %g0, %l1, %pstate
2135 rdpr %tl, %l1
2136 wrpr %g0, %l1, %tl
2137 rdpr %tpc, %l1
2138 wrpr %g0, %l1, %tpc
2139 rdpr %tnpc, %l1
2140 wrpr %g0, %l1, %tnpc
2141 rdpr %tstate, %l1
2142 wrpr %g0, %l1, %tstate
2143 rdpr %tba, %l1
2144 wrpr %g0, %l1, %tba
2145 rdpr %tba, %l1
2146 wrpr %g0, %l1, %tba
2147 rdhpr %hpstate, %l1
2148 wrhpr %g0, %l1, %hpstate
2149 rdhpr %htstate, %l1
2150 wrhpr %g0, %l1, %htstate
2151 rdhpr %hintp, %l1
2152 wrhpr %g0, %l1, %hintp
2153 done
2154 udiv %o0, 0x0C49, %g2
2155 edge8n %o3, %l1, %g5
2156loop_107:
2157 edge32ln %l0, %i5, %l6
2158loop_108:
2159 bge,pt %icc, loop_109
2160 siam 0x6
2161 siam 0x0
2162 siam 0x2
2163loop_109:
2164 srax %g1, %i0, %i2
2165 wr %g0, 0x89, %asi
2166 ldsha [%l7 + 0x64] %asi, %o6
2167 siam 0x3
2168 mova %icc, %g4, %l2
2169 stx %l5, [%l7 + 0x68]
2170 smulcc %o2, 0x1844, %o7
2171 movge %fcc2, 0x50B, %l4
2172 siam 0x1
2173 add %l7, 0x50, %l6
2174 wr %g0, 0x04, %asi
2175 casxa [%l6] 0x04, %o5, %g6
2176 lduw [%l7 + 0x2C], %i7
2177 alignaddrl %g3, %i6, %i4
2178 srax %g7, %i3, %o4
2179 siam 0x5
2180 siam 0x4
2181 tleu %xcc, 0x0
2182 or %o1, 0x04F6, %l3
2183 movgu %icc, 0x158, %i1
2184 set 0x58, %i6
2185 stwa %o0, [%l7 + %i6] 0x80
2186 edge16 %o3, %l1, %g5
2187 bleu,a,pn %icc, loop_110
2188 movrgz %g2, %i5, %l6
2189 sth %l0, [%l7 + 0x70]
2190 siam 0x5
2191loop_110:
2192 siam 0x6
2193 edge8ln %g1, %i0, %i2
2194 fbe,a %fcc2, loop_111
2195 movrgz %o6, %l2, %g4
2196 siam 0x1
2197 edge16n %o2, %l5, %o7
2198loop_111:
2199 siam 0x1
2200 edge16n %l4, %g6, %i7
2201 movvs %icc, 0x493, %o5
2202 and %i6, 0x0B1C, %g3
2203 siam 0x4
2204 movuge %fcc0, 0x231, %i4
2205 fbl,pn %fcc2, loop_112
2206loop_112:
2207 nop
2208
2209 EXIT_GOOD
2210
2211
2212
2213!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2214!
2215! Stats for Thread 5:
2216!
2217! Type l : 16
2218! Type cti : 21
2219! Type x : 8
2220! Type f : 71
2221! Type i : 84
2222!
2223!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2224
2225!
2226! Thread 6 Start
2227!
2228main_t6:
2229 mov %l7, %g1
2230 !# Set %cwp for 8 windows
2231 !# This threads memory space into each %l7
2232 wrpr %g0, 0x7, %cwp
2233 mov %g1, %l7
2234 wrpr %g0, 0x6, %cwp
2235 mov %g1, %l7
2236 wrpr %g0, 0x5, %cwp
2237 mov %g1, %l7
2238 wrpr %g0, 0x4, %cwp
2239 mov %g1, %l7
2240 wrpr %g0, 0x3, %cwp
2241 mov %g1, %l7
2242 wrpr %g0, 0x2, %cwp
2243 mov %g1, %l7
2244 wrpr %g0, 0x1, %cwp
2245 mov %g1, %l7
2246 wrpr %g0, 0x0, %cwp
2247 mov %g1, %l7
2248
2249 !# Set %fsr
2250 setx 0x0000000000000000, %l0, %l6 !# no post process
2251 stx %l6, [%l7 + 0x0] !# no post process
2252 ldx [%l7 + 0x0], %fsr !# no post process
2253
2254 !# Initialize registers ..
2255
2256 !# Global registers
2257 set 0x2, %g1
2258 set 0x3, %g2
2259 set 0x0, %g3
2260 set 0x0, %g4
2261 set 0x4, %g5
2262 set 0x7, %g6
2263 set 0xF, %g7
2264 !# Input registers
2265 set -0xB, %i0
2266 set -0xA, %i1
2267 set -0x1, %i2
2268 set -0x5, %i3
2269 set -0x5, %i4
2270 set -0xB, %i5
2271 set -0x5, %i6
2272 set -0xF, %i7
2273 !# Local registers
2274 set 0x3E86528A, %l0
2275 set 0x502BDE1E, %l1
2276 set 0x05082E98, %l2
2277 set 0x6E5FB707, %l3
2278 set 0x7658068E, %l4
2279 set 0x2C6B47C6, %l5
2280 set 0x423AADD5, %l6
2281 !# Output registers
2282 set 0x0AA5, %o0
2283 set 0x1131, %o1
2284 set 0x0152, %o2
2285 set 0x1E4A, %o3
2286 set 0x1D9F, %o4
2287 set -0x0CA7, %o5
2288 set -0x080A, %o6
2289 set -0x1F4F, %o7
2290 !# Float registers
2291 INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
2292 INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
2293 INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
2294 INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
2295 INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
2296 INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
2297 INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
2298 INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
2299 INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
2300 INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
2301 INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
2302 INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
2303 INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
2304 INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
2305 INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
2306 INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
2307
2308 !# Execute Main Diag ..
2309
2310 siam 0x2
2311 siam 0x6
2312 movo %fcc0, %g7, %i3
2313 movleu %icc, %o4, %o1
2314 set 0x40, %g3
2315 ldda [%l7 + %g3] 0x27, %l2
2316 fbo,pn %fcc3, loop_113
2317 fbge,a %fcc1, loop_114
2318 siam 0x4
2319 edge32ln %i1, %o3, %o0
2320loop_113:
2321 nop
2322 set 0x7C, %o3
2323 stwa %l1, [%l7 + %o3] 0xe3
2324 membar #Sync
2325loop_114:
2326 siam 0x4
2327 subccc %g2, 0x1AD9, %i5
2328 st %f2, [%l7 + 0x54]
2329 addccc %l6, 0x0BEC, %g5
2330 bn,a %xcc, loop_115
2331 siam 0x5
2332 siam 0x0
2333 siam 0x1
2334loop_115:
2335 bl,pt %icc, loop_116
2336 bcc,a,pn %icc, loop_117
2337 siam 0x1
2338 bpos %xcc, loop_118
2339loop_116:
2340 tvs %xcc, 0x7
2341loop_117:
2342 nop
2343 set 0x70, %g1
2344 ldda [%l7 + %g1] 0x19, %l0
2345loop_118:
2346 udiv %g1, 0x1995, %i0
2347 movue %fcc0, %i2, %o6
2348 movule %fcc0, %l2, %o2
2349 siam 0x5
2350 siam 0x2
2351 sra %l5, %o7, %g4
2352 tg %icc, 0x7
2353 movn %xcc, 0x120, %l4
2354 siam 0x1
2355 addccc %g6, %i7, %i6
2356 alignaddrl %o5, %i4, %g3
2357 siam 0x1
2358 siam 0x5
2359 tl %icc, 0x6
2360 movul %fcc2, 0x45A, %g7
2361 nop
2362 set 0x78, %g7
2363 ldsh [%l7 + %g7], %o4
2364 siam 0x5
2365 siam 0x1
2366 movvs %icc, 0x603, %o1
2367 umulcc %l3, %i3, %o3
2368 srl %o0, 0x15, %l1
2369 subc %i1, 0x02E0, %g2
2370 edge8l %l6, %i5, %l0
2371 siam 0x1
2372 siam 0x0
2373 orn %g5, 0x116C, %g1
2374 tle %xcc, 0x2
2375 siam 0x4
2376 fbul,pt %fcc1, loop_119
2377 be,a %icc, loop_120
2378 siam 0x3
2379 fbuge,pt %fcc3, loop_121
2380loop_119:
2381 ta %icc, 0x6
2382loop_120:
2383 edge16ln %i0, %i2, %l2
2384 siam 0x0
2385loop_121:
2386 siam 0x7
2387 flushw
2388 siam 0x3
2389 siam 0x6
2390 brlez,a %o6, loop_122
2391 movlg %fcc1, 0x0DE, %l5
2392 movrgez %o7, 0x193, %o2
2393 tleu %icc, 0x5
2394loop_122:
2395 siam 0x2
2396 mulscc %g4, 0x1AD5, %g6
2397 st %fsr, [%l7 + 0x64]
2398 srax %i7, %l4, %i6
2399 siam 0x5
2400 siam 0x1
2401 siam 0x3
2402 siam 0x2
2403 siam 0x4
2404 mova %icc, %o5, %i4
2405 tge %xcc, 0x5
2406 st %f24, [%l7 + 0x30]
2407 siam 0x4
2408 movrgez %g3, %g7, %o4
2409 siam 0x3
2410 tg %xcc, 0x1
2411 siam 0x0
2412 lduh [%l7 + 0x5A], %l3
2413 nop
2414 set 0x10, %i7
2415 ldsh [%l7 + %i7], %i3
2416 siam 0x3
2417 array32 %o3, %o0, %l1
2418 stbar
2419 movrlz %o1, 0x074, %i1
2420 tge %xcc, 0x7
2421 siam 0x7
2422 movule %fcc0, 0x418, %g2
2423 tsubcctv %l6, 0x0901, %i5
2424 edge8n %g5, %l0, %i0
2425 siam 0x1
2426 movne %fcc2, 0x640, %i2
2427 tneg %icc, 0x1
2428 mova %fcc3, 0x294, %g1
2429 std %f16, [%l7 + 0x08]
2430 fbg,pt %fcc1, loop_123
2431 movrlz %o6, 0x0AD, %l5
2432 xor %o7, 0x0457, %o2
2433 siam 0x7
2434loop_123:
2435 sra %l2, %g4, %i7
2436 wr %g0, 0x04, %asi
2437 stda %g6, [%l7 + 0x60] %asi
2438 siam 0x1
2439 siam 0x1
2440 siam 0x7
2441 ldx [%l7 + 0x78], %l4
2442 sll %o5, 0x13, %i6
2443 bl,pt %xcc, loop_124
2444 sethi 0x152A, %g3
2445 siam 0x5
2446 membar 0x73
2447loop_124:
2448 edge8n %i4, %g7, %o4
2449 umul %l3, %o3, %o0
2450 saved
2451 rdpr %cwp, %g1
2452 rdpr %cansave, %g2
2453 rdpr %canrestore, %g3
2454 rdpr %cleanwin, %g4
2455 rdpr %otherwin, %g5
2456 rdpr %wstate, %g6
2457 siam 0x3
2458 siam 0x5
2459 siam 0x1
2460 siam 0x5
2461 movrlz %l1, 0x3A9, %o1
2462 brgez,a %i3, loop_125
2463 siam 0x7
2464 movvc %xcc, 0x0B5, %g2
2465 wr %g0, 0x20, %asi
2466 stxa %i1, [%g0 + 0x38] %asi
2467loop_125:
2468 siam 0x0
2469 siam 0x6
2470 movleu %icc, %i5, %g5
2471 brgez,pt %l6, loop_126
2472 siam 0x0
2473 movcs %icc, %l0, %i0
2474 sub %g1, %i2, %o6
2475loop_126:
2476 siam 0x6
2477 siam 0x4
2478 nop
2479 set 0x10, %i4
2480 ldx [%l7 + %i4], %l5
2481 siam 0x3
2482 siam 0x2
2483 siam 0x7
2484 addc %o2, %l2, %o7
2485 siam 0x6
2486 edge32 %i7, %g4, %l4
2487 fbge,pt %fcc2, loop_127
2488 siam 0x3
2489 movlg %fcc3, 0x767, %o5
2490 subc %g6, %g3, %i6
2491loop_127:
2492 array32 %g7, %o4, %l3
2493 siam 0x7
2494 edge8ln %o3, %i4, %o0
2495 tl %icc, 0x7
2496 bcc,pn %xcc, loop_128
2497 siam 0x2
2498 movrlz %l1, %i3, %g2
2499 srl %o1, %i1, %g5
2500loop_128:
2501 st %f1, [%l7 + 0x38]
2502 nop
2503 setx 0x0671, %l0, %l6
2504 sdivcc %i5, %l6, %i0
2505 andcc %l0, 0x0322, %i2
2506 siam 0x1
2507 siam 0x7
2508 siam 0x2
2509 srlx %o6, 0x0B, %l5
2510 set 0x58, %o4
2511 ldstuba [%l7 + %o4] 0x80, %o2
2512 tgu %icc, 0x7
2513 saved
2514 rdpr %cwp, %g1
2515 rdpr %cansave, %g2
2516 rdpr %canrestore, %g3
2517 rdpr %cleanwin, %g4
2518 rdpr %otherwin, %g5
2519 rdpr %wstate, %g6
2520 set 0x68, %o5
2521 stwa %g1, [%l7 + %o5] 0x2b
2522 membar #Sync
2523 siam 0x0
2524 smul %l2, 0x134C, %i7
2525 udivcc %g4, 0x1255, %l4
2526 fbn,a %fcc3, loop_129
2527 siam 0x3
2528 bmask %o7, %g6, %o5
2529 movleu %icc, %i6, %g7
2530loop_129:
2531 siam 0x3
2532 movvs %xcc, %o4, %l3
2533 tvs %icc, 0x0
2534 flushw
2535 siam 0x3
2536 wr %g0, 0x11, %asi
2537 stwa %o3, [%l7 + 0x6C] %asi
2538 siam 0x2
2539 bne,pn %icc, loop_130
2540 subc %i4, 0x1EFC, %g3
2541 siam 0x7
2542 siam 0x0
2543loop_130:
2544 addcc %l1, 0x0366, %i3
2545 movcc %xcc, 0x68D, %o0
2546 siam 0x4
2547 siam 0x5
2548 movl %xcc, 0x4C1, %o1
2549 siam 0x4
2550 andn %g2, 0x005F, %i1
2551 siam 0x3
2552 EXIT_GOOD
2553
2554
2555
2556!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2557!
2558! Stats for Thread 6:
2559!
2560! Type l : 19
2561! Type cti : 18
2562! Type x : 8
2563! Type f : 71
2564! Type i : 84
2565!
2566!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2567
2568!
2569! Thread 7 Start
2570!
2571main_t7:
2572 mov %l7, %g1
2573 !# Set %cwp for 8 windows
2574 !# This threads memory space into each %l7
2575 wrpr %g0, 0x7, %cwp
2576 mov %g1, %l7
2577 wrpr %g0, 0x6, %cwp
2578 mov %g1, %l7
2579 wrpr %g0, 0x5, %cwp
2580 mov %g1, %l7
2581 wrpr %g0, 0x4, %cwp
2582 mov %g1, %l7
2583 wrpr %g0, 0x3, %cwp
2584 mov %g1, %l7
2585 wrpr %g0, 0x2, %cwp
2586 mov %g1, %l7
2587 wrpr %g0, 0x1, %cwp
2588 mov %g1, %l7
2589 wrpr %g0, 0x0, %cwp
2590 mov %g1, %l7
2591
2592 !# Set %fsr
2593 setx 0x0000000000000000, %l0, %l6 !# no post process
2594 stx %l6, [%l7 + 0x0] !# no post process
2595 ldx [%l7 + 0x0], %fsr !# no post process
2596
2597 !# Initialize registers ..
2598
2599 !# Global registers
2600 set 0x1, %g1
2601 set 0xD, %g2
2602 set 0x7, %g3
2603 set 0xD, %g4
2604 set 0x8, %g5
2605 set 0x0, %g6
2606 set 0x4, %g7
2607 !# Input registers
2608 set -0x7, %i0
2609 set -0x4, %i1
2610 set -0xA, %i2
2611 set -0x1, %i3
2612 set -0x8, %i4
2613 set -0xF, %i5
2614 set -0xB, %i6
2615 set -0x2, %i7
2616 !# Local registers
2617 set 0x7B2FE57F, %l0
2618 set 0x0CF95C1B, %l1
2619 set 0x51EE7B71, %l2
2620 set 0x72C4168E, %l3
2621 set 0x1AF307F1, %l4
2622 set 0x71D6C9FD, %l5
2623 set 0x353A638C, %l6
2624 !# Output registers
2625 set 0x13FC, %o0
2626 set -0x0A2A, %o1
2627 set 0x077B, %o2
2628 set 0x0CB9, %o3
2629 set -0x08C9, %o4
2630 set -0x1E86, %o5
2631 set 0x1F31, %o6
2632 set -0x179B, %o7
2633 !# Float registers
2634 INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
2635 INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
2636 INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
2637 INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
2638 INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
2639 INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
2640 INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
2641 INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
2642 INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
2643 INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
2644 INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
2645 INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
2646 INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
2647 INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
2648 INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
2649 INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
2650
2651 !# Execute Main Diag ..
2652
2653 siam 0x3
2654 siam 0x0
2655 array8 %g5, %l6, %i5
2656 siam 0x6
2657 siam 0x4
2658 subc %l0, %i2, %o6
2659 siam 0x4
2660 siam 0x3
2661 siam 0x0
2662 siam 0x6
2663 udivcc %l5, 0x00A3, %o2
2664 siam 0x2
2665 siam 0x1
2666 bpos,pt %icc, loop_131
2667 movcc %icc, %i0, %l2
2668 orcc %i7, 0x1077, %g4
2669 edge16 %g1, %l4, %g6
2670loop_131:
2671 nop
2672 setx 0x00F2, %l0, %i6
2673 udivcc %o7, %i6, %g7
2674 tsubcctv %o4, 0x1C35, %o5
2675 bl,pn %icc, loop_132
2676 siam 0x1
2677 orn %o3, %l3, %g3
2678 siam 0x6
2679loop_132:
2680 siam 0x7
2681 siam 0x5
2682 movgu %xcc, %l1, %i3
2683 siam 0x6
2684 siam 0x7
2685 nop
2686 setx loop_133, %l0, %l1
2687 wrpr 0x1, %tl
2688 wrpr %l1, %tpc
2689 add %l1, 0x4, %l1
2690 wrpr %l1, %tnpc
2691 setx 0x001400001403, %l0, %l1
2692 wrpr %l1, %tstate
2693 wrhpr 0x4, %htstate
2694 retry
2695 siam 0x7
2696 ba,a %xcc, loop_134
2697 movl %fcc1, %i4, %o0
2698loop_133:
2699 siam 0x3
2700 fble,pt %fcc1, loop_135
2701loop_134:
2702 siam 0x6
2703 stw %g2, [%l7 + 0x58]
2704 saved
2705 rdpr %cwp, %g1
2706 rdpr %cansave, %g2
2707 rdpr %canrestore, %g3
2708 rdpr %cleanwin, %g4
2709 rdpr %otherwin, %g5
2710 rdpr %wstate, %g6
2711loop_135:
2712 bgu %xcc, loop_136
2713 xorcc %o1, 0x04F4, %g5
2714 movpos %icc, 0x25C, %i1
2715 set 0x28, %o0
2716 prefetcha [%l7 + %o0] 0x18, 1
2717loop_136:
2718 alignaddrl %l0, %i2, %l6
2719 siam 0x0
2720 siam 0x2
2721 nop
2722 setx 0x1E13, %l0, %o2
2723 udivcc %l5, %o2, %o6
2724 movvc %icc, 0x332, %i0
2725 siam 0x0
2726 fbuge,pt %fcc3, loop_137
2727 popc 0x1F25, %l2
2728 tvs %xcc, 0x4
2729 xnorcc %g4, %g1, %i7
2730loop_137:
2731 siam 0x3
2732 siam 0x1
2733 siam 0x6
2734 siam 0x3
2735 brlz,a,pt %l4, loop_138
2736 siam 0x0
2737 siam 0x1
2738 siam 0x2
2739loop_138:
2740 taddcctv %g6, 0x082B, %o7
2741 siam 0x3
2742 siam 0x4
2743 siam 0x6
2744 edge8ln %i6, %g7, %o5
2745 siam 0x7
2746 siam 0x6
2747 siam 0x4
2748 sethi 0x17A5, %o4
2749 te %xcc, 0x0
2750 addccc %o3, %g3, %l3
2751 siam 0x5
2752 siam 0x4
2753 siam 0x2
2754 movrlz %i3, 0x140, %i4
2755 siam 0x3
2756 xnor %o0, %g2, %l1
2757 subcc %g5, 0x002D, %o1
2758 ld [%l7 + 0x40], %f29
2759 siam 0x6
2760 tsubcc %i1, %l0, %i5
2761 nop
2762 setx loop_139, %l0, %l1
2763 wrpr 0x1, %tl
2764 wrpr %l1, %tpc
2765 add %l1, 0x4, %l1
2766 wrpr %l1, %tnpc
2767 setx 0x031100001405, %l0, %l1
2768 wrpr %l1, %tstate
2769 wrhpr 0x4, %htstate
2770 retry
2771 movre %l6, %l5, %i2
2772 siam 0x5
2773 tsubcc %o2, 0x13F7, %o6
2774loop_139:
2775 andn %l2, 0x0C2B, %i0
2776 fble,a,pt %fcc1, loop_140
2777 siam 0x0
2778 nop
2779 setx loop_141, %l0, %l1
2780 jmpl %l1, %g4
2781 lduw [%l7 + 0x7C], %g1
2782loop_140:
2783 brlz,a %l4, loop_142
2784 siam 0x7
2785loop_141:
2786 siam 0x5
2787 edge16n %i7, %o7, %g6
2788loop_142:
2789 movre %i6, %o5, %g7
2790 movne %icc, %o4, %g3
2791 nop
2792 set 0x2C, %o1
2793 swap [%l7 + %o1], %o3
2794 siam 0x3
2795 nop
2796 setx loop_143, %l0, %l1
2797 jmpl %l1, %i3
2798 siam 0x7
2799 edge32ln %i4, %l3, %g2
2800 taddcc %o0, %l1, %o1
2801loop_143:
2802 siam 0x1
2803 xorcc %g5, %i1, %l0
2804 siam 0x3
2805 st %fsr, [%l7 + 0x14]
2806 edge32 %i5, %l6, %i2
2807 te %icc, 0x7
2808 movrne %o2, %o6, %l5
2809 mulscc %l2, %g4, %i0
2810 movpos %xcc, %l4, %g1
2811 siam 0x0
2812 nop
2813 setx 0x41B0B9AB, %l0, %l6
2814 st %l6, [%l7 + 0x54]
2815 ld [%l7 + 0x54], %fsr
2816 ld [%l7 + 0x4C], %f1
2817 set 0x10, %i3
2818 ldda [%l7 + %i3] 0x2e, %o6
2819 te %icc, 0x3
2820 bleu,a %icc, loop_144
2821 siam 0x5
2822 sllx %g6, %i6, %o5
2823 siam 0x2
2824loop_144:
2825 tvs %xcc, 0x2
2826 siam 0x5
2827 movpos %xcc, %i7, %g7
2828 tcc %xcc, 0x1
2829 alignaddr %g3, %o3, %i3
2830 std %i4, [%l7 + 0x28]
2831 ld [%l7 + 0x64], %f23
2832 brlz,a,pt %o4, loop_145
2833 and %l3, 0x11F4, %o0
2834 xnorcc %g2, 0x0B27, %l1
2835 movrlez %o1, %g5, %l0
2836loop_145:
2837 siam 0x0
2838 mova %xcc, 0x454, %i5
2839 edge8l %l6, %i2, %o2
2840 edge8 %i1, %l5, %l2
2841 add %g4, 0x0250, %o6
2842 nop
2843 setx 0x0D58, %l0, %g1
2844 udivx %i0, %g1, %o7
2845 tsubcctv %g6, %l4, %i6
2846 xnorcc %i7, %g7, %g3
2847 siam 0x1
2848 bleu %xcc, loop_146
2849 siam 0x1
2850 edge32n %o3, %o5, %i4
2851 nop
2852 setx 0x2E0AC738, %l0, %l6
2853 st %l6, [%l7 + 0x48]
2854 ld [%l7 + 0x48], %fsr
2855loop_146:
2856 tle %icc, 0x0
2857 array32 %o4, %i3, %l3
2858 alignaddrl %g2, %o0, %o1
2859 movrlz %l1, 0x399, %g5
2860 bvc,a,pn %icc, loop_147
2861 siam 0x2
2862 wr %g0, 0x26, %asi
2863 ldda [%l7 + 0x10] %asi, %i4
2864loop_147:
2865 be,a %xcc, loop_148
2866 movue %fcc0, 0x4E1, %l0
2867 fbge,a %fcc3, loop_149
2868 movleu %xcc, %l6, %o2
2869loop_148:
2870 sdivcc %i1, 0x0595, %l5
2871 siam 0x5
2872loop_149:
2873 umulcc %i2, 0x19D7, %l2
2874 orncc %o6, %i0, %g4
2875 movle %fcc1, 0x01E, %o7
2876 movvc %xcc, 0x316, %g1
2877 movpos %icc, %l4, %g6
2878 brlez %i6, loop_150
2879 movleu %xcc, 0x1DE, %g7
2880 siam 0x0
2881 siam 0x6
2882loop_150:
2883 siam 0x5
2884 siam 0x4
2885 brgez,a %g3, loop_151
2886 siam 0x0
2887 siam 0x4
2888 siam 0x7
2889loop_151:
2890 siam 0x6
2891 tvs %xcc, 0x2
2892 srax %o3, 0x1C, %i7
2893 siam 0x6
2894 brnz,pt %o5, loop_152
2895 movle %xcc, %i4, %o4
2896 siam 0x5
2897 addccc %i3, 0x1854, %g2
2898loop_152:
2899 fbule %fcc1, loop_153
2900 siam 0x4
2901 wr %g0, 0x89, %asi
2902 ldda [%l7 + 0x40] %asi, %f0
2903loop_153:
2904 andn %o0, 0x170C, %o1
2905 siam 0x7
2906 movre %l3, 0x075, %g5
2907 tneg %icc, 0x2
2908 siam 0x2
2909 tge %icc, 0x0
2910 movug %fcc0, 0x299, %l1
2911 tgu %icc, 0x6
2912 mova %xcc, 0x48B, %i5
2913 edge8 %l6, %l0, %o2
2914 movo %fcc0, %i1, %l5
2915 srax %l2, %i2, %o6
2916 tn %icc, 0x5
2917 bl,a %icc, loop_154
2918loop_154:
2919 nop
2920
2921 EXIT_GOOD
2922
2923
2924
2925!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2926!
2927! Stats for Thread 7:
2928!
2929! Type l : 14
2930! Type x : 4
2931! Type cti : 24
2932! Type f : 70
2933! Type i : 88
2934!
2935!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2936
2937
2938 EXIT_GOOD /* test finish */
2939
2940/************************************************************************
2941 Test case data start
2942 ************************************************************************/
2943.data
2944user_data_start:
2945scratch_area:
2946.word 0x9549A190
2947.word 0xA7F50A25
2948.word 0x139F6605
2949.word 0xFEDD69CF
2950.word 0x7437294E
2951.word 0x2FD2AA43
2952.word 0x83750DE4
2953.word 0x25BE83F3
2954.word 0x1811E0DE
2955.word 0xDC49C7DE
2956.word 0x9CC6E755
2957.word 0x51A17BBA
2958.word 0xAD1D0C52
2959.word 0x0B7F69E4
2960.word 0xF6E8B32C
2961.word 0x9323E262
2962.word 0xFB395369
2963.word 0xBD9D00A9
2964.word 0x69F6F298
2965.word 0x0A5EC3BD
2966.word 0x77C72659
2967.word 0x08CDECDD
2968.word 0x6E50B9F0
2969.word 0x981ED681
2970.word 0x87BC0742
2971.word 0x5B5B3C2C
2972.word 0xCB537FDD
2973.word 0x42AA77DC
2974.word 0x48FDE722
2975.word 0xC72C2223
2976.word 0x457332ED
2977.word 0x87F485AD
2978.word 0x8E0C8AEE
2979.word 0xD7EE5DB2
2980.word 0x3AF0FBE5
2981.word 0x7E3AD9A4
2982.word 0x37018EFE
2983.word 0xE2899ED9
2984.word 0x0B2CEC72
2985.word 0x99700961
2986.word 0xB3D0CEA7
2987.word 0x6C324F6D
2988.word 0x02BD9086
2989.word 0x6EF8AFE1
2990.word 0x6286DDFC
2991.word 0x7128EDA5
2992.word 0x66BCC183
2993.word 0x60A88FFE
2994.word 0x342607FD
2995.word 0x8957CF11
2996.word 0x3834451C
2997.word 0xACAE942E
2998.word 0xC8807BCB
2999.word 0x5C2CE788
3000.word 0xCD1874B6
3001.word 0xAE756617
3002.word 0x29539634
3003.word 0x8EFEA2D2
3004.word 0x5C166293
3005.word 0xD75F031C
3006.word 0xCB338818
3007.word 0x823C7006
3008.word 0xD29A690A
3009.word 0xF9495767
3010.end