* ========== Copyright Header Begin ==========================================
* OpenSPARC T2 Processor File: fgu_ieee_traps_01.s
* Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
* 4150 Network Circle, Santa Clara, California 95054, U.S.A.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
* For the avoidance of doubt, and except that if any non-GPL license
* choice is available it will apply instead, Sun elects to use only
* the General Public License version 2 (GPLv2) at this time for any
* software where a choice of GPL license versions is made
* available with the language indicating that GPLv2 or any later version
* may be used, or where a choice of which version of the GPL is applied is
* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
* CA 95054 USA or visit www.sun.com if you need additional information or
* ========== Copyright Header End ============================================
.ident "FOCUSCASE: focus.pm,v 1.1 2003/04/23 17:53:39 somePerson Exp somePerson $ spc_basic_isa3.pl FOCUS_SEED=1234"
.ident "Fri Nov 21 16:06:03 CST 2003"
.ident "Using Instruction Hash for Focus :$Id: fgu_ieee_traps_01.s,v 1.3 2007/07/27 21:45:31 drp Exp $"
/************************************************************************
************************************************************************/
! Get TID/DIAG DATA AREA. Separate memory for each thread.
setx DIAG_DATA_AREA, %g1, %g3
!# Set %cwp for 8 windows
!# This threads memory space into each %l7
setx 0x0000000000000000, %l0, %l6 !# no post process
stx %l6, [%l7 + 0x0] !# no post process
ldx [%l7 + 0x0], %fsr !# no post process
!# Initialize registers ..
INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
fmovduge %fcc0, %f22, %f8
fmovdule %fcc3, %f16, %f6
tsubcctv %l2, 0x0F3E, %o2
fmul8x16al %f26, %f27, %f26
fandnot1s %f27, %f30, %f31
setx 0xAE2C13008415BFFE, %l0, %l6
fmovdle %fcc3, %f20, %f22
fmovdpos %xcc, %f24, %f24
fmovsul %fcc3, %f29, %f27
fmovrsgez %i2, %f10, %f24
setx 0x034400001400, %l0, %l1
fmuld8ulx16 %f26, %f19, %f0
setx 0x12D6D997, %l0, %l6
setx 0x599E50F9, %l1, %l5
setx 0xBFAD5A87, %l0, %l6
setx 0xAC1549B0, %l1, %l5
fmovdule %fcc0, %f16, %f10
taddcctv %i2, 0x1FD0, %l6
setx 0xE235DA1EB135DE2B, %l0, %l6
fmovduge %fcc3, %f14, %f30
fmovslg %fcc2, %f13, %f17
fmul8x16au %f31, %f29, %f2
faligndata %f16, %f0, %f22
setx 0x303A8473, %l0, %l6
setx 0x0CF00ECA, %l1, %l5
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# Set %cwp for 8 windows
!# This threads memory space into each %l7
setx 0x0000000000000000, %l0, %l6 !# no post process
stx %l6, [%l7 + 0x0] !# no post process
ldx [%l7 + 0x0], %fsr !# no post process
!# Initialize registers ..
INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
sta %f18, [%l7 + %i1] 0x10
fmovsule %fcc0, %f19, %f14
ldswa [%l7 + 0x08] %asi, %o5
fmovsue %fcc1, %f11, %f20
ldswa [%l7 + %o5] 0x88, %i4
fandnot2s %f6, %f26, %f10
fmovduge %fcc1, %f26, %f20
fmul8sux16 %f20, %f0, %f4
stxa %i7, [%l7 + %g5] 0xeb
setx 0xF56FA45E8882697B, %l0, %l6
fmul8x16au %f8, %f11, %f8
ldstuba [%l7 + %g7] 0x18, %g1
fmul8x16al %f28, %f11, %f26
lduwa [%l7 + 0x6C] %asi, %o1
fmuld8ulx16 %f9, %f0, %f26
fandnot1 %f24, %f26, %f10
fornot2s %f19, %f11, %f12
fandnot1 %f24, %f24, %f18
setx 0x9D7B740F809BCD62, %l0, %l6
fmul8x16au %f3, %f11, %f14
fmovdul %fcc1, %f26, %f18
setx 0xF40D9C3E, %l0, %l6
setx 0x80BD1101, %l1, %l5
wrhpr %l0, 0xF86, %hsys_tick_cmpr
ldsha [%l7 + 0x58] %asi, %l6
wrhpr %l0, 0xE12, %hsys_tick_cmpr
setx 0xD137A5D9, %l0, %l6
setx 0x63411BF2, %l1, %l5
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# Set %cwp for 8 windows
!# This threads memory space into each %l7
setx 0x0000000000000000, %l0, %l6 !# no post process
stx %l6, [%l7 + 0x0] !# no post process
ldx [%l7 + 0x0], %fsr !# no post process
!# Initialize registers ..
INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
stda %g4, [%l7 + %g1] 0x80
fmovslg %fcc1, %f24, %f22
fmovsule %fcc1, %f12, %f26
ldstuba [%l7 + %o0] 0x11, %o0
fmovsue %fcc2, %f25, %f23
setx 0x011100001403, %l0, %l1
tsubcctv %i6, 0x08A1, %i1
fblg,a,pn %fcc2, loop_132
setx 0x1D81A94789A115B6, %l0, %l6
setx 0xFF3B7171, %l0, %l6
setx 0xF2BED02021284901, %l0, %l6
wr %l1, 0x1309, %clear_softint
setx 0x7D8AEE0B49662472, %l0, %l6
setx 0xFC03398C6DBF9BE2, %l1, %l5
wrhpr %l0, %g0, %hsys_tick_cmpr
setx 0x60E4AA7E, %l0, %l6
setx 0x44670F20, %l1, %l5
ldstuba [%l7 + %g6] 0x0c, %l6
fmuld8sux16 %f10, %f6, %f18
fmovdleu %icc, %f12, %f24
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# Set %cwp for 8 windows
!# This threads memory space into each %l7
setx 0x0000000000000000, %l0, %l6 !# no post process
stx %l6, [%l7 + 0x0] !# no post process
ldx [%l7 + 0x0], %fsr !# no post process
!# Initialize registers ..
INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
fmul8x16au %f29, %f2, %f14
fmul8sux16 %f28, %f4, %f16
fpadd16s %f14, %f27, %f22
setx 0x49C204D3, %l0, %l6
bshuffle %f18, %f20, %f24
fmul8ulx16 %f2, %f24, %f4
fmul8ulx16 %f4, %f18, %f20
fmovslg %fcc0, %f27, %f22
stxa %l3, [%l7 + %l0] 0xeb
fandnot1s %f19, %f24, %f20
fmovsle %fcc2, %f24, %f29
fmul8sux16 %f14, %f8, %f24
setx 0x88A799EF19084078, %l0, %l6
fmuld8sux16 %f29, %f19, %f2
lduwa [%l7 + %l5] 0x04, %i5
fmovdge %fcc1, %f16, %f10
fmul8sux16 %f8, %f26, %f10
setx 0x471DE354, %l0, %l6
setx 0xC5D6E191, %l1, %l5
setx 0x17148C3E, %l0, %l6
bshuffle %f18, %f16, %f28
fmul8ulx16 %f16, %f2, %f24
fandnot2s %f7, %f13, %f24
wr %g6, 0x091B, %clear_softint
casa [%l6] 0x10, %l6, %g4
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# Set %cwp for 8 windows
!# This threads memory space into each %l7
setx 0x0000000000000000, %l0, %l6 !# no post process
stx %l6, [%l7 + 0x0] !# no post process
ldx [%l7 + 0x0], %fsr !# no post process
!# Initialize registers ..
INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
lduba [%l7 + %o2] 0x04, %g3
ldsba [%l7 + %i4] 0x89, %i7
setx 0xC70ACBFF, %l0, %l6
setx 0x9F8130C1, %l1, %l5
fandnot2s %f29, %f2, %f25
taddcctv %l0, 0x1FB4, %i1
setx 0x39111DB8, %l0, %l6
setx 0xAD1CE153, %l1, %l5
fandnot2s %f21, %f24, %f2
fmovdlg %fcc0, %f24, %f22
fmul8x16al %f18, %f22, %f0
taddcctv %l0, 0x0C6D, %i1
setx 0xB23D8496, %l0, %l6
setx 0xD261B269, %l1, %l5
fmul8ulx16 %f22, %f10, %f28
fornot2s %f20, %f24, %f13
wrhpr %l0, %g0, %hsys_tick_cmpr
fmuld8sux16 %f26, %f31, %f14
fmul8sux16 %f14, %f10, %f24
rdhpr %hsys_tick_cmpr, %i2
wrhpr %l0, 0xF22, %hsys_tick_cmpr
setx 0xDB41D001A6D7EE84, %l0, %l6
setx 0xE9D7E199F28DF49A, %l1, %l5
fpsub32s %f25, %f23, %f30
fmovrslez %o5, %f30, %f29
setx 0x789240F42C387FB8, %l0, %l6
setx 0xFE08E0927C1625EC, %l1, %l5
ldxa [%g0 + %l4] 0x58, %o7
fmovdle %fcc2, %f12, %f22
fmovdue %fcc3, %f24, %f26
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# Set %cwp for 8 windows
!# This threads memory space into each %l7
setx 0x0000000000000000, %l0, %l6 !# no post process
stx %l6, [%l7 + 0x0] !# no post process
ldx [%l7 + 0x0], %fsr !# no post process
!# Initialize registers ..
INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
stha %g2, [%l7 + %i3] 0xe3
fmovsleu %icc, %f20, %f18
fmovspos %xcc, %f19, %f30
fornot1s %f20, %f17, %f12
setx 0x8CBB80AE, %l0, %l6
setx 0x6967DA14, %l1, %l5
setx 0xB3A1F2256A9EC5F9, %l0, %l6
setx 0xF732D3E784FF12CE, %l1, %l5
stda %f0, [%l7 + %l2] 0xc2
fble,a,pt %fcc2, loop_333
fmovdue %fcc0, %f18, %f28
fbuge,a,pn %fcc1, loop_341
ldda [%l7 + 0x40] %asi, %i6
lda [%l7 + %i7] 0x10, %f20
setx 0x319F6E81907CBF57, %l0, %l6
setx 0xB91941F9, %l1, %l5
setx 0x5A92BE22, %l0, %l6
fmovsleu %icc, %f16, %f20
fmovdle %fcc2, %f20, %f28
wrhpr %l0, %g0, %hsys_tick_cmpr
setx 0x066C3F2EF25A4A37, %l0, %l6
setx 0xF0456DF5AB044B72, %l1, %l5
ldstuba [%l7 + 0x29] %asi, %o1
setx 0xA6FBCF09, %l0, %l6
setx 0x9CCABD66, %l1, %l5
fmovsug %fcc2, %f10, %f25
fmul8sux16 %f22, %f10, %f28
wrhpr %l0, %g0, %hsys_tick_cmpr
setx 0xE4FD7695A7D46C5F, %l0, %l6
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# Set %cwp for 8 windows
!# This threads memory space into each %l7
setx 0x0000000000000000, %l0, %l6 !# no post process
stx %l6, [%l7 + 0x0] !# no post process
ldx [%l7 + 0x0], %fsr !# no post process
!# Initialize registers ..
INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
setx 0x584DEBB4, %l0, %l6
setx 0x7CCE3CCD, %l1, %l5
wr %o5, 0x172F, %sys_tick
faligndata %f24, %f16, %f28
tsubcctv %o6, 0x0901, %g5
rdhpr %hsys_tick_cmpr, %o4
wr %o0, %g6, %clear_softint
casa [%l6] 0x88, %l4, %i3
ldda [%l7 + 0x60] %asi, %g4
fmuld8ulx16 %f18, %f14, %f4
fmovdug %fcc2, %f18, %f28
wrhpr %l0, %g0, %hsys_tick_cmpr
wrhpr %l0, %g0, %hsys_tick_cmpr
wrhpr %l0, 0xA36, %hsys_tick_cmpr
fmovdule %fcc3, %f12, %f28
ldsha [%l7 + %i0] 0x04, %o6
fmovdule %fcc3, %f2, %f10
wr %o7, 0x1BC7, %clear_softint
tsubcctv %l3, 0x00FE, %g6
rdhpr %hsys_tick_cmpr, %o1
fpadd16s %f18, %f14, %f26
setx 0xFF711822F16B26D6, %l0, %l6
stda %f0, [%l7 + 0x40] %asi
fmul8x16au %f10, %f12, %f28
setx 0xCB252082, %l0, %l6
setx 0xEC1C3941, %l1, %l5
wrhpr %l0, 0xC53, %hsys_tick_cmpr
fmovrslez %i2, %f29, %f24
lduwa [%l7 + 0x2C] %asi, %l1
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# Set %cwp for 8 windows
!# This threads memory space into each %l7
setx 0x0000000000000000, %l0, %l6 !# no post process
stx %l6, [%l7 + 0x0] !# no post process
ldx [%l7 + 0x0], %fsr !# no post process
!# Initialize registers ..
INIT_TH_FP_REG(%l7,%f0,0xBDAA6DD55A5295CF)
INIT_TH_FP_REG(%l7,%f2,0x4A34052A0704B7C4)
INIT_TH_FP_REG(%l7,%f4,0x6ADCB8D1803A9F23)
INIT_TH_FP_REG(%l7,%f6,0xB60F0ED94AA7B65F)
INIT_TH_FP_REG(%l7,%f8,0x968F5AC36765DF1D)
INIT_TH_FP_REG(%l7,%f10,0x6F1B644681110DCB)
INIT_TH_FP_REG(%l7,%f12,0x36C734C9140C2E48)
INIT_TH_FP_REG(%l7,%f14,0x29D915F5FC517B13)
INIT_TH_FP_REG(%l7,%f16,0xBB400398FA3CC37D)
INIT_TH_FP_REG(%l7,%f18,0x6B19673780E12A99)
INIT_TH_FP_REG(%l7,%f20,0x5FF152440E494FF2)
INIT_TH_FP_REG(%l7,%f22,0x646EE164E001DF2A)
INIT_TH_FP_REG(%l7,%f24,0x2EE59B5257317A5D)
INIT_TH_FP_REG(%l7,%f26,0x8AF2C1DC1450E4C8)
INIT_TH_FP_REG(%l7,%f28,0x47D3CA205179E18E)
INIT_TH_FP_REG(%l7,%f30,0x8D561E6837120468)
ldxa [%l7 + %i2] 0x89, %g5
fmul8x16au %f5, %f19, %f22
setx 0x751A7879, %l0, %l6
setx 0xC24182F7, %l1, %l5
fandnot1s %f29, %f11, %f23
setx 0xF56AFC45, %l0, %l6
rdhpr %hsys_tick_cmpr, %g5
wr %l0, 0x538, %sys_tick_cmpr
fmovdug %fcc1, %f22, %f30
fmovdul %fcc1, %f12, %f12
wrhpr %l0, 0xFA8, %hsys_tick_cmpr
rdhpr %hsys_tick_cmpr, %g2
fpadd16s %f17, %f15, %f18
fmovdlg %fcc1, %f24, %f16
fandnot1 %f22, %f30, %f20
wr %o1, 0x09A2, %clear_softint
wr %i1, 0x05F4, %set_softint
wrhpr %l0, %g0, %hsys_tick_cmpr
tsubcctv %l6, 0x0769, %i7
faligndata %f22, %f14, %f28
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
EXIT_GOOD /* test finish */
/************************************************************************
************************************************************************/