* ========== Copyright Header Begin ==========================================
* OpenSPARC T2 Processor File: fgu_ieee_traps_24.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=1879012"
.ident "Mon Dec 8 19:57:18 CST 2003"
.ident "Using Instruction Hash for Focus :$Id: fgu_ieee_traps_24.s,v 1.4 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,0x288F5FE4ADC85DBB)
INIT_TH_FP_REG(%l7,%f2,0x99330CD29345F7AA)
INIT_TH_FP_REG(%l7,%f4,0xF0864B2A2C349933)
INIT_TH_FP_REG(%l7,%f6,0x6ACBB695416C1DE8)
INIT_TH_FP_REG(%l7,%f8,0x702D9225E1849BBF)
INIT_TH_FP_REG(%l7,%f10,0x3B80F57713CEF94D)
INIT_TH_FP_REG(%l7,%f12,0x29F58B18105B9DB9)
INIT_TH_FP_REG(%l7,%f14,0x3A004DF21FB60FC8)
INIT_TH_FP_REG(%l7,%f16,0x61C26D62F509D405)
INIT_TH_FP_REG(%l7,%f18,0x12DA3DA3327AD216)
INIT_TH_FP_REG(%l7,%f20,0xBB062AE6B90609C1)
INIT_TH_FP_REG(%l7,%f22,0x9340BB5270849C7A)
INIT_TH_FP_REG(%l7,%f24,0x3BED08A82F701640)
INIT_TH_FP_REG(%l7,%f26,0x4F29A2C887EA9969)
INIT_TH_FP_REG(%l7,%f28,0xFD29195D7721EC62)
INIT_TH_FP_REG(%l7,%f30,0x2BF5B668A5F183A1)
setx 0x2C690E37, %l0, %l6
setx 0xB80F2530, %l1, %l5
setx 0x021100001405, %l0, %l1
fmul8sux16 %f20, %f4, %f10
setx 0x0BE7A72E165D50AA, %l0, %l6
setx 0x21A628BA076B5450, %l1, %l5
wrhpr %l0, 0x085, %hsys_tick_cmpr
fmovrslez %o7, %f20, %f13
fmovdle %fcc2, %f24, %f30
faligndata %f0, %f20, %f0
setx 0x5F1E2055, %l0, %l6
fmovslg %fcc2, %f16, %f21
fandnot2s %f25, %f28, %f11
fmul8ulx16 %f14, %f6, %f2
fandnot1s %f3, %f30, %f23
fmovdleu %xcc, %f22, %f14
fmovsul %fcc1, %f30, %f24
fmovdlg %fcc0, %f28, %f24
fmovduge %fcc2, %f18, %f16
stwa %o6, [%l7 + 0x48] %asi
fmul8sux16 %f28, %f28, %f20
wrhpr %l0, 0x943, %hsys_tick_cmpr
fmovsule %fcc0, %f9, %f29
!! stxa %i6, [%g0 + %i3] 0x40
fandnot2s %f28, %f22, %f29
ldxa [%l7 + 0x30] %asi, %i1
fpadd32s %f30, %f30, %f28
ldswa [%l7 + 0x08] %asi, %g5
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# 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,0x288F5FE4ADC85DBB)
INIT_TH_FP_REG(%l7,%f2,0x99330CD29345F7AA)
INIT_TH_FP_REG(%l7,%f4,0xF0864B2A2C349933)
INIT_TH_FP_REG(%l7,%f6,0x6ACBB695416C1DE8)
INIT_TH_FP_REG(%l7,%f8,0x702D9225E1849BBF)
INIT_TH_FP_REG(%l7,%f10,0x3B80F57713CEF94D)
INIT_TH_FP_REG(%l7,%f12,0x29F58B18105B9DB9)
INIT_TH_FP_REG(%l7,%f14,0x3A004DF21FB60FC8)
INIT_TH_FP_REG(%l7,%f16,0x61C26D62F509D405)
INIT_TH_FP_REG(%l7,%f18,0x12DA3DA3327AD216)
INIT_TH_FP_REG(%l7,%f20,0xBB062AE6B90609C1)
INIT_TH_FP_REG(%l7,%f22,0x9340BB5270849C7A)
INIT_TH_FP_REG(%l7,%f24,0x3BED08A82F701640)
INIT_TH_FP_REG(%l7,%f26,0x4F29A2C887EA9969)
INIT_TH_FP_REG(%l7,%f28,0xFD29195D7721EC62)
INIT_TH_FP_REG(%l7,%f30,0x2BF5B668A5F183A1)
lduha [%l7 + %g5] 0x10, %l1
wr %o6, 0x12DF, %clear_softint
fmovslg %fcc1, %f28, %f22
fmovsule %fcc1, %f23, %f11
setx 0xDEFF31EEC81494DB, %l0, %l6
setx 0xFEBA54A4F02A0F2A, %l1, %l5
fmovdlg %fcc3, %f14, %f28
stwa %l4, [%l7 + 0x34] %asi
setx 0x024100001400, %l0, %l1
fmovdule %fcc1, %f2, %f30
setx 0xB69BFBDF, %l0, %l6
setx 0x170F1BF0, %l1, %l5
fmul8sux16 %f2, %f2, %f10
fmovsne %fcc3, %f27, %f23
fmuld8sux16 %f2, %f4, %f18
wrhpr %l0, %g0, %hsys_tick_cmpr
fmuld8ulx16 %f18, %f18, %f18
wrhpr %l0, 0x394, %hsys_tick_cmpr
ldswa [%l7 + 0x64] %asi, %g2
fmovduge %fcc1, %f4, %f30
fmuld8ulx16 %f26, %f20, %f4
fmovrsgez %l3, %f23, %f12
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# 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,0x288F5FE4ADC85DBB)
INIT_TH_FP_REG(%l7,%f2,0x99330CD29345F7AA)
INIT_TH_FP_REG(%l7,%f4,0xF0864B2A2C349933)
INIT_TH_FP_REG(%l7,%f6,0x6ACBB695416C1DE8)
INIT_TH_FP_REG(%l7,%f8,0x702D9225E1849BBF)
INIT_TH_FP_REG(%l7,%f10,0x3B80F57713CEF94D)
INIT_TH_FP_REG(%l7,%f12,0x29F58B18105B9DB9)
INIT_TH_FP_REG(%l7,%f14,0x3A004DF21FB60FC8)
INIT_TH_FP_REG(%l7,%f16,0x61C26D62F509D405)
INIT_TH_FP_REG(%l7,%f18,0x12DA3DA3327AD216)
INIT_TH_FP_REG(%l7,%f20,0xBB062AE6B90609C1)
INIT_TH_FP_REG(%l7,%f22,0x9340BB5270849C7A)
INIT_TH_FP_REG(%l7,%f24,0x3BED08A82F701640)
INIT_TH_FP_REG(%l7,%f26,0x4F29A2C887EA9969)
INIT_TH_FP_REG(%l7,%f28,0xFD29195D7721EC62)
INIT_TH_FP_REG(%l7,%f30,0x2BF5B668A5F183A1)
fbne,a,pn %fcc2, loop_154
fmul8x16 %f20, %f20, %f24
setx 0x7976AF6F, %l0, %l6
setx 0xCE7F585D, %l1, %l5
bshuffle %f10, %f10, %f14
ldxa [%l7 + %g6] 0x18, %i2
fmovdpos %icc, %f30, %f14
wrhpr %l0, %g0, %hsys_tick_cmpr
fmul8sux16 %f28, %f20, %f14
fmul8x16au %f22, %f13, %f0
lduba [%l7 + 0x79] %asi, %g6
setx 0x032200001406, %l0, %l1
fmovsle %fcc2, %f16, %f22
fmovsug %fcc2, %f17, %f21
setx 0x426D25FF, %l0, %l6
setx 0x9311F7B2, %l1, %l5
fandnot2s %f5, %f27, %f22
wr %g5, 0x0FDE, %set_softint
stda %f0, [%l7 + %o1] 0xcb
fandnot1 %f26, %f18, %f18
setx 0x7EA55D09, %l0, %l6
setx 0x64901470, %l1, %l5
fornot1s %f28, %f23, %f18
rdhpr %hsys_tick_cmpr, %o7
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# 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,0x288F5FE4ADC85DBB)
INIT_TH_FP_REG(%l7,%f2,0x99330CD29345F7AA)
INIT_TH_FP_REG(%l7,%f4,0xF0864B2A2C349933)
INIT_TH_FP_REG(%l7,%f6,0x6ACBB695416C1DE8)
INIT_TH_FP_REG(%l7,%f8,0x702D9225E1849BBF)
INIT_TH_FP_REG(%l7,%f10,0x3B80F57713CEF94D)
INIT_TH_FP_REG(%l7,%f12,0x29F58B18105B9DB9)
INIT_TH_FP_REG(%l7,%f14,0x3A004DF21FB60FC8)
INIT_TH_FP_REG(%l7,%f16,0x61C26D62F509D405)
INIT_TH_FP_REG(%l7,%f18,0x12DA3DA3327AD216)
INIT_TH_FP_REG(%l7,%f20,0xBB062AE6B90609C1)
INIT_TH_FP_REG(%l7,%f22,0x9340BB5270849C7A)
INIT_TH_FP_REG(%l7,%f24,0x3BED08A82F701640)
INIT_TH_FP_REG(%l7,%f26,0x4F29A2C887EA9969)
INIT_TH_FP_REG(%l7,%f28,0xFD29195D7721EC62)
INIT_TH_FP_REG(%l7,%f30,0x2BF5B668A5F183A1)
setx 0x66DA58666F80E466, %l0, %l6
setx 0x1A9A882B, %l1, %l5
fpsub32s %f23, %f27, %f17
setx 0x9BDAC9E6, %l0, %l6
fandnot1s %f23, %f13, %f1
setx 0x5537C105, %l0, %l6
setx 0x046F71C4, %l1, %l5
wrhpr %l0, %g0, %hsys_tick_cmpr
setx 0x1D5D98FB, %l0, %l6
fmul8x16au %f29, %f15, %f24
fmovduge %fcc3, %f18, %f30
faligndata %f18, %f22, %f0
fmovsleu %icc, %f22, %f31
wrhpr %l0, 0x67D, %hsys_tick_cmpr
fandnot2s %f16, %f30, %f2
fmovdue %fcc1, %f20, %f22
faligndata %f14, %f18, %f4
faligndata %f28, %f2, %f2
rdhpr %hsys_tick_cmpr, %o2
setx 0xEB2333CB2B35A290, %l0, %l6
setx 0xC47B83BE1C7869E5, %l1, %l5
fmovsule %fcc0, %f30, %f26
faligndata %f14, %f6, %f16
casxa [%l6] %asi, %l0, %o3
stda %i4, [%l7 + 0x70] %asi
setx 0xF9DE09CA, %l0, %l6
setx 0xD227D6A5, %l1, %l5
ldsha [%l7 + 0x1A] %asi, %o1
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# 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,0x288F5FE4ADC85DBB)
INIT_TH_FP_REG(%l7,%f2,0x99330CD29345F7AA)
INIT_TH_FP_REG(%l7,%f4,0xF0864B2A2C349933)
INIT_TH_FP_REG(%l7,%f6,0x6ACBB695416C1DE8)
INIT_TH_FP_REG(%l7,%f8,0x702D9225E1849BBF)
INIT_TH_FP_REG(%l7,%f10,0x3B80F57713CEF94D)
INIT_TH_FP_REG(%l7,%f12,0x29F58B18105B9DB9)
INIT_TH_FP_REG(%l7,%f14,0x3A004DF21FB60FC8)
INIT_TH_FP_REG(%l7,%f16,0x61C26D62F509D405)
INIT_TH_FP_REG(%l7,%f18,0x12DA3DA3327AD216)
INIT_TH_FP_REG(%l7,%f20,0xBB062AE6B90609C1)
INIT_TH_FP_REG(%l7,%f22,0x9340BB5270849C7A)
INIT_TH_FP_REG(%l7,%f24,0x3BED08A82F701640)
INIT_TH_FP_REG(%l7,%f26,0x4F29A2C887EA9969)
INIT_TH_FP_REG(%l7,%f28,0xFD29195D7721EC62)
INIT_TH_FP_REG(%l7,%f30,0x2BF5B668A5F183A1)
setx 0x58740C6E, %l0, %l6
setx 0xB53F99CB, %l1, %l5
fmovsule %fcc1, %f5, %f14
setx 0x5D00D65C6B5C8C75, %l0, %l6
setx 0x979BE52A7455696D, %l1, %l5
setx 0x012400001404, %l0, %l1
fmovsne %fcc1, %f27, %f10
fmovrslez %g1, %f20, %f14
setx 0xFD4C281D, %l0, %l6
setx 0x682A1DF4, %l1, %l5
setx 0xA3A5C185, %l0, %l6
setx 0x024200001403, %l0, %l1
setx 0x1C8CA266, %l0, %l6
setx 0x819345EB, %l1, %l5
taddcctv %l2, 0x03F3, %l5
ldswa [%l7 + 0x1C] %asi, %g1
fornot2s %f17, %f31, %f28
setx 0x163A79E49943D3DF, %l0, %l6
setx 0x7470D9FE, %l1, %l5
fmuld8sux16 %f29, %f7, %f18
fmul8sux16 %f6, %f30, %f22
fpsub16s %f29, %f10, %f12
setx 0xB256ECA38B67612E, %l0, %l6
setx 0x8CCF60E4, %l1, %l5
rdhpr %hsys_tick_cmpr, %l4
fmuld8sux16 %f17, %f22, %f6
fmovdlg %fcc2, %f18, %f24
stha %g6, [%l7 + %o7] 0x23
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# 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,0x288F5FE4ADC85DBB)
INIT_TH_FP_REG(%l7,%f2,0x99330CD29345F7AA)
INIT_TH_FP_REG(%l7,%f4,0xF0864B2A2C349933)
INIT_TH_FP_REG(%l7,%f6,0x6ACBB695416C1DE8)
INIT_TH_FP_REG(%l7,%f8,0x702D9225E1849BBF)
INIT_TH_FP_REG(%l7,%f10,0x3B80F57713CEF94D)
INIT_TH_FP_REG(%l7,%f12,0x29F58B18105B9DB9)
INIT_TH_FP_REG(%l7,%f14,0x3A004DF21FB60FC8)
INIT_TH_FP_REG(%l7,%f16,0x61C26D62F509D405)
INIT_TH_FP_REG(%l7,%f18,0x12DA3DA3327AD216)
INIT_TH_FP_REG(%l7,%f20,0xBB062AE6B90609C1)
INIT_TH_FP_REG(%l7,%f22,0x9340BB5270849C7A)
INIT_TH_FP_REG(%l7,%f24,0x3BED08A82F701640)
INIT_TH_FP_REG(%l7,%f26,0x4F29A2C887EA9969)
INIT_TH_FP_REG(%l7,%f28,0xFD29195D7721EC62)
INIT_TH_FP_REG(%l7,%f30,0x2BF5B668A5F183A1)
fmovsuge %fcc0, %f27, %f24
setx 0x09BE26A3, %l0, %l6
setx 0x3312C36E, %l1, %l5
fmuld8sux16 %f7, %f3, %f18
fmovdne %fcc1, %f18, %f24
fmovdug %fcc3, %f28, %f30
fmovsue %fcc2, %f12, %f14
wr %o1, %i7, %clear_softint
setx 0x1205A739, %l0, %l6
fmovsge %fcc2, %f23, %f26
wrhpr %l0, 0x590, %hsys_tick_cmpr
setx 0xEC66DF3B, %l0, %l6
setx 0xFCEF61E6, %l1, %l5
fmul8x16al %f17, %f21, %f6
fandnot1s %f15, %f31, %f19
fmovrsgez %i0, %f17, %f31
fandnot1s %f15, %f15, %f7
stxa %l5, [%l7 + 0x60] %asi
stba %l2, [%l7 + 0x6D] %asi
fpadd32s %f27, %f11, %f30
fmovdlg %fcc2, %f18, %f24
fbug,a,pn %fcc0, loop_388
fandnot1s %f3, %f25, %f22
setx 0x521C5E1793F7A50B, %l0, %l6
wr %i0, 0x0BD8, %sys_tick
wr %l0, 0x970, %sys_tick_cmpr
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# 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,0x288F5FE4ADC85DBB)
INIT_TH_FP_REG(%l7,%f2,0x99330CD29345F7AA)
INIT_TH_FP_REG(%l7,%f4,0xF0864B2A2C349933)
INIT_TH_FP_REG(%l7,%f6,0x6ACBB695416C1DE8)
INIT_TH_FP_REG(%l7,%f8,0x702D9225E1849BBF)
INIT_TH_FP_REG(%l7,%f10,0x3B80F57713CEF94D)
INIT_TH_FP_REG(%l7,%f12,0x29F58B18105B9DB9)
INIT_TH_FP_REG(%l7,%f14,0x3A004DF21FB60FC8)
INIT_TH_FP_REG(%l7,%f16,0x61C26D62F509D405)
INIT_TH_FP_REG(%l7,%f18,0x12DA3DA3327AD216)
INIT_TH_FP_REG(%l7,%f20,0xBB062AE6B90609C1)
INIT_TH_FP_REG(%l7,%f22,0x9340BB5270849C7A)
INIT_TH_FP_REG(%l7,%f24,0x3BED08A82F701640)
INIT_TH_FP_REG(%l7,%f26,0x4F29A2C887EA9969)
INIT_TH_FP_REG(%l7,%f28,0xFD29195D7721EC62)
INIT_TH_FP_REG(%l7,%f30,0x2BF5B668A5F183A1)
setx 0xF73D1C8BFD3968D5, %l0, %l6
setx 0x80C70D9150460131, %l1, %l5
wr %l6, 0x0BE6, %clear_softint
wr %l0, 0xEA3, %tick_cmpr
fandnot2s %f24, %f19, %f5
ldxa [%l7 + %g4] 0x81, %o5
sta %f27, [%l7 + 0x24] %asi
wr %l5, 0x0A9C, %sys_tick
fpsub16s %f28, %f21, %f25
fmul8x16 %f18, %f10, %f24
wrhpr %l0, 0x50F, %hsys_tick_cmpr
stha %i0, [%l7 + %g7] 0xeb
wr %o7, 0x0D70, %sys_tick
setx 0x750BED86, %l0, %l6
fmovdlg %fcc3, %f30, %f24
setx 0x77983442, %l0, %l6
setx 0x442DBB6D, %l1, %l5
stda %l4, [%l7 + %o2] 0xea
fmul8x16al %f18, %f21, %f20
fmovrdgez %g6, %f28, %f30
fmovsuge %fcc2, %f18, %f29
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!# 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,0x288F5FE4ADC85DBB)
INIT_TH_FP_REG(%l7,%f2,0x99330CD29345F7AA)
INIT_TH_FP_REG(%l7,%f4,0xF0864B2A2C349933)
INIT_TH_FP_REG(%l7,%f6,0x6ACBB695416C1DE8)
INIT_TH_FP_REG(%l7,%f8,0x702D9225E1849BBF)
INIT_TH_FP_REG(%l7,%f10,0x3B80F57713CEF94D)
INIT_TH_FP_REG(%l7,%f12,0x29F58B18105B9DB9)
INIT_TH_FP_REG(%l7,%f14,0x3A004DF21FB60FC8)
INIT_TH_FP_REG(%l7,%f16,0x61C26D62F509D405)
INIT_TH_FP_REG(%l7,%f18,0x12DA3DA3327AD216)
INIT_TH_FP_REG(%l7,%f20,0xBB062AE6B90609C1)
INIT_TH_FP_REG(%l7,%f22,0x9340BB5270849C7A)
INIT_TH_FP_REG(%l7,%f24,0x3BED08A82F701640)
INIT_TH_FP_REG(%l7,%f26,0x4F29A2C887EA9969)
INIT_TH_FP_REG(%l7,%f28,0xFD29195D7721EC62)
INIT_TH_FP_REG(%l7,%f30,0x2BF5B668A5F183A1)
ldswa [%l7 + %o3] 0x18, %i0
fmovrslez %o7, %f24, %f10
setx 0x33E0CBE669A07981, %l0, %l6
setx 0xC36589E7C0568BC3, %l1, %l5
setx 0x79D4534A5D696BBD, %l0, %l6
setx 0x544436111893902E, %l1, %l5
setx 0x585C4C68, %l0, %l6
setx 0x2925364C, %l1, %l5
wrhpr %l0, 0xA00, %hsys_tick_cmpr
ldswa [%l7 + 0x48] %asi, %o5
wrhpr %l0, %g0, %hsys_tick_cmpr
wr %g7, %o2, %clear_softint
fmovdul %fcc1, %f22, %f26
fandnot1s %f27, %f11, %f0
casxa [%l6] %asi, %g7, %l0
stha %o4, [%l7 + %g2] 0x81
fpadd16s %f26, %f20, %f17
fmovsul %fcc2, %f25, %f29
fmovdue %fcc0, %f22, %f28
stwa %o0, [%l7 + %i3] 0x22
fandnot2 %f22, %f22, %f24
setx 0x022400001407, %l0, %l1
lduba [%l7 + 0x3D] %asi, %l2
fmovdue %fcc0, %f18, %f22
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
EXIT_GOOD /* test finish */
/************************************************************************
************************************************************************/