Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / diag / assembly / uarch / mmu / diag / mmu_mt_demap_0.s
/*
* ========== Copyright Header Begin ==========================================
*
* OpenSPARC T2 Processor File: mmu_mt_demap_0.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
* otherwise unspecified.
*
* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
* CA 95054 USA or visit www.sun.com if you need additional information or
* have any questions.
*
*
* ========== Copyright Header End ============================================
*/
#include "asi_s.h"
#ifndef NOHWTW
#define THR0_Z_CTX_TSB_CONFIG_0 0xc000000001000010
#define THR0_Z_CTX_TSB_CONFIG_1 0xa000000001010030
#define THR0_Z_CTX_TSB_CONFIG_2 0xa000000001020150
#define THR0_Z_CTX_TSB_CONFIG_3 0x8000000001030000
#define THR0_NZ_CTX_TSB_CONFIG_0 0x8000000001200030
#define THR0_NZ_CTX_TSB_CONFIG_1 0x8000000001210150
#define THR0_NZ_CTX_TSB_CONFIG_2 0x8000000001220100
#define THR0_NZ_CTX_TSB_CONFIG_3 0x8000000001230010
#define THR1_Z_CTX_TSB_CONFIG_0 0x8000000001040010
#define THR1_Z_CTX_TSB_CONFIG_1 0xa000000001050030
#define THR1_Z_CTX_TSB_CONFIG_2 0x8000000001060050
#define THR1_Z_CTX_TSB_CONFIG_3 0xa000000001070100
#define THR1_NZ_CTX_TSB_CONFIG_0 0x8000000001240000
#define THR1_NZ_CTX_TSB_CONFIG_1 0x8000000001250110
#define THR1_NZ_CTX_TSB_CONFIG_2 0x8000000001260030
#define THR1_NZ_CTX_TSB_CONFIG_3 0xa000000001270150
#define THR2_Z_CTX_TSB_CONFIG_0 0xa000000001080030
#define THR2_Z_CTX_TSB_CONFIG_1 0xc000000001090150
#define THR2_Z_CTX_TSB_CONFIG_2 0xc0000000010a0100
#define THR2_Z_CTX_TSB_CONFIG_3 0x80000000010b0010
#define THR2_NZ_CTX_TSB_CONFIG_0 0xc000000001280150
#define THR2_NZ_CTX_TSB_CONFIG_1 0x8000000001290100
#define THR2_NZ_CTX_TSB_CONFIG_2 0xc0000000012a0110
#define THR2_NZ_CTX_TSB_CONFIG_3 0x80000000012b0130
#define THR3_Z_CTX_TSB_CONFIG_0 0xc0000000010c0130
#define THR3_Z_CTX_TSB_CONFIG_1 0xa0000000010d0150
#define THR3_Z_CTX_TSB_CONFIG_2 0xc0000000010e0100
#define THR3_Z_CTX_TSB_CONFIG_3 0xc0000000010f0110
#define THR3_NZ_CTX_TSB_CONFIG_0 0xc0000000012c0050
#define THR3_NZ_CTX_TSB_CONFIG_1 0x80000000012d0000
#define THR3_NZ_CTX_TSB_CONFIG_2 0xc0000000012e0110
#define THR3_NZ_CTX_TSB_CONFIG_3 0xc0000000012f0030
#define THR4_Z_CTX_TSB_CONFIG_0 0x8000000001100050
#define THR4_Z_CTX_TSB_CONFIG_1 0x8000000001110100
#define THR4_Z_CTX_TSB_CONFIG_2 0x8000000001120010
#define THR4_Z_CTX_TSB_CONFIG_3 0x8000000001130130
#define THR4_NZ_CTX_TSB_CONFIG_0 0xc000000001300050
#define THR4_NZ_CTX_TSB_CONFIG_1 0x8000000001310000
#define THR4_NZ_CTX_TSB_CONFIG_2 0x8000000001320110
#define THR4_NZ_CTX_TSB_CONFIG_3 0xa000000001330130
#define THR5_Z_CTX_TSB_CONFIG_0 0xc000000001140050
#define THR5_Z_CTX_TSB_CONFIG_1 0x8000000001150100
#define THR5_Z_CTX_TSB_CONFIG_2 0xa000000001160110
#define THR5_Z_CTX_TSB_CONFIG_3 0x8000000001170030
#define THR5_NZ_CTX_TSB_CONFIG_0 0x8000000001340100
#define THR5_NZ_CTX_TSB_CONFIG_1 0x8000000001350110
#define THR5_NZ_CTX_TSB_CONFIG_2 0x8000000001360030
#define THR5_NZ_CTX_TSB_CONFIG_3 0x8000000001370050
#define THR6_Z_CTX_TSB_CONFIG_0 0x8000000001180150
#define THR6_Z_CTX_TSB_CONFIG_1 0xc000000001190100
#define THR6_Z_CTX_TSB_CONFIG_2 0x80000000011a0110
#define THR6_Z_CTX_TSB_CONFIG_3 0xa0000000011b0030
#define THR6_NZ_CTX_TSB_CONFIG_0 0xc000000001380130
#define THR6_NZ_CTX_TSB_CONFIG_1 0x8000000001390050
#define THR6_NZ_CTX_TSB_CONFIG_2 0x80000000013a0000
#define THR6_NZ_CTX_TSB_CONFIG_3 0xc0000000013b0010
#define THR7_Z_CTX_TSB_CONFIG_0 0xc0000000011c0010
#define THR7_Z_CTX_TSB_CONFIG_1 0xa0000000011d0030
#define THR7_Z_CTX_TSB_CONFIG_2 0xa0000000011e0150
#define THR7_Z_CTX_TSB_CONFIG_3 0x80000000011f0100
#define THR7_NZ_CTX_TSB_CONFIG_0 0x80000000013c0130
#define THR7_NZ_CTX_TSB_CONFIG_1 0x80000000013d0150
#define THR7_NZ_CTX_TSB_CONFIG_2 0x80000000013e0000
#define THR7_NZ_CTX_TSB_CONFIG_3 0x80000000013f0010
#else
#define THR0_Z_CTX_TSB_CONFIG_0 0x4000000001000010
#define THR0_Z_CTX_TSB_CONFIG_1 0x2000000001010030
#define THR0_Z_CTX_TSB_CONFIG_2 0x2000000001020150
#define THR0_Z_CTX_TSB_CONFIG_3 0x0000000001030000
#define THR0_NZ_CTX_TSB_CONFIG_0 0x0000000001200030
#define THR0_NZ_CTX_TSB_CONFIG_1 0x0000000001210150
#define THR0_NZ_CTX_TSB_CONFIG_2 0x2000000001220100
#define THR0_NZ_CTX_TSB_CONFIG_3 0x0000000001230010
#define THR1_Z_CTX_TSB_CONFIG_0 0x0000000001040010
#define THR1_Z_CTX_TSB_CONFIG_1 0x2000000001050030
#define THR1_Z_CTX_TSB_CONFIG_2 0x0000000001060050
#define THR1_Z_CTX_TSB_CONFIG_3 0x2000000001070100
#define THR1_NZ_CTX_TSB_CONFIG_0 0x0000000001240000
#define THR1_NZ_CTX_TSB_CONFIG_1 0x0000000001250110
#define THR1_NZ_CTX_TSB_CONFIG_2 0x0000000001260030
#define THR1_NZ_CTX_TSB_CONFIG_3 0x2000000001270150
#define THR2_Z_CTX_TSB_CONFIG_0 0x2000000001080030
#define THR2_Z_CTX_TSB_CONFIG_1 0x4000000001090150
#define THR2_Z_CTX_TSB_CONFIG_2 0x40000000010a0100
#define THR2_Z_CTX_TSB_CONFIG_3 0x00000000010b0010
#define THR2_NZ_CTX_TSB_CONFIG_0 0x4000000001280150
#define THR2_NZ_CTX_TSB_CONFIG_1 0x4000000001290100
#define THR2_NZ_CTX_TSB_CONFIG_2 0x40000000012a0110
#define THR2_NZ_CTX_TSB_CONFIG_3 0x00000000012b0130
#define THR3_Z_CTX_TSB_CONFIG_0 0x40000000010c0130
#define THR3_Z_CTX_TSB_CONFIG_1 0x20000000010d0150
#define THR3_Z_CTX_TSB_CONFIG_2 0x40000000010e0100
#define THR3_Z_CTX_TSB_CONFIG_3 0x40000000010f0110
#define THR3_NZ_CTX_TSB_CONFIG_0 0x40000000012c0050
#define THR3_NZ_CTX_TSB_CONFIG_1 0x20000000012d0000
#define THR3_NZ_CTX_TSB_CONFIG_2 0x40000000012e0110
#define THR3_NZ_CTX_TSB_CONFIG_3 0x40000000012f0030
#define THR4_Z_CTX_TSB_CONFIG_0 0x0000000001100050
#define THR4_Z_CTX_TSB_CONFIG_1 0x0000000001110100
#define THR4_Z_CTX_TSB_CONFIG_2 0x0000000001120010
#define THR4_Z_CTX_TSB_CONFIG_3 0x0000000001130130
#define THR4_NZ_CTX_TSB_CONFIG_0 0x4000000001300050
#define THR4_NZ_CTX_TSB_CONFIG_1 0x0000000001310000
#define THR4_NZ_CTX_TSB_CONFIG_2 0x0000000001320110
#define THR4_NZ_CTX_TSB_CONFIG_3 0x2000000001330130
#define THR5_Z_CTX_TSB_CONFIG_0 0x4000000001140050
#define THR5_Z_CTX_TSB_CONFIG_1 0x0000000001150100
#define THR5_Z_CTX_TSB_CONFIG_2 0x2000000001160110
#define THR5_Z_CTX_TSB_CONFIG_3 0x0000000001170030
#define THR5_NZ_CTX_TSB_CONFIG_0 0x0000000001340100
#define THR5_NZ_CTX_TSB_CONFIG_1 0x0000000001350110
#define THR5_NZ_CTX_TSB_CONFIG_2 0x0000000001360030
#define THR5_NZ_CTX_TSB_CONFIG_3 0x0000000001370050
#define THR6_Z_CTX_TSB_CONFIG_0 0x0000000001180150
#define THR6_Z_CTX_TSB_CONFIG_1 0x4000000001190100
#define THR6_Z_CTX_TSB_CONFIG_2 0x00000000011a0110
#define THR6_Z_CTX_TSB_CONFIG_3 0x20000000011b0030
#define THR6_NZ_CTX_TSB_CONFIG_0 0x4000000001380130
#define THR6_NZ_CTX_TSB_CONFIG_1 0x0000000001390050
#define THR6_NZ_CTX_TSB_CONFIG_2 0x20000000013a0000
#define THR6_NZ_CTX_TSB_CONFIG_3 0x40000000013b0010
#define THR7_Z_CTX_TSB_CONFIG_0 0x40000000011c0010
#define THR7_Z_CTX_TSB_CONFIG_1 0x20000000011d0030
#define THR7_Z_CTX_TSB_CONFIG_2 0x20000000011e0150
#define THR7_Z_CTX_TSB_CONFIG_3 0x00000000011f0100
#define THR7_NZ_CTX_TSB_CONFIG_0 0x00000000013c0130
#define THR7_NZ_CTX_TSB_CONFIG_1 0x00000000013d0150
#define THR7_NZ_CTX_TSB_CONFIG_2 0x00000000013e0000
#define THR7_NZ_CTX_TSB_CONFIG_3 0x00000000013f0010
#endif
#define THR0_REAL_RANGE_0 0x8000008000000000
#define THR0_REAL_RANGE_1 0x8000080000000000
#define THR0_REAL_RANGE_2 0x8000800000000000
#define THR0_REAL_RANGE_3 0x8008000000000000
#define THR1_REAL_RANGE_0 0x8000008000000000
#define THR1_REAL_RANGE_1 0x8000080000000000
#define THR1_REAL_RANGE_2 0x8000800000000000
#define THR1_REAL_RANGE_3 0x8008000000000000
#define THR2_REAL_RANGE_0 0x8000008000000000
#define THR2_REAL_RANGE_1 0x8000080000000000
#define THR2_REAL_RANGE_2 0x8000800000000000
#define THR2_REAL_RANGE_3 0x8008000000000000
#define THR3_REAL_RANGE_0 0x8000008000000000
#define THR3_REAL_RANGE_1 0x8000080000000000
#define THR3_REAL_RANGE_2 0x8000800000000000
#define THR3_REAL_RANGE_3 0x8008000000000000
#define THR4_REAL_RANGE_0 0x8000008000000000
#define THR4_REAL_RANGE_1 0x8000080000000000
#define THR4_REAL_RANGE_2 0x8000800000000000
#define THR4_REAL_RANGE_3 0x8008000000000000
#define THR5_REAL_RANGE_0 0x8000008000000000
#define THR5_REAL_RANGE_1 0x8000080000000000
#define THR5_REAL_RANGE_2 0x8000800000000000
#define THR5_REAL_RANGE_3 0x8008000000000000
#define THR6_REAL_RANGE_0 0x8000008000000000
#define THR6_REAL_RANGE_1 0x8000080000000000
#define THR6_REAL_RANGE_2 0x8000800000000000
#define THR6_REAL_RANGE_3 0x8008000000000000
#define THR7_REAL_RANGE_0 0x8000008000000000
#define THR7_REAL_RANGE_1 0x8000080000000000
#define THR7_REAL_RANGE_2 0x8000800000000000
#define THR7_REAL_RANGE_3 0x8008000000000000
#define THR0_PHY_OFF_0 0x0000000002000000
#define THR0_PHY_OFF_1 0x0000000020000000
#define THR0_PHY_OFF_2 0x0000000200000000
#define THR0_PHY_OFF_3 0x0000002000000000
#define THR1_PHY_OFF_0 0x0000000004000000
#define THR1_PHY_OFF_1 0x0000000040000000
#define THR1_PHY_OFF_2 0x0000000400000000
#define THR1_PHY_OFF_3 0x0000004000000000
#define THR2_PHY_OFF_0 0x0000000006000000
#define THR2_PHY_OFF_1 0x0000000060000000
#define THR2_PHY_OFF_2 0x0000000600000000
#define THR2_PHY_OFF_3 0x0000006000000000
#define THR3_PHY_OFF_0 0x0000000008000000
#define THR3_PHY_OFF_1 0x0000000080000000
#define THR3_PHY_OFF_2 0x0000000800000000
#define THR3_PHY_OFF_3 0x0000002000000000
#define THR4_PHY_OFF_0 0x000000000a000000
#define THR4_PHY_OFF_1 0x00000000a0000000
#define THR4_PHY_OFF_2 0x0000000a00000000
#define THR4_PHY_OFF_3 0x0000004000000000
#define THR5_PHY_OFF_0 0x000000000c000000
#define THR5_PHY_OFF_1 0x00000000c0000000
#define THR5_PHY_OFF_2 0x0000000c00000000
#define THR5_PHY_OFF_3 0x0000006000000000
#define THR6_PHY_OFF_0 0x000000000e000000
#define THR6_PHY_OFF_1 0x00000000e0000000
#define THR6_PHY_OFF_2 0x0000000e00000000
#define THR6_PHY_OFF_3 0x0000002000000000
#define THR7_PHY_OFF_0 0x0000000010000000
#define THR7_PHY_OFF_1 0x0000000100000000
#define THR7_PHY_OFF_2 0x0000001000000000
#define THR7_PHY_OFF_3 0x0000004000000000
#define THR_0_PARTID 0
#define THR_1_PARTID 1
#define THR_2_PARTID 2
#define THR_3_PARTID 3
#define THR_4_PARTID 4
#define THR_5_PARTID 5
#define THR_6_PARTID 6
#define THR_7_PARTID 7
#define NUCLEUS 0x0
#define THR0_PCONTEXT_0 0x0471
#define THR0_PCONTEXT_1 0x142f
#define THR0_SCONTEXT_0 0x0d2e
#define THR0_SCONTEXT_1 0x0fb2
#define THR1_PCONTEXT_0 0x0471
#define THR1_PCONTEXT_1 0x0f8e
#define THR1_SCONTEXT_0 0x15a3
#define THR1_SCONTEXT_1 0x0fce
#define THR2_PCONTEXT_0 0x0f8e
#define THR2_PCONTEXT_1 0x0471
#define THR2_SCONTEXT_0 0x1daa
#define THR2_SCONTEXT_1 0x1656
#define THR3_PCONTEXT_0 0x0471
#define THR3_PCONTEXT_1 0x0f8e
#define THR3_SCONTEXT_0 0x0d1f
#define THR3_SCONTEXT_1 0x1df2
#define THR4_PCONTEXT_0 0x0f8e
#define THR4_PCONTEXT_1 0x0d8c
#define THR4_SCONTEXT_0 0x0543
#define THR4_SCONTEXT_1 0x1af1
#define THR5_PCONTEXT_0 0x0f8e
#define THR5_PCONTEXT_1 0x0471
#define THR5_SCONTEXT_0 0x1ff0
#define THR5_SCONTEXT_1 0x1d32
#define THR6_PCONTEXT_0 0x0471
#define THR6_PCONTEXT_1 0x0f8e
#define THR6_SCONTEXT_0 0x01dd
#define THR6_SCONTEXT_1 0x1a51
#define THR7_PCONTEXT_0 0x0f8e
#define THR7_PCONTEXT_1 0x0471
#define THR7_SCONTEXT_0 0x1960
#define THR7_SCONTEXT_1 0x0d32
#define THR0_PTRAP_TEXT_VA 0x00001ada0000
#define THR0_PTRAP_TEXT_RA 0x0028390000
#define THR0_PTRAP_TEXT_PA 0x0028390000
#define THR1_PTRAP_TEXT_VA 0x00001a920000
#define THR1_PTRAP_TEXT_RA 0x0048620000
#define THR1_PTRAP_TEXT_PA 0x0048620000
#define THR2_PTRAP_TEXT_VA 0x00001aa00000
#define THR2_PTRAP_TEXT_RA 0x0068fa0000
#define THR2_PTRAP_TEXT_PA 0x0068fa0000
#define THR3_PTRAP_TEXT_VA 0x00001a980000
#define THR3_PTRAP_TEXT_RA 0x0008dd0000
#define THR3_PTRAP_TEXT_PA 0x0088dd0000
#define THR4_PTRAP_TEXT_VA 0x00001a8a0000
#define THR4_PTRAP_TEXT_RA 0x00a8480000
#define THR4_PTRAP_TEXT_PA 0x00a8480000
#define THR5_PTRAP_TEXT_VA 0x00001ac70000
#define THR5_PTRAP_TEXT_RA 0x0008e90000
#define THR5_PTRAP_TEXT_PA 0x00c8e90000
#define THR6_PTRAP_TEXT_VA 0x00001a1b0000
#define THR6_PTRAP_TEXT_RA 0x0008910000
#define THR6_PTRAP_TEXT_PA 0x00e8910000
#define THR7_PTRAP_TEXT_VA 0x00001abd0000
#define THR7_PTRAP_TEXT_RA 0x0108be0000
#define THR7_PTRAP_TEXT_PA 0x0108be0000
/*****************************************************************************
* $Revision: 1.1 $
*****************************************************************************/
#define HV_RED_TEXT_PA 0x10000
#define HV_RED_DATA_PA 0x20000
#define HPTRAP_TEXT_PA 0x80000
#define HPTRAPS_EXT_TEXT_PA 0x90000
#define HPTRAPS_EXT_DATA_PA 0x98000
#define P_GOOD_TRAP 0x0
#define P_BAD_TRAP 0x1
#define HP_GOOD_TRAP 0xa0
#define HP_BAD_TRAP 0xa1
#define EXIT_GOOD ta P_GOOD_TRAP; nop
#define EXIT_BAD ta P_BAD_TRAP; nop
#define REALRANGE_LO_MASK 0x0000000007ffffff
#define REALRANGE_HI_MASK 0x003ffffff8000000
#define RANOTPA_MASK 0x100
#define SUN4V_MASK 0x000
#define TTE_RA_MASK 0x000000ffffffe000
#define IDEMAP_ALL ta PTRAP_I_DEMAP_ALL
#define IDEMAP_PCTX ta PTRAP_I_DEMAP_PCTX
#define IDEMAP_SCTX ta PTRAP_I_DEMAP_SCTX
#define IDEMAP_NCTX ta PTRAP_I_DEMAP_NCTX
#define IDEMAP_PAGE ta PTRAP_I_DEMAP_PAGE
#define IDEMAP_RPAGE ta PTRAP_I_DEMAP_RPAGE
#define IDEMAP_REAL ta PTRAP_I_DEMAP_REAL
#define DDEMAP_ALL ta PTRAP_D_DEMAP_ALL
#define DDEMAP_PCTX ta PTRAP_D_DEMAP_PCTX
#define DDEMAP_SCTX ta PTRAP_D_DEMAP_SCTX
#define DDEMAP_NCTX ta PTRAP_D_DEMAP_NCTX
#define DDEMAP_PAGE ta PTRAP_D_DEMAP_PAGE
#define DDEMAP_RPAGE ta PTRAP_D_DEMAP_RPAGE
#define DDEMAP_REAL ta PTRAP_D_DEMAP_REAL
#define DO_BRANCH or %g1, %g0, %i7 ; ta PTRAP_REDIRECT
#define CHANGE_PID ta PTRAP_CHANGE_PID
#define INCR_TSB_SIZE ta PTRAP_INCR_TSB_SIZE
#define REAL_MEM_LD ta PTRAP_REAL_MEM_LD
#define REAL_MEM_LD_LITTLE ta PTRAP_REAL_MEM_LD_LITTLE
#define REAL_MEM_QUAD_LD ta PTRAP_REAL_MEM_QUAD_LD
#define REAL_MEM_QUAD_LD_LITTLE ta PTRAP_REAL_MEM_QUAD_LD_LITTLE
#define CLEAR_LSU_IMMU ta PTRAP_CLEAR_LSU_IMMU
#define CLEAR_LSU_DMMU ta PTRAP_CLEAR_LSU_DMMU
#define DELAY_LOOP ta PTRAP_DELAY_LOOP
#define SEM_LOCK ta PTRAP_SEM_LOCK
#define SEM_RELEASE ta PTRAP_SEM_RELEASE
#define SEM_GET ta PTRAP_SEM_GET
#define SEM_SET ta PTRAP_SEM_SET
#define PTRAP_I_DEMAP_ALL 0x10
#define PTRAP_I_DEMAP_PCTX 0x11
#define PTRAP_I_DEMAP_SCTX 0x12
#define PTRAP_I_DEMAP_NCTX 0x13
#define PTRAP_I_DEMAP_PAGE 0x14
#define PTRAP_I_DEMAP_RPAGE 0x15
#define PTRAP_I_DEMAP_REAL 0x16
#define PTRAP_D_DEMAP_ALL 0x17
#define PTRAP_D_DEMAP_PCTX 0x18
#define PTRAP_D_DEMAP_SCTX 0x19
#define PTRAP_D_DEMAP_NCTX 0x1a
#define PTRAP_D_DEMAP_PAGE 0x1b
#define PTRAP_D_DEMAP_RPAGE 0x1c
#define PTRAP_D_DEMAP_REAL 0x1d
#define PTRAP_REDIRECT 0x20
#define PTRAP_CHANGE_PID 0x21
#define PTRAP_INCR_TSB_SIZE 0x22
#define PTRAP_REAL_MEM_LD 0x23
#define PTRAP_REAL_MEM_LD_LITTLE 0x24
#define PTRAP_REAL_MEM_QUAD_LD 0x25
#define PTRAP_REAL_MEM_QUAD_LD_LITTLE 0x26
#define PTRAP_CLEAR_LSU_IMMU 0x27
#define PTRAP_CLEAR_LSU_DMMU 0x28
#define PTRAP_DELAY_LOOP 0x29
#define PTRAP_SEM_LOCK 0x2a
#define PTRAP_SEM_RELEASE 0x2b
#define PTRAP_SEM_GET 0x2c
#define PTRAP_SEM_SET 0x2d
#define HPTRAP_I_DEMAP_ALL 0x80
#define HPTRAP_I_DEMAP_PCTX 0x81
#define HPTRAP_I_DEMAP_SCTX 0x82
#define HPTRAP_I_DEMAP_NCTX 0x83
#define HPTRAP_I_DEMAP_PAGE 0x84
#define HPTRAP_I_DEMAP_RPAGE 0x85
#define HPTRAP_I_DEMAP_REAL 0x86
#define HPTRAP_D_DEMAP_ALL 0x87
#define HPTRAP_D_DEMAP_PCTX 0x88
#define HPTRAP_D_DEMAP_SCTX 0x89
#define HPTRAP_D_DEMAP_NCTX 0x8a
#define HPTRAP_D_DEMAP_PAGE 0x8b
#define HPTRAP_D_DEMAP_RPAGE 0x8c
#define HPTRAP_D_DEMAP_REAL 0x8d
#define HPTRAP_CHANGE_PID 0x91
#define HPTRAP_INCR_TSB_SIZE 0x92
#define HPTRAP_CLEAR_LSU_IMMU 0x93
#define HPTRAP_CLEAR_LSU_DMMU 0x94
#define HPTRAP_DELAY_LOOP 0x95
#define HPTRAP_SEM_LOCK 0x96
#define HPTRAP_SEM_RELEASE 0x97
#define HPTRAP_SEM_GET 0x98
#define HPTRAP_SEM_SET 0x99
#define MAX_OCCURENCE_CNT 10
#define NUM_IMPL_TRAPS 6 /* number of implemented traps */
#define TRAP_0x9_OFFSET 0
#define TRAP_0xB_OFFSET 4
#define TRAP_0x1B_OFFSET 8
#define TRAP_0x2E_OFFSET 0xc
#define TRAP_0x31_OFFSET 0x10
#define TRAP_0x6C_OFFSET 0x14
MIDAS_TSB thr0_z_ctx_tsb_0 THR0_Z_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr0_z_ctx_tsb_1 THR0_Z_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr0_z_ctx_tsb_2 THR0_Z_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr0_z_ctx_tsb_3 THR0_Z_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr0_nz_ctx_tsb_0 THR0_NZ_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr0_nz_ctx_tsb_1 THR0_NZ_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr0_nz_ctx_tsb_2 THR0_NZ_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr0_nz_ctx_tsb_3 THR0_NZ_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr1_z_ctx_tsb_0 THR1_Z_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr1_z_ctx_tsb_1 THR1_Z_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr1_z_ctx_tsb_2 THR1_Z_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr1_z_ctx_tsb_3 THR1_Z_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr1_nz_ctx_tsb_0 THR1_NZ_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr1_nz_ctx_tsb_1 THR1_NZ_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr1_nz_ctx_tsb_2 THR1_NZ_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr1_nz_ctx_tsb_3 THR1_NZ_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr2_z_ctx_tsb_0 THR2_Z_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr2_z_ctx_tsb_1 THR2_Z_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr2_z_ctx_tsb_2 THR2_Z_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr2_z_ctx_tsb_3 THR2_Z_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr2_nz_ctx_tsb_0 THR2_NZ_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr2_nz_ctx_tsb_1 THR2_NZ_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr2_nz_ctx_tsb_2 THR2_NZ_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr2_nz_ctx_tsb_3 THR2_NZ_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr3_z_ctx_tsb_0 THR3_Z_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr3_z_ctx_tsb_1 THR3_Z_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr3_z_ctx_tsb_2 THR3_Z_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr3_z_ctx_tsb_3 THR3_Z_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr3_nz_ctx_tsb_0 THR3_NZ_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr3_nz_ctx_tsb_1 THR3_NZ_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr3_nz_ctx_tsb_2 THR3_NZ_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr3_nz_ctx_tsb_3 THR3_NZ_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr4_z_ctx_tsb_0 THR4_Z_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr4_z_ctx_tsb_1 THR4_Z_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr4_z_ctx_tsb_2 THR4_Z_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr4_z_ctx_tsb_3 THR4_Z_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr4_nz_ctx_tsb_0 THR4_NZ_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr4_nz_ctx_tsb_1 THR4_NZ_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr4_nz_ctx_tsb_2 THR4_NZ_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr4_nz_ctx_tsb_3 THR4_NZ_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr5_z_ctx_tsb_0 THR5_Z_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr5_z_ctx_tsb_1 THR5_Z_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr5_z_ctx_tsb_2 THR5_Z_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr5_z_ctx_tsb_3 THR5_Z_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr5_nz_ctx_tsb_0 THR5_NZ_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr5_nz_ctx_tsb_1 THR5_NZ_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr5_nz_ctx_tsb_2 THR5_NZ_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr5_nz_ctx_tsb_3 THR5_NZ_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr6_z_ctx_tsb_0 THR6_Z_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr6_z_ctx_tsb_1 THR6_Z_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr6_z_ctx_tsb_2 THR6_Z_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr6_z_ctx_tsb_3 THR6_Z_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr6_nz_ctx_tsb_0 THR6_NZ_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr6_nz_ctx_tsb_1 THR6_NZ_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr6_nz_ctx_tsb_2 THR6_NZ_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr6_nz_ctx_tsb_3 THR6_NZ_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr7_z_ctx_tsb_0 THR7_Z_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr7_z_ctx_tsb_1 THR7_Z_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr7_z_ctx_tsb_2 THR7_Z_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr7_z_ctx_tsb_3 THR7_Z_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr7_nz_ctx_tsb_0 THR7_NZ_CTX_TSB_CONFIG_0 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr7_nz_ctx_tsb_1 THR7_NZ_CTX_TSB_CONFIG_1 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr7_nz_ctx_tsb_2 THR7_NZ_CTX_TSB_CONFIG_2 ttefmt=sun4v ttefmt=sun4v
MIDAS_TSB thr7_nz_ctx_tsb_3 THR7_NZ_CTX_TSB_CONFIG_3 ttefmt=sun4v ttefmt=sun4v
/*****************************************************************************************/
SECTION .RED_SEC TEXT_VA = 0xfffffffff0000000
attr_text {
Name=.RED_SEC,
hypervisor
}
.text
nop
nop
nop
nop
nop
nop
nop
nop
rdhpr %hpstate, %l1
wrhpr %l1, 0x820, %hpstate
wrpr 0, %tl
wrpr 0, %g0, %gl
enable_ittm_dttm:
or %g0, 0x10, %g2
ldxa [%g2] 0x4c, %g5
or %g0, 1, %g4
sllx %g4, 61, %g3
or %g5, %g3, %g5 ! enable ITTM
sllx %g4, 47, %g3
or %g5, %g3, %g5 ! enable DTTM
stxa %g5, [%g2] 0x4c
!or %g0, 0x18, %g2
!ldxa [%g2] 0x4c, %g5
!or %g0, 1, %g4
!sllx %g4, 62, %g3
!or %g5, %g3, %g5 ! enable PSCCE
!stxa %g5, [%g2] 0x4c
! load partition id to %l7
wr %g0, ASI_CORE_ID, %asi
ldxa [ASI_CORE_ID_VA] %asi, %l7
set 0x7, %g1
and %l7, %g1, %l7 ! %l7 has TID
xor %l0, %l0, %l0
sub %l7, %l0, %l1
brnz %l1, test_thr1
nop
setx thr0_red_handler, %l0, %l2
jmp %l2
nop
test_thr1:
add %l0, 1, %l0
sub %l7, %l0, %l1
brnz %l1, test_thr2
nop
setx thr1_red_handler, %l0, %l2
jmp %l2
nop
test_thr2:
add %l0, 1, %l0
sub %l7, %l0, %l1
brnz %l1, test_thr3
nop
setx thr2_red_handler, %l0, %l2
jmp %l2
nop
test_thr3:
add %l0, 1, %l0
sub %l7, %l0, %l1
brnz %l1, test_thr4
nop
setx thr3_red_handler, %l0, %l2
jmp %l2
nop
test_thr4:
add %l0, 1, %l0
sub %l7, %l0, %l1
brnz %l1, test_thr5
nop
setx thr4_red_handler, %l0, %l2
jmp %l2
nop
test_thr5:
add %l0, 1, %l0
sub %l7, %l0, %l1
brnz %l1, test_thr6
nop
setx thr5_red_handler, %l0, %l2
jmp %l2
nop
test_thr6:
add %l0, 1, %l0
sub %l7, %l0, %l1
brnz %l1, test_thr7
nop
setx thr6_red_handler, %l0, %l2
jmp %l2
nop
test_thr7:
setx thr7_red_handler, %l0, %l2
jmp %l2
nop
EXIT_BAD
/*****************************************************************************************/
SECTION .RED_EXT_SEC TEXT_VA = HV_RED_TEXT_PA, DATA_VA = HV_RED_DATA_PA
attr_text {
Name=.RED_EXT_SEC,
hypervisor
}
.text
.global thr0_red_handler
thr0_red_handler:
! set partition id
set THR_0_PARTID, %g2
mov ASI_PARTITION_ID_VAL, %g1
stxa %g2, [%g1] ASI_PARTITION_ID
! set hyper trap base addr
setx HPTRAP_TEXT_PA, %l0, %l7
wrhpr %l7, %g0, %htba
thr0_hred_context_config:
setx ASI_PRIMARY_CONTEXT_REG, %l0, %g1
wr %g1, 0x0, %asi
setx THR0_PCONTEXT_0, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_0_REG_VAL] %asi
setx THR0_PCONTEXT_1, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_1_REG_VAL] %asi
setx THR0_SCONTEXT_0, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_0_REG_VAL] %asi
setx THR0_SCONTEXT_1, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_1_REG_VAL] %asi
#ifdef TSB_SEARCH_BURST
thr0_tsb_burst_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_BURST, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
#ifdef TSB_SEARCH_PREDICTION
thr0_tsb_prediction_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_PREDICTION, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
thr0_hred_physical_offset:
setx ASI_MMU_PHYSICAL_OFFSET, %l0, %g1
wr %g1, 0x0, %asi
setx THR0_PHY_OFF_0, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_0] %asi
setx THR0_PHY_OFF_1, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_1] %asi
setx THR0_PHY_OFF_2, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_2] %asi
setx THR0_PHY_OFF_3, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_3] %asi
thr0_hred_real_range:
setx ASI_MMU_REAL_RANGE, %l1, %g1
wr %g1, 0x0, %asi
setx THR0_REAL_RANGE_0, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_0] %asi
setx THR0_REAL_RANGE_1, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_1] %asi
setx THR0_REAL_RANGE_2, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_2] %asi
setx THR0_REAL_RANGE_3, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_3] %asi
thr0_hred_tsb_config:
mov ASI_MMU_ZERO_CONTEXT_TSB_CONFIG, %g3
wr %g3, 0x0, %asi
thr0_hred_tsb_z_config_0:
setx THR0_Z_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR0_Z_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR0_Z_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR0_Z_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_3] %asi
setx THR0_NZ_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR0_NZ_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR0_NZ_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR0_NZ_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_3] %asi
thr0_lsu_ctl_reg:
setx 0x1f, %l0, %l7
stxa %l7, [%g0] ASI_LSU_CONTROL
thr0_transfer_to_priv_code:
setx Thr0_Priv_Sect_text_begin, %g1, %g2
jmp %g2
wrhpr %g0, 0x000, %hpstate
nop
EXIT_BAD
.global thr1_red_handler
thr1_red_handler:
! set partition id
set THR_1_PARTID, %g2
mov ASI_PARTITION_ID_VAL, %g1
stxa %g2, [%g1] ASI_PARTITION_ID
! set hyper trap base addr
setx HPTRAP_TEXT_PA, %l0, %l7
wrhpr %l7, %g0, %htba
thr1_hred_context_config:
setx ASI_PRIMARY_CONTEXT_REG, %l0, %g1
wr %g1, 0x0, %asi
setx THR1_PCONTEXT_0, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_0_REG_VAL] %asi
setx THR1_PCONTEXT_1, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_1_REG_VAL] %asi
setx THR1_SCONTEXT_0, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_0_REG_VAL] %asi
setx THR1_SCONTEXT_1, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_1_REG_VAL] %asi
#ifdef TSB_SEARCH_BURST
thr1_tsb_burst_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_BURST, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
#ifdef TSB_SEARCH_PREDICTION
thr1_tsb_prediction_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_PREDICTION, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
thr1_hred_physical_offset:
setx ASI_MMU_PHYSICAL_OFFSET, %l0, %g1
wr %g1, 0x0, %asi
setx THR1_PHY_OFF_0, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_0] %asi
setx THR1_PHY_OFF_1, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_1] %asi
setx THR1_PHY_OFF_2, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_2] %asi
setx THR1_PHY_OFF_3, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_3] %asi
thr1_hred_real_range:
setx ASI_MMU_REAL_RANGE, %l1, %g1
wr %g1, 0x0, %asi
setx THR1_REAL_RANGE_0, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_0] %asi
setx THR1_REAL_RANGE_1, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_1] %asi
setx THR1_REAL_RANGE_2, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_2] %asi
setx THR1_REAL_RANGE_3, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_3] %asi
thr1_hred_tsb_config:
mov ASI_MMU_ZERO_CONTEXT_TSB_CONFIG, %g3
wr %g3, 0x0, %asi
thr1_hred_tsb_z_config_0:
setx THR1_Z_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR1_Z_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR1_Z_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR1_Z_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_3] %asi
setx THR1_NZ_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR1_NZ_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR1_NZ_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR1_NZ_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_3] %asi
thr1_lsu_ctl_reg:
setx 0x1f, %l0, %l7
stxa %l7, [%g0] ASI_LSU_CONTROL
thr1_transfer_to_priv_code:
setx Thr1_Priv_Sect_text_begin, %g1, %g2
jmp %g2
wrhpr %g0, 0x000, %hpstate
nop
EXIT_BAD
.global thr2_red_handler
thr2_red_handler:
! set partition id
set THR_2_PARTID, %g2
mov ASI_PARTITION_ID_VAL, %g1
stxa %g2, [%g1] ASI_PARTITION_ID
! set hyper trap base addr
setx HPTRAP_TEXT_PA, %l0, %l7
wrhpr %l7, %g0, %htba
thr2_hred_context_config:
setx ASI_PRIMARY_CONTEXT_REG, %l0, %g1
wr %g1, 0x0, %asi
setx THR2_PCONTEXT_0, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_0_REG_VAL] %asi
setx THR2_PCONTEXT_1, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_1_REG_VAL] %asi
setx THR2_SCONTEXT_0, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_0_REG_VAL] %asi
setx THR2_SCONTEXT_1, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_1_REG_VAL] %asi
#ifdef TSB_SEARCH_BURST
thr2_tsb_burst_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_BURST, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
#ifdef TSB_SEARCH_PREDICTION
thr2_tsb_prediction_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_PREDICTION, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
thr2_hred_physical_offset:
setx ASI_MMU_PHYSICAL_OFFSET, %l0, %g1
wr %g1, 0x0, %asi
setx THR2_PHY_OFF_0, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_0] %asi
setx THR2_PHY_OFF_1, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_1] %asi
setx THR2_PHY_OFF_2, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_2] %asi
setx THR2_PHY_OFF_3, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_3] %asi
thr2_hred_real_range:
setx ASI_MMU_REAL_RANGE, %l1, %g1
wr %g1, 0x0, %asi
setx THR2_REAL_RANGE_0, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_0] %asi
setx THR2_REAL_RANGE_1, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_1] %asi
setx THR2_REAL_RANGE_2, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_2] %asi
setx THR2_REAL_RANGE_3, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_3] %asi
thr2_hred_tsb_config:
mov ASI_MMU_ZERO_CONTEXT_TSB_CONFIG, %g3
wr %g3, 0x0, %asi
thr2_hred_tsb_z_config_0:
setx THR2_Z_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR2_Z_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR2_Z_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR2_Z_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_3] %asi
setx THR2_NZ_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR2_NZ_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR2_NZ_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR2_NZ_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_3] %asi
thr2_lsu_ctl_reg:
setx 0x1f, %l0, %l7
stxa %l7, [%g0] ASI_LSU_CONTROL
thr2_transfer_to_priv_code:
setx Thr2_Priv_Sect_text_begin, %g1, %g2
jmp %g2
wrhpr %g0, 0x000, %hpstate
nop
EXIT_BAD
.global thr3_red_handler
thr3_red_handler:
! set partition id
set THR_3_PARTID, %g2
mov ASI_PARTITION_ID_VAL, %g1
stxa %g2, [%g1] ASI_PARTITION_ID
! set hyper trap base addr
setx HPTRAP_TEXT_PA, %l0, %l7
wrhpr %l7, %g0, %htba
thr3_hred_context_config:
setx ASI_PRIMARY_CONTEXT_REG, %l0, %g1
wr %g1, 0x0, %asi
setx THR3_PCONTEXT_0, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_0_REG_VAL] %asi
setx THR3_PCONTEXT_1, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_1_REG_VAL] %asi
setx THR3_SCONTEXT_0, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_0_REG_VAL] %asi
setx THR3_SCONTEXT_1, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_1_REG_VAL] %asi
#ifdef TSB_SEARCH_BURST
thr3_tsb_burst_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_BURST, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
#ifdef TSB_SEARCH_PREDICTION
thr3_tsb_prediction_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_PREDICTION, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
thr3_hred_physical_offset:
setx ASI_MMU_PHYSICAL_OFFSET, %l0, %g1
wr %g1, 0x0, %asi
setx THR3_PHY_OFF_0, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_0] %asi
setx THR3_PHY_OFF_1, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_1] %asi
setx THR3_PHY_OFF_2, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_2] %asi
setx THR3_PHY_OFF_3, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_3] %asi
thr3_hred_real_range:
setx ASI_MMU_REAL_RANGE, %l1, %g1
wr %g1, 0x0, %asi
setx THR3_REAL_RANGE_0, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_0] %asi
setx THR3_REAL_RANGE_1, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_1] %asi
setx THR3_REAL_RANGE_2, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_2] %asi
setx THR3_REAL_RANGE_3, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_3] %asi
thr3_hred_tsb_config:
mov ASI_MMU_ZERO_CONTEXT_TSB_CONFIG, %g3
wr %g3, 0x0, %asi
thr3_hred_tsb_z_config_0:
setx THR3_Z_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR3_Z_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR3_Z_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR3_Z_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_3] %asi
setx THR3_NZ_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR3_NZ_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR3_NZ_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR3_NZ_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_3] %asi
thr3_lsu_ctl_reg:
setx 0x1f, %l0, %l7
stxa %l7, [%g0] ASI_LSU_CONTROL
thr3_transfer_to_priv_code:
setx Thr3_Priv_Sect_text_begin, %g1, %g2
jmp %g2
wrhpr %g0, 0x000, %hpstate
nop
EXIT_BAD
.global thr4_red_handler
thr4_red_handler:
! set partition id
set THR_4_PARTID, %g2
mov ASI_PARTITION_ID_VAL, %g1
stxa %g2, [%g1] ASI_PARTITION_ID
! set hyper trap base addr
setx HPTRAP_TEXT_PA, %l0, %l7
wrhpr %l7, %g0, %htba
thr4_hred_context_config:
setx ASI_PRIMARY_CONTEXT_REG, %l0, %g1
wr %g1, 0x0, %asi
setx THR4_PCONTEXT_0, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_0_REG_VAL] %asi
setx THR4_PCONTEXT_1, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_1_REG_VAL] %asi
setx THR4_SCONTEXT_0, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_0_REG_VAL] %asi
setx THR4_SCONTEXT_1, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_1_REG_VAL] %asi
#ifdef TSB_SEARCH_BURST
thr4_tsb_burst_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_BURST, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
#ifdef TSB_SEARCH_PREDICTION
thr4_tsb_prediction_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_PREDICTION, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
thr4_hred_physical_offset:
setx ASI_MMU_PHYSICAL_OFFSET, %l0, %g1
wr %g1, 0x0, %asi
setx THR4_PHY_OFF_0, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_0] %asi
setx THR4_PHY_OFF_1, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_1] %asi
setx THR4_PHY_OFF_2, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_2] %asi
setx THR4_PHY_OFF_3, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_3] %asi
thr4_hred_real_range:
setx ASI_MMU_REAL_RANGE, %l1, %g1
wr %g1, 0x0, %asi
setx THR4_REAL_RANGE_0, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_0] %asi
setx THR4_REAL_RANGE_1, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_1] %asi
setx THR4_REAL_RANGE_2, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_2] %asi
setx THR4_REAL_RANGE_3, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_3] %asi
thr4_hred_tsb_config:
mov ASI_MMU_ZERO_CONTEXT_TSB_CONFIG, %g3
wr %g3, 0x0, %asi
thr4_hred_tsb_z_config_0:
setx THR4_Z_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR4_Z_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR4_Z_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR4_Z_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_3] %asi
setx THR4_NZ_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR4_NZ_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR4_NZ_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR4_NZ_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_3] %asi
thr4_lsu_ctl_reg:
setx 0x1f, %l0, %l7
stxa %l7, [%g0] ASI_LSU_CONTROL
thr4_transfer_to_priv_code:
setx Thr4_Priv_Sect_text_begin, %g1, %g2
jmp %g2
wrhpr %g0, 0x000, %hpstate
nop
EXIT_BAD
.global thr5_red_handler
thr5_red_handler:
! set partition id
set THR_5_PARTID, %g2
mov ASI_PARTITION_ID_VAL, %g1
stxa %g2, [%g1] ASI_PARTITION_ID
! set hyper trap base addr
setx HPTRAP_TEXT_PA, %l0, %l7
wrhpr %l7, %g0, %htba
thr5_hred_context_config:
setx ASI_PRIMARY_CONTEXT_REG, %l0, %g1
wr %g1, 0x0, %asi
setx THR5_PCONTEXT_0, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_0_REG_VAL] %asi
setx THR5_PCONTEXT_1, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_1_REG_VAL] %asi
setx THR5_SCONTEXT_0, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_0_REG_VAL] %asi
setx THR5_SCONTEXT_1, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_1_REG_VAL] %asi
#ifdef TSB_SEARCH_BURST
thr5_tsb_burst_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_BURST, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
#ifdef TSB_SEARCH_PREDICTION
thr5_tsb_prediction_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_PREDICTION, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
thr5_hred_physical_offset:
setx ASI_MMU_PHYSICAL_OFFSET, %l0, %g1
wr %g1, 0x0, %asi
setx THR5_PHY_OFF_0, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_0] %asi
setx THR5_PHY_OFF_1, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_1] %asi
setx THR5_PHY_OFF_2, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_2] %asi
setx THR5_PHY_OFF_3, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_3] %asi
thr5_hred_real_range:
setx ASI_MMU_REAL_RANGE, %l1, %g1
wr %g1, 0x0, %asi
setx THR5_REAL_RANGE_0, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_0] %asi
setx THR5_REAL_RANGE_1, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_1] %asi
setx THR5_REAL_RANGE_2, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_2] %asi
setx THR5_REAL_RANGE_3, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_3] %asi
thr5_hred_tsb_config:
mov ASI_MMU_ZERO_CONTEXT_TSB_CONFIG, %g3
wr %g3, 0x0, %asi
thr5_hred_tsb_z_config_0:
setx THR5_Z_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR5_Z_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR5_Z_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR5_Z_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_3] %asi
setx THR5_NZ_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR5_NZ_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR5_NZ_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR5_NZ_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_3] %asi
thr5_lsu_ctl_reg:
setx 0x1f, %l0, %l7
stxa %l7, [%g0] ASI_LSU_CONTROL
thr5_transfer_to_priv_code:
setx Thr5_Priv_Sect_text_begin, %g1, %g2
jmp %g2
wrhpr %g0, 0x000, %hpstate
nop
EXIT_BAD
.global thr6_red_handler
thr6_red_handler:
! set partition id
set THR_6_PARTID, %g2
mov ASI_PARTITION_ID_VAL, %g1
stxa %g2, [%g1] ASI_PARTITION_ID
! set hyper trap base addr
setx HPTRAP_TEXT_PA, %l0, %l7
wrhpr %l7, %g0, %htba
thr6_hred_context_config:
setx ASI_PRIMARY_CONTEXT_REG, %l0, %g1
wr %g1, 0x0, %asi
setx THR6_PCONTEXT_0, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_0_REG_VAL] %asi
setx THR6_PCONTEXT_1, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_1_REG_VAL] %asi
setx THR6_SCONTEXT_0, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_0_REG_VAL] %asi
setx THR6_SCONTEXT_1, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_1_REG_VAL] %asi
#ifdef TSB_SEARCH_BURST
thr6_tsb_burst_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_BURST, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
#ifdef TSB_SEARCH_PREDICTION
thr6_tsb_prediction_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_PREDICTION, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
thr6_hred_physical_offset:
setx ASI_MMU_PHYSICAL_OFFSET, %l0, %g1
wr %g1, 0x0, %asi
setx THR6_PHY_OFF_0, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_0] %asi
setx THR6_PHY_OFF_1, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_1] %asi
setx THR6_PHY_OFF_2, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_2] %asi
setx THR6_PHY_OFF_3, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_3] %asi
thr6_hred_real_range:
setx ASI_MMU_REAL_RANGE, %l1, %g1
wr %g1, 0x0, %asi
setx THR6_REAL_RANGE_0, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_0] %asi
setx THR6_REAL_RANGE_1, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_1] %asi
setx THR6_REAL_RANGE_2, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_2] %asi
setx THR6_REAL_RANGE_3, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_3] %asi
thr6_hred_tsb_config:
mov ASI_MMU_ZERO_CONTEXT_TSB_CONFIG, %g3
wr %g3, 0x0, %asi
thr6_hred_tsb_z_config_0:
setx THR6_Z_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR6_Z_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR6_Z_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR6_Z_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_3] %asi
setx THR6_NZ_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR6_NZ_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR6_NZ_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR6_NZ_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_3] %asi
thr6_lsu_ctl_reg:
setx 0x1f, %l0, %l7
stxa %l7, [%g0] ASI_LSU_CONTROL
thr6_transfer_to_priv_code:
setx Thr6_Priv_Sect_text_begin, %g1, %g2
jmp %g2
wrhpr %g0, 0x000, %hpstate
nop
EXIT_BAD
.global thr7_red_handler
thr7_red_handler:
! set partition id
set THR_7_PARTID, %g2
mov ASI_PARTITION_ID_VAL, %g1
stxa %g2, [%g1] ASI_PARTITION_ID
! set hyper trap base addr
setx HPTRAP_TEXT_PA, %l0, %l7
wrhpr %l7, %g0, %htba
thr7_hred_context_config:
setx ASI_PRIMARY_CONTEXT_REG, %l0, %g1
wr %g1, 0x0, %asi
setx THR7_PCONTEXT_0, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_0_REG_VAL] %asi
setx THR7_PCONTEXT_1, %l0, %g1
stxa %g1, [ASI_PRIMARY_CONTEXT_1_REG_VAL] %asi
setx THR7_SCONTEXT_0, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_0_REG_VAL] %asi
setx THR7_SCONTEXT_1, %l0, %g1
stxa %g1, [ASI_SECONDARY_CONTEXT_1_REG_VAL] %asi
#ifdef TSB_SEARCH_BURST
thr7_tsb_burst_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_BURST, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
#ifdef TSB_SEARCH_PREDICTION
thr7_tsb_prediction_mode:
setx ASI_TSB_SEARCH_MODE_ADDR, %l1, %g1
or TSB_SEARCH_PREDICTION, %g0, %g2
stxa %g2, [%g1] ASI_TSB_SEARCH_MODE_REG
#endif
thr7_hred_physical_offset:
setx ASI_MMU_PHYSICAL_OFFSET, %l0, %g1
wr %g1, 0x0, %asi
setx THR7_PHY_OFF_0, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_0] %asi
setx THR7_PHY_OFF_1, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_1] %asi
setx THR7_PHY_OFF_2, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_2] %asi
setx THR7_PHY_OFF_3, %l0, %l1
stxa %l1, [ASI_MMU_PHYSICAL_OFFSET_3] %asi
thr7_hred_real_range:
setx ASI_MMU_REAL_RANGE, %l1, %g1
wr %g1, 0x0, %asi
setx THR7_REAL_RANGE_0, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_0] %asi
setx THR7_REAL_RANGE_1, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_1] %asi
setx THR7_REAL_RANGE_2, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_2] %asi
setx THR7_REAL_RANGE_3, %l0, %l1
stxa %l1, [ASI_MMU_REAL_RANGE_3] %asi
thr7_hred_tsb_config:
mov ASI_MMU_ZERO_CONTEXT_TSB_CONFIG, %g3
wr %g3, 0x0, %asi
thr7_hred_tsb_z_config_0:
setx THR7_Z_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR7_Z_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR7_Z_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR7_Z_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_ZERO_CONTEXT_TSB_CONFIG_3] %asi
setx THR7_NZ_CTX_TSB_CONFIG_0, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_0] %asi
setx THR7_NZ_CTX_TSB_CONFIG_1, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_1] %asi
setx THR7_NZ_CTX_TSB_CONFIG_2, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_2] %asi
setx THR7_NZ_CTX_TSB_CONFIG_3, %g1, %g4
stxa %g4, [ASI_MMU_NONZERO_CONTEXT_TSB_CONFIG_3] %asi
thr7_lsu_ctl_reg:
setx 0x1f, %l0, %l7
stxa %l7, [%g0] ASI_LSU_CONTROL
thr7_transfer_to_priv_code:
setx Thr7_Priv_Sect_text_begin, %g1, %g2
jmp %g2
wrhpr %g0, 0x000, %hpstate
nop
EXIT_BAD
attr_data {
Name=.RED_EXT_SEC,
hypervisor
}
.data
part_id_list:
.xword THR_0_PARTID, THR_1_PARTID, THR_2_PARTID, THR_3_PARTID
.xword THR_4_PARTID, THR_5_PARTID, THR_6_PARTID, THR_7_PARTID
/*********************************************************************/
SECTION .Thr0_Priv_Sect TEXT_VA=0x00001bc000
attr_text {
Name = .Thr0_Priv_Sect ,
thr0_nz_ctx_tsb_2
VA = 0x0000001bc000 ,
RA = 0x0000c26000 ,
PA = 0x0002c26000 ,
TTE_Context = THR0_PCONTEXT_0 ,
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 1 ,
TTE_W = 1 ,
TTE_RSVD1 = 0 ,
end_label = Thr0_Priv_Sect_text_end ,
compressimage ,
}
.text
.global Thr0_Priv_Sect_text_begin
Thr0_Priv_Sect_text_begin:
setx THR0_PTRAP_TEXT_VA, %l0, %l1
wrpr %l1, %g0, %tba
rdpr %pstate, %l2
setx Thr0_user_code_entry, %l0, %l1
jmp %l1
wrpr %l2, 4, %pstate
EXIT_BAD
Thr0_Priv_Sect_text_end:
/*********************************************************************/
SECTION .Thr1_Priv_Sect TEXT_VA=0x0000034000
attr_text {
Name = .Thr1_Priv_Sect ,
thr1_nz_ctx_tsb_0
VA = 0x000000034000 ,
RA = 0x0004d4e000 ,
PA = 0x0004d4e000 ,
TTE_Context = THR1_PCONTEXT_0 ,
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr1_Priv_Sect_text_end ,
compressimage ,
}
.text
.global Thr1_Priv_Sect_text_begin
Thr1_Priv_Sect_text_begin:
setx THR1_PTRAP_TEXT_VA, %l0, %l1
wrpr %l1, %g0, %tba
rdpr %pstate, %l2
setx Thr1_user_code_entry, %l0, %l1
jmp %l1
wrpr %l2, 4, %pstate
EXIT_BAD
Thr1_Priv_Sect_text_end:
/*********************************************************************/
SECTION .Thr2_Priv_Sect TEXT_VA=0x000003e000
attr_text {
Name = .Thr2_Priv_Sect ,
thr2_nz_ctx_tsb_1
VA = 0x00000003e000 ,
RA = 0x0000d66000 ,
PA = 0x0006d66000 ,
TTE_Context = THR2_PCONTEXT_0 ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 1 ,
TTE_W = 1 ,
TTE_SW1 = 0 ,
TTE_SW0 = 0 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr2_Priv_Sect_text_end ,
compressimage ,
}
.text
.global Thr2_Priv_Sect_text_begin
Thr2_Priv_Sect_text_begin:
setx THR2_PTRAP_TEXT_VA, %l0, %l1
wrpr %l1, %g0, %tba
rdpr %pstate, %l2
setx Thr2_user_code_entry, %l0, %l1
jmp %l1
wrpr %l2, 4, %pstate
EXIT_BAD
Thr2_Priv_Sect_text_end:
/*********************************************************************/
SECTION .Thr3_Priv_Sect TEXT_VA=0x0000144000
attr_text {
Name = .Thr3_Priv_Sect ,
thr3_nz_ctx_tsb_1
VA = 0x000000144000 ,
RA = 0x0008db6000 ,
PA = 0x0008db6000 ,
TTE_Context = THR3_PCONTEXT_0 ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 1 ,
TTE_EP = 1 ,
TTE_W = 1 ,
TTE_SW1 = 0 ,
TTE_SW0 = 0 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr3_Priv_Sect_text_end ,
compressimage ,
}
.text
.global Thr3_Priv_Sect_text_begin
Thr3_Priv_Sect_text_begin:
setx THR3_PTRAP_TEXT_VA, %l0, %l1
wrpr %l1, %g0, %tba
rdpr %pstate, %l2
setx Thr3_user_code_entry, %l0, %l1
jmp %l1
wrpr %l2, 4, %pstate
EXIT_BAD
Thr3_Priv_Sect_text_end:
/*********************************************************************/
SECTION .Thr4_Priv_Sect TEXT_VA=0x00001e6000
attr_text {
Name = .Thr4_Priv_Sect ,
thr4_nz_ctx_tsb_1
VA = 0x0000001e6000 ,
RA = 0x000ad70000 ,
PA = 0x000ad70000 ,
TTE_Context = THR4_PCONTEXT_0 ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 1 ,
TTE_W = 0 ,
TTE_SW1 = 0 ,
TTE_SW0 = 0 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr4_Priv_Sect_text_end ,
compressimage ,
}
.text
.global Thr4_Priv_Sect_text_begin
Thr4_Priv_Sect_text_begin:
setx THR4_PTRAP_TEXT_VA, %l0, %l1
wrpr %l1, %g0, %tba
rdpr %pstate, %l2
setx Thr4_user_code_entry, %l0, %l1
jmp %l1
wrpr %l2, 4, %pstate
EXIT_BAD
Thr4_Priv_Sect_text_end:
/*********************************************************************/
SECTION .Thr5_Priv_Sect TEXT_VA=0x000000e000
attr_text {
Name = .Thr5_Priv_Sect ,
thr5_nz_ctx_tsb_0
VA = 0x00000000e000 ,
RA = 0x0000c14000 ,
PA = 0x000cc14000 ,
TTE_Context = THR5_PCONTEXT_0 ,
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 1 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr5_Priv_Sect_text_end ,
compressimage ,
}
.text
.global Thr5_Priv_Sect_text_begin
Thr5_Priv_Sect_text_begin:
setx THR5_PTRAP_TEXT_VA, %l0, %l1
wrpr %l1, %g0, %tba
rdpr %pstate, %l2
setx Thr5_user_code_entry, %l0, %l1
jmp %l1
wrpr %l2, 4, %pstate
EXIT_BAD
Thr5_Priv_Sect_text_end:
/*********************************************************************/
SECTION .Thr6_Priv_Sect TEXT_VA=0x0000102000
attr_text {
Name = .Thr6_Priv_Sect ,
thr6_nz_ctx_tsb_2
VA = 0x000000102000 ,
RA = 0x000ec84000 ,
PA = 0x000ec84000 ,
TTE_Context = THR6_PCONTEXT_0 ,
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr6_Priv_Sect_text_end ,
compressimage ,
}
.text
.global Thr6_Priv_Sect_text_begin
Thr6_Priv_Sect_text_begin:
setx THR6_PTRAP_TEXT_VA, %l0, %l1
wrpr %l1, %g0, %tba
rdpr %pstate, %l2
setx Thr6_user_code_entry, %l0, %l1
jmp %l1
wrpr %l2, 4, %pstate
EXIT_BAD
Thr6_Priv_Sect_text_end:
/*********************************************************************/
SECTION .Thr7_Priv_Sect TEXT_VA=0x000012a000
attr_text {
Name = .Thr7_Priv_Sect ,
thr7_nz_ctx_tsb_2
VA = 0x00000012a000 ,
RA = 0x0010d24000 ,
PA = 0x0010d24000 ,
TTE_Context = THR7_PCONTEXT_0 ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 1 ,
TTE_W = 0 ,
TTE_SW1 = 0 ,
TTE_SW0 = 0 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr7_Priv_Sect_text_end ,
compressimage ,
}
.text
.global Thr7_Priv_Sect_text_begin
Thr7_Priv_Sect_text_begin:
setx THR7_PTRAP_TEXT_VA, %l0, %l1
wrpr %l1, %g0, %tba
rdpr %pstate, %l2
setx Thr7_user_code_entry, %l0, %l1
jmp %l1
wrpr %l2, 4, %pstate
EXIT_BAD
Thr7_Priv_Sect_text_end:
/*********************************************************************/
SECTION .Thr0_Ptrap_Sect TEXT_VA=THR0_PTRAP_TEXT_VA
attr_text {
Name = .Thr0_Ptrap_Sect ,
thr0_z_ctx_tsb_0
VA = THR0_PTRAP_TEXT_VA ,
RA = THR0_PTRAP_TEXT_RA ,
PA = THR0_PTRAP_TEXT_PA ,
TTE_Context = NUCLEUS ,
TTE_V = 1 ,
TTE_Size = 1 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 1 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr0_Ptrap_Sect_text_end ,
compressimage ,
}
ta HP_BAD_TRAP /* 0x0 */
.align 32
ta HP_BAD_TRAP /* 0x1 */
.align 32
ta HP_BAD_TRAP /* 0x2 */
.align 32
ta HP_BAD_TRAP /* 0x3 */
.align 32
ta HP_BAD_TRAP /* 0x4 */
.align 32
ta HP_BAD_TRAP /* 0x5 */
.align 32
ta HP_BAD_TRAP /* 0x6 */
.align 32
ta HP_BAD_TRAP /* 0x7 */
.align 32
ta HP_BAD_TRAP /* 0x8 */
.align 32
ta HP_BAD_TRAP /* 0x9 */
.align 32
ta HP_BAD_TRAP /* 0xa */
.align 32
ta HP_BAD_TRAP /* 0xb */
.align 32
ta HP_BAD_TRAP /* 0xc */
.align 32
ta HP_BAD_TRAP /* 0xd */
.align 32
ta HP_BAD_TRAP /* 0xe */
.align 32
ta HP_BAD_TRAP /* 0xf */
.align 32
ta HP_BAD_TRAP /* 0x10 */
.align 32
ta HP_BAD_TRAP /* 0x11 */
.align 32
ta HP_BAD_TRAP /* 0x12 */
.align 32
ta HP_BAD_TRAP /* 0x13 */
.align 32
ta HP_BAD_TRAP /* 0x14 */
.align 32
ta HP_BAD_TRAP /* 0x15 */
.align 32
ta HP_BAD_TRAP /* 0x16 */
.align 32
ta HP_BAD_TRAP /* 0x17 */
.align 32
ta HP_BAD_TRAP /* 0x18 */
.align 32
ta HP_BAD_TRAP /* 0x19 */
.align 32
ta HP_BAD_TRAP /* 0x1a */
.align 32
ta HP_BAD_TRAP /* 0x1b */
.align 32
ta HP_BAD_TRAP /* 0x1c */
.align 32
ta HP_BAD_TRAP /* 0x1d */
.align 32
ta HP_BAD_TRAP /* 0x1e */
.align 32
ta HP_BAD_TRAP /* 0x1f */
.align 32
ta HP_BAD_TRAP /* 0x20 */
.align 32
ta HP_BAD_TRAP /* 0x21 */
.align 32
ta HP_BAD_TRAP /* 0x22 */
.align 32
ta HP_BAD_TRAP /* 0x23 */
.align 32
ta HP_BAD_TRAP /* 0x24 */
.align 32
ta HP_BAD_TRAP /* 0x25 */
.align 32
ta HP_BAD_TRAP /* 0x26 */
.align 32
ta HP_BAD_TRAP /* 0x27 */
.align 32
ta HP_BAD_TRAP /* 0x28 */
.align 32
ta HP_BAD_TRAP /* 0x29 */
.align 32
ta HP_BAD_TRAP /* 0x2a */
.align 32
ta HP_BAD_TRAP /* 0x2b */
.align 32
ta HP_BAD_TRAP /* 0x2c */
.align 32
ta HP_BAD_TRAP /* 0x2d */
.align 32
ta HP_BAD_TRAP /* 0x2e */
.align 32
ta HP_BAD_TRAP /* 0x2f */
.align 32
ta HP_BAD_TRAP /* 0x30 */
.align 32
ta HP_BAD_TRAP /* 0x31 */
.align 32
ta HP_BAD_TRAP /* 0x32 */
.align 32
ta HP_BAD_TRAP /* 0x33 */
.align 32
ta HP_BAD_TRAP /* 0x34 */
.align 32
ta HP_BAD_TRAP /* 0x35 */
.align 32
ta HP_BAD_TRAP /* 0x36 */
.align 32
ta HP_BAD_TRAP /* 0x37 */
.align 32
ta HP_BAD_TRAP /* 0x38 */
.align 32
ta HP_BAD_TRAP /* 0x39 */
.align 32
ta HP_BAD_TRAP /* 0x3a */
.align 32
ta HP_BAD_TRAP /* 0x3b */
.align 32
ta HP_BAD_TRAP /* 0x3c */
.align 32
ta HP_BAD_TRAP /* 0x3d */
.align 32
ta HP_BAD_TRAP /* 0x3e */
.align 32
ta HP_BAD_TRAP /* 0x3f */
.align 32
ta HP_BAD_TRAP /* 0x40 */
.align 32
ta HP_BAD_TRAP /* 0x41 */
.align 32
ta HP_BAD_TRAP /* 0x42 */
.align 32
ta HP_BAD_TRAP /* 0x43 */
.align 32
ta HP_BAD_TRAP /* 0x44 */
.align 32
ta HP_BAD_TRAP /* 0x45 */
.align 32
ta HP_BAD_TRAP /* 0x46 */
.align 32
ta HP_BAD_TRAP /* 0x47 */
.align 32
ta HP_BAD_TRAP /* 0x48 */
.align 32
ta HP_BAD_TRAP /* 0x49 */
.align 32
ta HP_BAD_TRAP /* 0x4a */
.align 32
ta HP_BAD_TRAP /* 0x4b */
.align 32
ta HP_BAD_TRAP /* 0x4c */
.align 32
ta HP_BAD_TRAP /* 0x4d */
.align 32
ta HP_BAD_TRAP /* 0x4e */
.align 32
ta HP_BAD_TRAP /* 0x4f */
.align 32
ta HP_BAD_TRAP /* 0x50 */
.align 32
ta HP_BAD_TRAP /* 0x51 */
.align 32
ta HP_BAD_TRAP /* 0x52 */
.align 32
ta HP_BAD_TRAP /* 0x53 */
.align 32
ta HP_BAD_TRAP /* 0x54 */
.align 32
ta HP_BAD_TRAP /* 0x55 */
.align 32
ta HP_BAD_TRAP /* 0x56 */
.align 32
ta HP_BAD_TRAP /* 0x57 */
.align 32
ta HP_BAD_TRAP /* 0x58 */
.align 32
ta HP_BAD_TRAP /* 0x59 */
.align 32
ta HP_BAD_TRAP /* 0x5a */
.align 32
ta HP_BAD_TRAP /* 0x5b */
.align 32
ta HP_BAD_TRAP /* 0x5c */
.align 32
ta HP_BAD_TRAP /* 0x5d */
.align 32
ta HP_BAD_TRAP /* 0x5e */
.align 32
ta HP_BAD_TRAP /* 0x5f */
.align 32
ta HP_BAD_TRAP /* 0x60 */
.align 32
ta HP_BAD_TRAP /* 0x61 */
.align 32
ta HP_BAD_TRAP /* 0x62 */
.align 32
ta HP_BAD_TRAP /* 0x63 */
.align 32
ta HP_BAD_TRAP /* 0x64 */
.align 32
ta HP_BAD_TRAP /* 0x65 */
.align 32
ta HP_BAD_TRAP /* 0x66 */
.align 32
ta HP_BAD_TRAP /* 0x67 */
.align 32
ta HP_BAD_TRAP /* 0x68 */
.align 32
ta HP_BAD_TRAP /* 0x69 */
.align 32
ta HP_BAD_TRAP /* 0x6a */
.align 32
ta HP_BAD_TRAP /* 0x6b */
.align 32
ta HP_BAD_TRAP /* 0x6c */
.align 32
ta HP_BAD_TRAP /* 0x6d */
.align 32
ta HP_BAD_TRAP /* 0x6e */
.align 32
ta HP_BAD_TRAP /* 0x6f */
.align 32
ta HP_BAD_TRAP /* 0x70 */
.align 32
ta HP_BAD_TRAP /* 0x71 */
.align 32
ta HP_BAD_TRAP /* 0x72 */
.align 32
ta HP_BAD_TRAP /* 0x73 */
.align 32
ta HP_BAD_TRAP /* 0x74 */
.align 32
ta HP_BAD_TRAP /* 0x75 */
.align 32
ta HP_BAD_TRAP /* 0x76 */
.align 32
ta HP_BAD_TRAP /* 0x77 */
.align 32
ta HP_BAD_TRAP /* 0x78 */
.align 32
ta HP_BAD_TRAP /* 0x79 */
.align 32
ta HP_BAD_TRAP /* 0x7a */
.align 32
ta HP_BAD_TRAP /* 0x7b */
.align 32
ta HP_BAD_TRAP /* 0x7c */
.align 32
ta HP_BAD_TRAP /* 0x7d */
.align 32
ta HP_BAD_TRAP /* 0x7e */
.align 32
ta HP_BAD_TRAP /* 0x7f */
.align 32
ta HP_BAD_TRAP /* 0x80 */
.align 32
ta HP_BAD_TRAP /* 0x81 */
.align 32
ta HP_BAD_TRAP /* 0x82 */
.align 32
ta HP_BAD_TRAP /* 0x83 */
.align 32
ta HP_BAD_TRAP /* 0x84 */
.align 32
ta HP_BAD_TRAP /* 0x85 */
.align 32
ta HP_BAD_TRAP /* 0x86 */
.align 32
ta HP_BAD_TRAP /* 0x87 */
.align 32
ta HP_BAD_TRAP /* 0x88 */
.align 32
ta HP_BAD_TRAP /* 0x89 */
.align 32
ta HP_BAD_TRAP /* 0x8a */
.align 32
ta HP_BAD_TRAP /* 0x8b */
.align 32
ta HP_BAD_TRAP /* 0x8c */
.align 32
ta HP_BAD_TRAP /* 0x8d */
.align 32
ta HP_BAD_TRAP /* 0x8e */
.align 32
ta HP_BAD_TRAP /* 0x8f */
.align 32
ta HP_BAD_TRAP /* 0x90 */
.align 32
ta HP_BAD_TRAP /* 0x91 */
.align 32
ta HP_BAD_TRAP /* 0x92 */
.align 32
ta HP_BAD_TRAP /* 0x93 */
.align 32
ta HP_BAD_TRAP /* 0x94 */
.align 32
ta HP_BAD_TRAP /* 0x95 */
.align 32
ta HP_BAD_TRAP /* 0x96 */
.align 32
ta HP_BAD_TRAP /* 0x97 */
.align 32
ta HP_BAD_TRAP /* 0x98 */
.align 32
ta HP_BAD_TRAP /* 0x99 */
.align 32
ta HP_BAD_TRAP /* 0x9a */
.align 32
ta HP_BAD_TRAP /* 0x9b */
.align 32
ta HP_BAD_TRAP /* 0x9c */
.align 32
ta HP_BAD_TRAP /* 0x9d */
.align 32
ta HP_BAD_TRAP /* 0x9e */
.align 32
ta HP_BAD_TRAP /* 0x9f */
.align 32
ta HP_BAD_TRAP /* 0xa0 */
.align 32
ta HP_BAD_TRAP /* 0xa1 */
.align 32
ta HP_BAD_TRAP /* 0xa2 */
.align 32
ta HP_BAD_TRAP /* 0xa3 */
.align 32
ta HP_BAD_TRAP /* 0xa4 */
.align 32
ta HP_BAD_TRAP /* 0xa5 */
.align 32
ta HP_BAD_TRAP /* 0xa6 */
.align 32
ta HP_BAD_TRAP /* 0xa7 */
.align 32
ta HP_BAD_TRAP /* 0xa8 */
.align 32
ta HP_BAD_TRAP /* 0xa9 */
.align 32
ta HP_BAD_TRAP /* 0xaa */
.align 32
ta HP_BAD_TRAP /* 0xab */
.align 32
ta HP_BAD_TRAP /* 0xac */
.align 32
ta HP_BAD_TRAP /* 0xad */
.align 32
ta HP_BAD_TRAP /* 0xae */
.align 32
ta HP_BAD_TRAP /* 0xaf */
.align 32
ta HP_BAD_TRAP /* 0xb0 */
.align 32
ta HP_BAD_TRAP /* 0xb1 */
.align 32
ta HP_BAD_TRAP /* 0xb2 */
.align 32
ta HP_BAD_TRAP /* 0xb3 */
.align 32
ta HP_BAD_TRAP /* 0xb4 */
.align 32
ta HP_BAD_TRAP /* 0xb5 */
.align 32
ta HP_BAD_TRAP /* 0xb6 */
.align 32
ta HP_BAD_TRAP /* 0xb7 */
.align 32
ta HP_BAD_TRAP /* 0xb8 */
.align 32
ta HP_BAD_TRAP /* 0xb9 */
.align 32
ta HP_BAD_TRAP /* 0xba */
.align 32
ta HP_BAD_TRAP /* 0xbb */
.align 32
ta HP_BAD_TRAP /* 0xbc */
.align 32
ta HP_BAD_TRAP /* 0xbd */
.align 32
ta HP_BAD_TRAP /* 0xbe */
.align 32
ta HP_BAD_TRAP /* 0xbf */
.align 32
ta HP_BAD_TRAP /* 0xc0 */
.align 32
ta HP_BAD_TRAP /* 0xc1 */
.align 32
ta HP_BAD_TRAP /* 0xc2 */
.align 32
ta HP_BAD_TRAP /* 0xc3 */
.align 32
ta HP_BAD_TRAP /* 0xc4 */
.align 32
ta HP_BAD_TRAP /* 0xc5 */
.align 32
ta HP_BAD_TRAP /* 0xc6 */
.align 32
ta HP_BAD_TRAP /* 0xc7 */
.align 32
ta HP_BAD_TRAP /* 0xc8 */
.align 32
ta HP_BAD_TRAP /* 0xc9 */
.align 32
ta HP_BAD_TRAP /* 0xca */
.align 32
ta HP_BAD_TRAP /* 0xcb */
.align 32
ta HP_BAD_TRAP /* 0xcc */
.align 32
ta HP_BAD_TRAP /* 0xcd */
.align 32
ta HP_BAD_TRAP /* 0xce */
.align 32
ta HP_BAD_TRAP /* 0xcf */
.align 32
ta HP_BAD_TRAP /* 0xd0 */
.align 32
ta HP_BAD_TRAP /* 0xd1 */
.align 32
ta HP_BAD_TRAP /* 0xd2 */
.align 32
ta HP_BAD_TRAP /* 0xd3 */
.align 32
ta HP_BAD_TRAP /* 0xd4 */
.align 32
ta HP_BAD_TRAP /* 0xd5 */
.align 32
ta HP_BAD_TRAP /* 0xd6 */
.align 32
ta HP_BAD_TRAP /* 0xd7 */
.align 32
ta HP_BAD_TRAP /* 0xd8 */
.align 32
ta HP_BAD_TRAP /* 0xd9 */
.align 32
ta HP_BAD_TRAP /* 0xda */
.align 32
ta HP_BAD_TRAP /* 0xdb */
.align 32
ta HP_BAD_TRAP /* 0xdc */
.align 32
ta HP_BAD_TRAP /* 0xdd */
.align 32
ta HP_BAD_TRAP /* 0xde */
.align 32
ta HP_BAD_TRAP /* 0xdf */
.align 32
ta HP_BAD_TRAP /* 0xe0 */
.align 32
ta HP_BAD_TRAP /* 0xe1 */
.align 32
ta HP_BAD_TRAP /* 0xe2 */
.align 32
ta HP_BAD_TRAP /* 0xe3 */
.align 32
ta HP_BAD_TRAP /* 0xe4 */
.align 32
ta HP_BAD_TRAP /* 0xe5 */
.align 32
ta HP_BAD_TRAP /* 0xe6 */
.align 32
ta HP_BAD_TRAP /* 0xe7 */
.align 32
ta HP_BAD_TRAP /* 0xe8 */
.align 32
ta HP_BAD_TRAP /* 0xe9 */
.align 32
ta HP_BAD_TRAP /* 0xea */
.align 32
ta HP_BAD_TRAP /* 0xeb */
.align 32
ta HP_BAD_TRAP /* 0xec */
.align 32
ta HP_BAD_TRAP /* 0xed */
.align 32
ta HP_BAD_TRAP /* 0xee */
.align 32
ta HP_BAD_TRAP /* 0xef */
.align 32
ta HP_BAD_TRAP /* 0xf0 */
.align 32
ta HP_BAD_TRAP /* 0xf1 */
.align 32
ta HP_BAD_TRAP /* 0xf2 */
.align 32
ta HP_BAD_TRAP /* 0xf3 */
.align 32
ta HP_BAD_TRAP /* 0xf4 */
.align 32
ta HP_BAD_TRAP /* 0xf5 */
.align 32
ta HP_BAD_TRAP /* 0xf6 */
.align 32
ta HP_BAD_TRAP /* 0xf7 */
.align 32
ta HP_BAD_TRAP /* 0xf8 */
.align 32
ta HP_BAD_TRAP /* 0xf9 */
.align 32
ta HP_BAD_TRAP /* 0xfa */
.align 32
ta HP_BAD_TRAP /* 0xfb */
.align 32
ta HP_BAD_TRAP /* 0xfc */
.align 32
ta HP_BAD_TRAP /* 0xfd */
.align 32
ta HP_BAD_TRAP /* 0xfe */
.align 32
ta HP_BAD_TRAP /* 0xff */
.align 32
ta HP_GOOD_TRAP /* 0x100 */
.align 32
ta HP_BAD_TRAP /* 0x101 */
.align 32
ta HP_BAD_TRAP /* 0x102 */
.align 32
ta HP_BAD_TRAP /* 0x103 */
.align 32
ta HP_BAD_TRAP /* 0x104 */
.align 32
ta HP_BAD_TRAP /* 0x105 */
.align 32
ta HP_BAD_TRAP /* 0x106 */
.align 32
ta HP_BAD_TRAP /* 0x107 */
.align 32
ta HP_BAD_TRAP /* 0x108 */
.align 32
ta HP_BAD_TRAP /* 0x109 */
.align 32
ta HP_BAD_TRAP /* 0x10a */
.align 32
ta HP_BAD_TRAP /* 0x10b */
.align 32
ta HP_BAD_TRAP /* 0x10c */
.align 32
ta HP_BAD_TRAP /* 0x10d */
.align 32
ta HP_BAD_TRAP /* 0x10e */
.align 32
ta HP_BAD_TRAP /* 0x10f */
.align 32
ta HPTRAP_I_DEMAP_ALL /* 0x110 */
done
.align 32
ta HPTRAP_I_DEMAP_PCTX /* 0x111 */
done
.align 32
ta HPTRAP_I_DEMAP_SCTX /* 0x112 */
done
.align 32
ta HPTRAP_I_DEMAP_NCTX /* 0x113 */
done
.align 32
ta HPTRAP_I_DEMAP_PAGE /* 0x114 */
done
.align 32
ta HPTRAP_I_DEMAP_RPAGE /* 0x115 */
done
.align 32
ta HPTRAP_I_DEMAP_REAL /* 0x116 */
done
.align 32
ta HPTRAP_D_DEMAP_ALL /* 0x117 */
done
.align 32
ta HPTRAP_D_DEMAP_PCTX /* 0x118 */
done
.align 32
ta HPTRAP_D_DEMAP_SCTX /* 0x119 */
done
.align 32
ta HPTRAP_D_DEMAP_NCTX /* 0x11a */
done
.align 32
ta HPTRAP_D_DEMAP_PAGE /* 0x11b */
done
.align 32
ta HPTRAP_D_DEMAP_RPAGE /* 0x11c */
done
.align 32
ta HPTRAP_D_DEMAP_REAL /* 0x11d */
done
.align 32
ta HP_BAD_TRAP /* 0x11e */
.align 32
ta HP_BAD_TRAP /* 0x11f */
.align 32
sllx %i7, 63, %g1
brz %g1, 1f
nop
rdpr %tnpc, %g2
add %g2, 8, %g2
wrpr %g2, %tnpc
1:
done
.align 32
ta HPTRAP_CHANGE_PID /* 0x121 */
done
.align 32
ta HPTRAP_INCR_TSB_SIZE /* 0x122 */
done
.align 32 /* 0x123 */
ldxa [%l1] 0x14, %l2
done
.align 32 /* 0x124 */
ldxa [%l1] 0x1c, %l2
done
.align 32 /* 0x125 */
ldda [%l1] 0x26, %l2
done
.align 32 /* 0x126 */
ldda [%l1] 0x2e, %l2
done
.align 32
ta HPTRAP_CLEAR_LSU_IMMU /* 0x127 */
done
.align 32
ta HPTRAP_CLEAR_LSU_DMMU /* 0x128 */
done
.align 32
ta HPTRAP_DELAY_LOOP /* 0x129 */
done
.align 32
ta HPTRAP_SEM_LOCK /* 0x12a */
done
.align 32
ta HPTRAP_SEM_RELEASE /* 0x12b */
done
.align 32
ta HPTRAP_SEM_GET /* 0x12c */
done
.align 32
ta HPTRAP_SEM_SET /* 0x12d */
done
.align 32
ta HP_BAD_TRAP /* 0x12e */
.align 32
ta HP_BAD_TRAP /* 0x12f */
.align 32
ta HP_BAD_TRAP /* 0x130 */
.align 32
ta HP_BAD_TRAP /* 0x131 */
.align 32
ta HP_BAD_TRAP /* 0x132 */
.align 32
ta HP_BAD_TRAP /* 0x133 */
.align 32
ta HP_BAD_TRAP /* 0x134 */
.align 32
ta HP_BAD_TRAP /* 0x135 */
.align 32
ta HP_BAD_TRAP /* 0x136 */
.align 32
ta HP_BAD_TRAP /* 0x137 */
.align 32
ta HP_BAD_TRAP /* 0x138 */
.align 32
ta HP_BAD_TRAP /* 0x139 */
.align 32
ta HP_BAD_TRAP /* 0x13a */
.align 32
ta HP_BAD_TRAP /* 0x13b */
.align 32
ta HP_BAD_TRAP /* 0x13c */
.align 32
ta HP_BAD_TRAP /* 0x13d */
.align 32
ta HP_BAD_TRAP /* 0x13e */
.align 32
ta HP_BAD_TRAP /* 0x13f */
.align 32
ta HP_BAD_TRAP /* 0x140 */
.align 32
ta HP_BAD_TRAP /* 0x141 */
.align 32
ta HP_BAD_TRAP /* 0x142 */
.align 32
ta HP_BAD_TRAP /* 0x143 */
.align 32
ta HP_BAD_TRAP /* 0x144 */
.align 32
ta HP_BAD_TRAP /* 0x145 */
.align 32
ta HP_BAD_TRAP /* 0x146 */
.align 32
ta HP_BAD_TRAP /* 0x147 */
.align 32
ta HP_BAD_TRAP /* 0x148 */
.align 32
ta HP_BAD_TRAP /* 0x149 */
.align 32
ta HP_BAD_TRAP /* 0x14a */
.align 32
ta HP_BAD_TRAP /* 0x14b */
.align 32
ta HP_BAD_TRAP /* 0x14c */
.align 32
ta HP_BAD_TRAP /* 0x14d */
.align 32
ta HP_BAD_TRAP /* 0x14e */
.align 32
ta HP_BAD_TRAP /* 0x14f */
.align 32
ta HP_BAD_TRAP /* 0x150 */
.align 32
ta HP_BAD_TRAP /* 0x151 */
.align 32
ta HP_BAD_TRAP /* 0x152 */
.align 32
ta HP_BAD_TRAP /* 0x153 */
.align 32
ta HP_BAD_TRAP /* 0x154 */
.align 32
ta HP_BAD_TRAP /* 0x155 */
.align 32
ta HP_BAD_TRAP /* 0x156 */
.align 32
ta HP_BAD_TRAP /* 0x157 */
.align 32
ta HP_BAD_TRAP /* 0x158 */
.align 32
ta HP_BAD_TRAP /* 0x159 */
.align 32
ta HP_BAD_TRAP /* 0x15a */
.align 32
ta HP_BAD_TRAP /* 0x15b */
.align 32
ta HP_BAD_TRAP /* 0x15c */
.align 32
ta HP_BAD_TRAP /* 0x15d */
.align 32
ta HP_BAD_TRAP /* 0x15e */
.align 32
ta HP_BAD_TRAP /* 0x15f */
.align 32
ta HP_BAD_TRAP /* 0x160 */
.align 32
ta HP_BAD_TRAP /* 0x161 */
.align 32
ta HP_BAD_TRAP /* 0x162 */
.align 32
ta HP_BAD_TRAP /* 0x163 */
.align 32
ta HP_BAD_TRAP /* 0x164 */
.align 32
ta HP_BAD_TRAP /* 0x165 */
.align 32
ta HP_BAD_TRAP /* 0x166 */
.align 32
ta HP_BAD_TRAP /* 0x167 */
.align 32
ta HP_BAD_TRAP /* 0x168 */
.align 32
ta HP_BAD_TRAP /* 0x169 */
.align 32
ta HP_BAD_TRAP /* 0x16a */
.align 32
ta HP_BAD_TRAP /* 0x16b */
.align 32
ta HP_BAD_TRAP /* 0x16c */
.align 32
ta HP_BAD_TRAP /* 0x16d */
.align 32
ta HP_BAD_TRAP /* 0x16e */
.align 32
ta HP_BAD_TRAP /* 0x16f */
.align 32
ta HP_BAD_TRAP /* 0x170 */
.align 32
ta HP_BAD_TRAP /* 0x171 */
.align 32
ta HP_BAD_TRAP /* 0x172 */
.align 32
ta HP_BAD_TRAP /* 0x173 */
.align 32
ta HP_BAD_TRAP /* 0x174 */
.align 32
ta HP_BAD_TRAP /* 0x175 */
.align 32
ta HP_BAD_TRAP /* 0x176 */
.align 32
ta HP_BAD_TRAP /* 0x177 */
.align 32
ta HP_BAD_TRAP /* 0x178 */
.align 32
ta HP_BAD_TRAP /* 0x179 */
.align 32
ta HP_BAD_TRAP /* 0x17a */
.align 32
ta HP_BAD_TRAP /* 0x17b */
.align 32
ta HP_BAD_TRAP /* 0x17c */
.align 32
ta HP_BAD_TRAP /* 0x17d */
.align 32
ta HP_BAD_TRAP /* 0x17e */
.align 32
ta HP_BAD_TRAP /* 0x17f */
.align 32
Thr0_Ptrap_Sect_text_end:
/*********************************************************************/
SECTION .Thr1_Ptrap_Sect TEXT_VA=THR1_PTRAP_TEXT_VA
attr_text {
Name = .Thr1_Ptrap_Sect ,
thr1_z_ctx_tsb_0
VA = THR1_PTRAP_TEXT_VA ,
RA = THR1_PTRAP_TEXT_RA ,
PA = THR1_PTRAP_TEXT_PA ,
TTE_Context = NUCLEUS ,
TTE_V = 1 ,
TTE_Size = 1 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 1 ,
TTE_W = 1 ,
TTE_RSVD1 = 0 ,
end_label = Thr1_Ptrap_Sect_text_end ,
compressimage ,
}
ta HP_BAD_TRAP /* 0x0 */
.align 32
ta HP_BAD_TRAP /* 0x1 */
.align 32
ta HP_BAD_TRAP /* 0x2 */
.align 32
ta HP_BAD_TRAP /* 0x3 */
.align 32
ta HP_BAD_TRAP /* 0x4 */
.align 32
ta HP_BAD_TRAP /* 0x5 */
.align 32
ta HP_BAD_TRAP /* 0x6 */
.align 32
ta HP_BAD_TRAP /* 0x7 */
.align 32
ta HP_BAD_TRAP /* 0x8 */
.align 32
ta HP_BAD_TRAP /* 0x9 */
.align 32
ta HP_BAD_TRAP /* 0xa */
.align 32
ta HP_BAD_TRAP /* 0xb */
.align 32
ta HP_BAD_TRAP /* 0xc */
.align 32
ta HP_BAD_TRAP /* 0xd */
.align 32
ta HP_BAD_TRAP /* 0xe */
.align 32
ta HP_BAD_TRAP /* 0xf */
.align 32
ta HP_BAD_TRAP /* 0x10 */
.align 32
ta HP_BAD_TRAP /* 0x11 */
.align 32
ta HP_BAD_TRAP /* 0x12 */
.align 32
ta HP_BAD_TRAP /* 0x13 */
.align 32
ta HP_BAD_TRAP /* 0x14 */
.align 32
ta HP_BAD_TRAP /* 0x15 */
.align 32
ta HP_BAD_TRAP /* 0x16 */
.align 32
ta HP_BAD_TRAP /* 0x17 */
.align 32
ta HP_BAD_TRAP /* 0x18 */
.align 32
ta HP_BAD_TRAP /* 0x19 */
.align 32
ta HP_BAD_TRAP /* 0x1a */
.align 32
ta HP_BAD_TRAP /* 0x1b */
.align 32
ta HP_BAD_TRAP /* 0x1c */
.align 32
ta HP_BAD_TRAP /* 0x1d */
.align 32
ta HP_BAD_TRAP /* 0x1e */
.align 32
ta HP_BAD_TRAP /* 0x1f */
.align 32
ta HP_BAD_TRAP /* 0x20 */
.align 32
ta HP_BAD_TRAP /* 0x21 */
.align 32
ta HP_BAD_TRAP /* 0x22 */
.align 32
ta HP_BAD_TRAP /* 0x23 */
.align 32
ta HP_BAD_TRAP /* 0x24 */
.align 32
ta HP_BAD_TRAP /* 0x25 */
.align 32
ta HP_BAD_TRAP /* 0x26 */
.align 32
ta HP_BAD_TRAP /* 0x27 */
.align 32
ta HP_BAD_TRAP /* 0x28 */
.align 32
ta HP_BAD_TRAP /* 0x29 */
.align 32
ta HP_BAD_TRAP /* 0x2a */
.align 32
ta HP_BAD_TRAP /* 0x2b */
.align 32
ta HP_BAD_TRAP /* 0x2c */
.align 32
ta HP_BAD_TRAP /* 0x2d */
.align 32
ta HP_BAD_TRAP /* 0x2e */
.align 32
ta HP_BAD_TRAP /* 0x2f */
.align 32
ta HP_BAD_TRAP /* 0x30 */
.align 32
ta HP_BAD_TRAP /* 0x31 */
.align 32
ta HP_BAD_TRAP /* 0x32 */
.align 32
ta HP_BAD_TRAP /* 0x33 */
.align 32
ta HP_BAD_TRAP /* 0x34 */
.align 32
ta HP_BAD_TRAP /* 0x35 */
.align 32
ta HP_BAD_TRAP /* 0x36 */
.align 32
ta HP_BAD_TRAP /* 0x37 */
.align 32
ta HP_BAD_TRAP /* 0x38 */
.align 32
ta HP_BAD_TRAP /* 0x39 */
.align 32
ta HP_BAD_TRAP /* 0x3a */
.align 32
ta HP_BAD_TRAP /* 0x3b */
.align 32
ta HP_BAD_TRAP /* 0x3c */
.align 32
ta HP_BAD_TRAP /* 0x3d */
.align 32
ta HP_BAD_TRAP /* 0x3e */
.align 32
ta HP_BAD_TRAP /* 0x3f */
.align 32
ta HP_BAD_TRAP /* 0x40 */
.align 32
ta HP_BAD_TRAP /* 0x41 */
.align 32
ta HP_BAD_TRAP /* 0x42 */
.align 32
ta HP_BAD_TRAP /* 0x43 */
.align 32
ta HP_BAD_TRAP /* 0x44 */
.align 32
ta HP_BAD_TRAP /* 0x45 */
.align 32
ta HP_BAD_TRAP /* 0x46 */
.align 32
ta HP_BAD_TRAP /* 0x47 */
.align 32
ta HP_BAD_TRAP /* 0x48 */
.align 32
ta HP_BAD_TRAP /* 0x49 */
.align 32
ta HP_BAD_TRAP /* 0x4a */
.align 32
ta HP_BAD_TRAP /* 0x4b */
.align 32
ta HP_BAD_TRAP /* 0x4c */
.align 32
ta HP_BAD_TRAP /* 0x4d */
.align 32
ta HP_BAD_TRAP /* 0x4e */
.align 32
ta HP_BAD_TRAP /* 0x4f */
.align 32
ta HP_BAD_TRAP /* 0x50 */
.align 32
ta HP_BAD_TRAP /* 0x51 */
.align 32
ta HP_BAD_TRAP /* 0x52 */
.align 32
ta HP_BAD_TRAP /* 0x53 */
.align 32
ta HP_BAD_TRAP /* 0x54 */
.align 32
ta HP_BAD_TRAP /* 0x55 */
.align 32
ta HP_BAD_TRAP /* 0x56 */
.align 32
ta HP_BAD_TRAP /* 0x57 */
.align 32
ta HP_BAD_TRAP /* 0x58 */
.align 32
ta HP_BAD_TRAP /* 0x59 */
.align 32
ta HP_BAD_TRAP /* 0x5a */
.align 32
ta HP_BAD_TRAP /* 0x5b */
.align 32
ta HP_BAD_TRAP /* 0x5c */
.align 32
ta HP_BAD_TRAP /* 0x5d */
.align 32
ta HP_BAD_TRAP /* 0x5e */
.align 32
ta HP_BAD_TRAP /* 0x5f */
.align 32
ta HP_BAD_TRAP /* 0x60 */
.align 32
ta HP_BAD_TRAP /* 0x61 */
.align 32
ta HP_BAD_TRAP /* 0x62 */
.align 32
ta HP_BAD_TRAP /* 0x63 */
.align 32
ta HP_BAD_TRAP /* 0x64 */
.align 32
ta HP_BAD_TRAP /* 0x65 */
.align 32
ta HP_BAD_TRAP /* 0x66 */
.align 32
ta HP_BAD_TRAP /* 0x67 */
.align 32
ta HP_BAD_TRAP /* 0x68 */
.align 32
ta HP_BAD_TRAP /* 0x69 */
.align 32
ta HP_BAD_TRAP /* 0x6a */
.align 32
ta HP_BAD_TRAP /* 0x6b */
.align 32
ta HP_BAD_TRAP /* 0x6c */
.align 32
ta HP_BAD_TRAP /* 0x6d */
.align 32
ta HP_BAD_TRAP /* 0x6e */
.align 32
ta HP_BAD_TRAP /* 0x6f */
.align 32
ta HP_BAD_TRAP /* 0x70 */
.align 32
ta HP_BAD_TRAP /* 0x71 */
.align 32
ta HP_BAD_TRAP /* 0x72 */
.align 32
ta HP_BAD_TRAP /* 0x73 */
.align 32
ta HP_BAD_TRAP /* 0x74 */
.align 32
ta HP_BAD_TRAP /* 0x75 */
.align 32
ta HP_BAD_TRAP /* 0x76 */
.align 32
ta HP_BAD_TRAP /* 0x77 */
.align 32
ta HP_BAD_TRAP /* 0x78 */
.align 32
ta HP_BAD_TRAP /* 0x79 */
.align 32
ta HP_BAD_TRAP /* 0x7a */
.align 32
ta HP_BAD_TRAP /* 0x7b */
.align 32
ta HP_BAD_TRAP /* 0x7c */
.align 32
ta HP_BAD_TRAP /* 0x7d */
.align 32
ta HP_BAD_TRAP /* 0x7e */
.align 32
ta HP_BAD_TRAP /* 0x7f */
.align 32
ta HP_BAD_TRAP /* 0x80 */
.align 32
ta HP_BAD_TRAP /* 0x81 */
.align 32
ta HP_BAD_TRAP /* 0x82 */
.align 32
ta HP_BAD_TRAP /* 0x83 */
.align 32
ta HP_BAD_TRAP /* 0x84 */
.align 32
ta HP_BAD_TRAP /* 0x85 */
.align 32
ta HP_BAD_TRAP /* 0x86 */
.align 32
ta HP_BAD_TRAP /* 0x87 */
.align 32
ta HP_BAD_TRAP /* 0x88 */
.align 32
ta HP_BAD_TRAP /* 0x89 */
.align 32
ta HP_BAD_TRAP /* 0x8a */
.align 32
ta HP_BAD_TRAP /* 0x8b */
.align 32
ta HP_BAD_TRAP /* 0x8c */
.align 32
ta HP_BAD_TRAP /* 0x8d */
.align 32
ta HP_BAD_TRAP /* 0x8e */
.align 32
ta HP_BAD_TRAP /* 0x8f */
.align 32
ta HP_BAD_TRAP /* 0x90 */
.align 32
ta HP_BAD_TRAP /* 0x91 */
.align 32
ta HP_BAD_TRAP /* 0x92 */
.align 32
ta HP_BAD_TRAP /* 0x93 */
.align 32
ta HP_BAD_TRAP /* 0x94 */
.align 32
ta HP_BAD_TRAP /* 0x95 */
.align 32
ta HP_BAD_TRAP /* 0x96 */
.align 32
ta HP_BAD_TRAP /* 0x97 */
.align 32
ta HP_BAD_TRAP /* 0x98 */
.align 32
ta HP_BAD_TRAP /* 0x99 */
.align 32
ta HP_BAD_TRAP /* 0x9a */
.align 32
ta HP_BAD_TRAP /* 0x9b */
.align 32
ta HP_BAD_TRAP /* 0x9c */
.align 32
ta HP_BAD_TRAP /* 0x9d */
.align 32
ta HP_BAD_TRAP /* 0x9e */
.align 32
ta HP_BAD_TRAP /* 0x9f */
.align 32
ta HP_BAD_TRAP /* 0xa0 */
.align 32
ta HP_BAD_TRAP /* 0xa1 */
.align 32
ta HP_BAD_TRAP /* 0xa2 */
.align 32
ta HP_BAD_TRAP /* 0xa3 */
.align 32
ta HP_BAD_TRAP /* 0xa4 */
.align 32
ta HP_BAD_TRAP /* 0xa5 */
.align 32
ta HP_BAD_TRAP /* 0xa6 */
.align 32
ta HP_BAD_TRAP /* 0xa7 */
.align 32
ta HP_BAD_TRAP /* 0xa8 */
.align 32
ta HP_BAD_TRAP /* 0xa9 */
.align 32
ta HP_BAD_TRAP /* 0xaa */
.align 32
ta HP_BAD_TRAP /* 0xab */
.align 32
ta HP_BAD_TRAP /* 0xac */
.align 32
ta HP_BAD_TRAP /* 0xad */
.align 32
ta HP_BAD_TRAP /* 0xae */
.align 32
ta HP_BAD_TRAP /* 0xaf */
.align 32
ta HP_BAD_TRAP /* 0xb0 */
.align 32
ta HP_BAD_TRAP /* 0xb1 */
.align 32
ta HP_BAD_TRAP /* 0xb2 */
.align 32
ta HP_BAD_TRAP /* 0xb3 */
.align 32
ta HP_BAD_TRAP /* 0xb4 */
.align 32
ta HP_BAD_TRAP /* 0xb5 */
.align 32
ta HP_BAD_TRAP /* 0xb6 */
.align 32
ta HP_BAD_TRAP /* 0xb7 */
.align 32
ta HP_BAD_TRAP /* 0xb8 */
.align 32
ta HP_BAD_TRAP /* 0xb9 */
.align 32
ta HP_BAD_TRAP /* 0xba */
.align 32
ta HP_BAD_TRAP /* 0xbb */
.align 32
ta HP_BAD_TRAP /* 0xbc */
.align 32
ta HP_BAD_TRAP /* 0xbd */
.align 32
ta HP_BAD_TRAP /* 0xbe */
.align 32
ta HP_BAD_TRAP /* 0xbf */
.align 32
ta HP_BAD_TRAP /* 0xc0 */
.align 32
ta HP_BAD_TRAP /* 0xc1 */
.align 32
ta HP_BAD_TRAP /* 0xc2 */
.align 32
ta HP_BAD_TRAP /* 0xc3 */
.align 32
ta HP_BAD_TRAP /* 0xc4 */
.align 32
ta HP_BAD_TRAP /* 0xc5 */
.align 32
ta HP_BAD_TRAP /* 0xc6 */
.align 32
ta HP_BAD_TRAP /* 0xc7 */
.align 32
ta HP_BAD_TRAP /* 0xc8 */
.align 32
ta HP_BAD_TRAP /* 0xc9 */
.align 32
ta HP_BAD_TRAP /* 0xca */
.align 32
ta HP_BAD_TRAP /* 0xcb */
.align 32
ta HP_BAD_TRAP /* 0xcc */
.align 32
ta HP_BAD_TRAP /* 0xcd */
.align 32
ta HP_BAD_TRAP /* 0xce */
.align 32
ta HP_BAD_TRAP /* 0xcf */
.align 32
ta HP_BAD_TRAP /* 0xd0 */
.align 32
ta HP_BAD_TRAP /* 0xd1 */
.align 32
ta HP_BAD_TRAP /* 0xd2 */
.align 32
ta HP_BAD_TRAP /* 0xd3 */
.align 32
ta HP_BAD_TRAP /* 0xd4 */
.align 32
ta HP_BAD_TRAP /* 0xd5 */
.align 32
ta HP_BAD_TRAP /* 0xd6 */
.align 32
ta HP_BAD_TRAP /* 0xd7 */
.align 32
ta HP_BAD_TRAP /* 0xd8 */
.align 32
ta HP_BAD_TRAP /* 0xd9 */
.align 32
ta HP_BAD_TRAP /* 0xda */
.align 32
ta HP_BAD_TRAP /* 0xdb */
.align 32
ta HP_BAD_TRAP /* 0xdc */
.align 32
ta HP_BAD_TRAP /* 0xdd */
.align 32
ta HP_BAD_TRAP /* 0xde */
.align 32
ta HP_BAD_TRAP /* 0xdf */
.align 32
ta HP_BAD_TRAP /* 0xe0 */
.align 32
ta HP_BAD_TRAP /* 0xe1 */
.align 32
ta HP_BAD_TRAP /* 0xe2 */
.align 32
ta HP_BAD_TRAP /* 0xe3 */
.align 32
ta HP_BAD_TRAP /* 0xe4 */
.align 32
ta HP_BAD_TRAP /* 0xe5 */
.align 32
ta HP_BAD_TRAP /* 0xe6 */
.align 32
ta HP_BAD_TRAP /* 0xe7 */
.align 32
ta HP_BAD_TRAP /* 0xe8 */
.align 32
ta HP_BAD_TRAP /* 0xe9 */
.align 32
ta HP_BAD_TRAP /* 0xea */
.align 32
ta HP_BAD_TRAP /* 0xeb */
.align 32
ta HP_BAD_TRAP /* 0xec */
.align 32
ta HP_BAD_TRAP /* 0xed */
.align 32
ta HP_BAD_TRAP /* 0xee */
.align 32
ta HP_BAD_TRAP /* 0xef */
.align 32
ta HP_BAD_TRAP /* 0xf0 */
.align 32
ta HP_BAD_TRAP /* 0xf1 */
.align 32
ta HP_BAD_TRAP /* 0xf2 */
.align 32
ta HP_BAD_TRAP /* 0xf3 */
.align 32
ta HP_BAD_TRAP /* 0xf4 */
.align 32
ta HP_BAD_TRAP /* 0xf5 */
.align 32
ta HP_BAD_TRAP /* 0xf6 */
.align 32
ta HP_BAD_TRAP /* 0xf7 */
.align 32
ta HP_BAD_TRAP /* 0xf8 */
.align 32
ta HP_BAD_TRAP /* 0xf9 */
.align 32
ta HP_BAD_TRAP /* 0xfa */
.align 32
ta HP_BAD_TRAP /* 0xfb */
.align 32
ta HP_BAD_TRAP /* 0xfc */
.align 32
ta HP_BAD_TRAP /* 0xfd */
.align 32
ta HP_BAD_TRAP /* 0xfe */
.align 32
ta HP_BAD_TRAP /* 0xff */
.align 32
ta HP_GOOD_TRAP /* 0x100 */
.align 32
ta HP_BAD_TRAP /* 0x101 */
.align 32
ta HP_BAD_TRAP /* 0x102 */
.align 32
ta HP_BAD_TRAP /* 0x103 */
.align 32
ta HP_BAD_TRAP /* 0x104 */
.align 32
ta HP_BAD_TRAP /* 0x105 */
.align 32
ta HP_BAD_TRAP /* 0x106 */
.align 32
ta HP_BAD_TRAP /* 0x107 */
.align 32
ta HP_BAD_TRAP /* 0x108 */
.align 32
ta HP_BAD_TRAP /* 0x109 */
.align 32
ta HP_BAD_TRAP /* 0x10a */
.align 32
ta HP_BAD_TRAP /* 0x10b */
.align 32
ta HP_BAD_TRAP /* 0x10c */
.align 32
ta HP_BAD_TRAP /* 0x10d */
.align 32
ta HP_BAD_TRAP /* 0x10e */
.align 32
ta HP_BAD_TRAP /* 0x10f */
.align 32
ta HPTRAP_I_DEMAP_ALL /* 0x110 */
done
.align 32
ta HPTRAP_I_DEMAP_PCTX /* 0x111 */
done
.align 32
ta HPTRAP_I_DEMAP_SCTX /* 0x112 */
done
.align 32
ta HPTRAP_I_DEMAP_NCTX /* 0x113 */
done
.align 32
ta HPTRAP_I_DEMAP_PAGE /* 0x114 */
done
.align 32
ta HPTRAP_I_DEMAP_RPAGE /* 0x115 */
done
.align 32
ta HPTRAP_I_DEMAP_REAL /* 0x116 */
done
.align 32
ta HPTRAP_D_DEMAP_ALL /* 0x117 */
done
.align 32
ta HPTRAP_D_DEMAP_PCTX /* 0x118 */
done
.align 32
ta HPTRAP_D_DEMAP_SCTX /* 0x119 */
done
.align 32
ta HPTRAP_D_DEMAP_NCTX /* 0x11a */
done
.align 32
ta HPTRAP_D_DEMAP_PAGE /* 0x11b */
done
.align 32
ta HPTRAP_D_DEMAP_RPAGE /* 0x11c */
done
.align 32
ta HPTRAP_D_DEMAP_REAL /* 0x11d */
done
.align 32
ta HP_BAD_TRAP /* 0x11e */
.align 32
ta HP_BAD_TRAP /* 0x11f */
.align 32
sllx %i7, 63, %g1
brz %g1, 1f
nop
rdpr %tnpc, %g2
add %g2, 8, %g2
wrpr %g2, %tnpc
1:
done
.align 32
ta HPTRAP_CHANGE_PID /* 0x121 */
done
.align 32
ta HPTRAP_INCR_TSB_SIZE /* 0x122 */
done
.align 32 /* 0x123 */
ldxa [%l1] 0x14, %l2
done
.align 32 /* 0x124 */
ldxa [%l1] 0x1c, %l2
done
.align 32 /* 0x125 */
ldda [%l1] 0x26, %l2
done
.align 32 /* 0x126 */
ldda [%l1] 0x2e, %l2
done
.align 32
ta HPTRAP_CLEAR_LSU_IMMU /* 0x127 */
done
.align 32
ta HPTRAP_CLEAR_LSU_DMMU /* 0x128 */
done
.align 32
ta HPTRAP_DELAY_LOOP /* 0x129 */
done
.align 32
ta HPTRAP_SEM_LOCK /* 0x12a */
done
.align 32
ta HPTRAP_SEM_RELEASE /* 0x12b */
done
.align 32
ta HPTRAP_SEM_GET /* 0x12c */
done
.align 32
ta HPTRAP_SEM_SET /* 0x12d */
done
.align 32
ta HP_BAD_TRAP /* 0x12e */
.align 32
ta HP_BAD_TRAP /* 0x12f */
.align 32
ta HP_BAD_TRAP /* 0x130 */
.align 32
ta HP_BAD_TRAP /* 0x131 */
.align 32
ta HP_BAD_TRAP /* 0x132 */
.align 32
ta HP_BAD_TRAP /* 0x133 */
.align 32
ta HP_BAD_TRAP /* 0x134 */
.align 32
ta HP_BAD_TRAP /* 0x135 */
.align 32
ta HP_BAD_TRAP /* 0x136 */
.align 32
ta HP_BAD_TRAP /* 0x137 */
.align 32
ta HP_BAD_TRAP /* 0x138 */
.align 32
ta HP_BAD_TRAP /* 0x139 */
.align 32
ta HP_BAD_TRAP /* 0x13a */
.align 32
ta HP_BAD_TRAP /* 0x13b */
.align 32
ta HP_BAD_TRAP /* 0x13c */
.align 32
ta HP_BAD_TRAP /* 0x13d */
.align 32
ta HP_BAD_TRAP /* 0x13e */
.align 32
ta HP_BAD_TRAP /* 0x13f */
.align 32
ta HP_BAD_TRAP /* 0x140 */
.align 32
ta HP_BAD_TRAP /* 0x141 */
.align 32
ta HP_BAD_TRAP /* 0x142 */
.align 32
ta HP_BAD_TRAP /* 0x143 */
.align 32
ta HP_BAD_TRAP /* 0x144 */
.align 32
ta HP_BAD_TRAP /* 0x145 */
.align 32
ta HP_BAD_TRAP /* 0x146 */
.align 32
ta HP_BAD_TRAP /* 0x147 */
.align 32
ta HP_BAD_TRAP /* 0x148 */
.align 32
ta HP_BAD_TRAP /* 0x149 */
.align 32
ta HP_BAD_TRAP /* 0x14a */
.align 32
ta HP_BAD_TRAP /* 0x14b */
.align 32
ta HP_BAD_TRAP /* 0x14c */
.align 32
ta HP_BAD_TRAP /* 0x14d */
.align 32
ta HP_BAD_TRAP /* 0x14e */
.align 32
ta HP_BAD_TRAP /* 0x14f */
.align 32
ta HP_BAD_TRAP /* 0x150 */
.align 32
ta HP_BAD_TRAP /* 0x151 */
.align 32
ta HP_BAD_TRAP /* 0x152 */
.align 32
ta HP_BAD_TRAP /* 0x153 */
.align 32
ta HP_BAD_TRAP /* 0x154 */
.align 32
ta HP_BAD_TRAP /* 0x155 */
.align 32
ta HP_BAD_TRAP /* 0x156 */
.align 32
ta HP_BAD_TRAP /* 0x157 */
.align 32
ta HP_BAD_TRAP /* 0x158 */
.align 32
ta HP_BAD_TRAP /* 0x159 */
.align 32
ta HP_BAD_TRAP /* 0x15a */
.align 32
ta HP_BAD_TRAP /* 0x15b */
.align 32
ta HP_BAD_TRAP /* 0x15c */
.align 32
ta HP_BAD_TRAP /* 0x15d */
.align 32
ta HP_BAD_TRAP /* 0x15e */
.align 32
ta HP_BAD_TRAP /* 0x15f */
.align 32
ta HP_BAD_TRAP /* 0x160 */
.align 32
ta HP_BAD_TRAP /* 0x161 */
.align 32
ta HP_BAD_TRAP /* 0x162 */
.align 32
ta HP_BAD_TRAP /* 0x163 */
.align 32
ta HP_BAD_TRAP /* 0x164 */
.align 32
ta HP_BAD_TRAP /* 0x165 */
.align 32
ta HP_BAD_TRAP /* 0x166 */
.align 32
ta HP_BAD_TRAP /* 0x167 */
.align 32
ta HP_BAD_TRAP /* 0x168 */
.align 32
ta HP_BAD_TRAP /* 0x169 */
.align 32
ta HP_BAD_TRAP /* 0x16a */
.align 32
ta HP_BAD_TRAP /* 0x16b */
.align 32
ta HP_BAD_TRAP /* 0x16c */
.align 32
ta HP_BAD_TRAP /* 0x16d */
.align 32
ta HP_BAD_TRAP /* 0x16e */
.align 32
ta HP_BAD_TRAP /* 0x16f */
.align 32
ta HP_BAD_TRAP /* 0x170 */
.align 32
ta HP_BAD_TRAP /* 0x171 */
.align 32
ta HP_BAD_TRAP /* 0x172 */
.align 32
ta HP_BAD_TRAP /* 0x173 */
.align 32
ta HP_BAD_TRAP /* 0x174 */
.align 32
ta HP_BAD_TRAP /* 0x175 */
.align 32
ta HP_BAD_TRAP /* 0x176 */
.align 32
ta HP_BAD_TRAP /* 0x177 */
.align 32
ta HP_BAD_TRAP /* 0x178 */
.align 32
ta HP_BAD_TRAP /* 0x179 */
.align 32
ta HP_BAD_TRAP /* 0x17a */
.align 32
ta HP_BAD_TRAP /* 0x17b */
.align 32
ta HP_BAD_TRAP /* 0x17c */
.align 32
ta HP_BAD_TRAP /* 0x17d */
.align 32
ta HP_BAD_TRAP /* 0x17e */
.align 32
ta HP_BAD_TRAP /* 0x17f */
.align 32
Thr1_Ptrap_Sect_text_end:
/*********************************************************************/
SECTION .Thr2_Ptrap_Sect TEXT_VA=THR2_PTRAP_TEXT_VA
attr_text {
Name = .Thr2_Ptrap_Sect ,
thr2_z_ctx_tsb_3
VA = THR2_PTRAP_TEXT_VA ,
RA = THR2_PTRAP_TEXT_RA ,
PA = THR2_PTRAP_TEXT_PA ,
TTE_Context = NUCLEUS ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 1 ,
TTE_W = 1 ,
TTE_SW1 = 0 ,
TTE_SW0 = 0 ,
TTE_RSVD1 = 0 ,
TTE_Size = 1 ,
end_label = Thr2_Ptrap_Sect_text_end ,
compressimage ,
}
ta HP_BAD_TRAP /* 0x0 */
.align 32
ta HP_BAD_TRAP /* 0x1 */
.align 32
ta HP_BAD_TRAP /* 0x2 */
.align 32
ta HP_BAD_TRAP /* 0x3 */
.align 32
ta HP_BAD_TRAP /* 0x4 */
.align 32
ta HP_BAD_TRAP /* 0x5 */
.align 32
ta HP_BAD_TRAP /* 0x6 */
.align 32
ta HP_BAD_TRAP /* 0x7 */
.align 32
ta HP_BAD_TRAP /* 0x8 */
.align 32
ta HP_BAD_TRAP /* 0x9 */
.align 32
ta HP_BAD_TRAP /* 0xa */
.align 32
ta HP_BAD_TRAP /* 0xb */
.align 32
ta HP_BAD_TRAP /* 0xc */
.align 32
ta HP_BAD_TRAP /* 0xd */
.align 32
ta HP_BAD_TRAP /* 0xe */
.align 32
ta HP_BAD_TRAP /* 0xf */
.align 32
ta HP_BAD_TRAP /* 0x10 */
.align 32
ta HP_BAD_TRAP /* 0x11 */
.align 32
ta HP_BAD_TRAP /* 0x12 */
.align 32
ta HP_BAD_TRAP /* 0x13 */
.align 32
ta HP_BAD_TRAP /* 0x14 */
.align 32
ta HP_BAD_TRAP /* 0x15 */
.align 32
ta HP_BAD_TRAP /* 0x16 */
.align 32
ta HP_BAD_TRAP /* 0x17 */
.align 32
ta HP_BAD_TRAP /* 0x18 */
.align 32
ta HP_BAD_TRAP /* 0x19 */
.align 32
ta HP_BAD_TRAP /* 0x1a */
.align 32
ta HP_BAD_TRAP /* 0x1b */
.align 32
ta HP_BAD_TRAP /* 0x1c */
.align 32
ta HP_BAD_TRAP /* 0x1d */
.align 32
ta HP_BAD_TRAP /* 0x1e */
.align 32
ta HP_BAD_TRAP /* 0x1f */
.align 32
ta HP_BAD_TRAP /* 0x20 */
.align 32
ta HP_BAD_TRAP /* 0x21 */
.align 32
ta HP_BAD_TRAP /* 0x22 */
.align 32
ta HP_BAD_TRAP /* 0x23 */
.align 32
ta HP_BAD_TRAP /* 0x24 */
.align 32
ta HP_BAD_TRAP /* 0x25 */
.align 32
ta HP_BAD_TRAP /* 0x26 */
.align 32
ta HP_BAD_TRAP /* 0x27 */
.align 32
ta HP_BAD_TRAP /* 0x28 */
.align 32
ta HP_BAD_TRAP /* 0x29 */
.align 32
ta HP_BAD_TRAP /* 0x2a */
.align 32
ta HP_BAD_TRAP /* 0x2b */
.align 32
ta HP_BAD_TRAP /* 0x2c */
.align 32
ta HP_BAD_TRAP /* 0x2d */
.align 32
ta HP_BAD_TRAP /* 0x2e */
.align 32
ta HP_BAD_TRAP /* 0x2f */
.align 32
ta HP_BAD_TRAP /* 0x30 */
.align 32
ta HP_BAD_TRAP /* 0x31 */
.align 32
ta HP_BAD_TRAP /* 0x32 */
.align 32
ta HP_BAD_TRAP /* 0x33 */
.align 32
ta HP_BAD_TRAP /* 0x34 */
.align 32
ta HP_BAD_TRAP /* 0x35 */
.align 32
ta HP_BAD_TRAP /* 0x36 */
.align 32
ta HP_BAD_TRAP /* 0x37 */
.align 32
ta HP_BAD_TRAP /* 0x38 */
.align 32
ta HP_BAD_TRAP /* 0x39 */
.align 32
ta HP_BAD_TRAP /* 0x3a */
.align 32
ta HP_BAD_TRAP /* 0x3b */
.align 32
ta HP_BAD_TRAP /* 0x3c */
.align 32
ta HP_BAD_TRAP /* 0x3d */
.align 32
ta HP_BAD_TRAP /* 0x3e */
.align 32
ta HP_BAD_TRAP /* 0x3f */
.align 32
ta HP_BAD_TRAP /* 0x40 */
.align 32
ta HP_BAD_TRAP /* 0x41 */
.align 32
ta HP_BAD_TRAP /* 0x42 */
.align 32
ta HP_BAD_TRAP /* 0x43 */
.align 32
ta HP_BAD_TRAP /* 0x44 */
.align 32
ta HP_BAD_TRAP /* 0x45 */
.align 32
ta HP_BAD_TRAP /* 0x46 */
.align 32
ta HP_BAD_TRAP /* 0x47 */
.align 32
ta HP_BAD_TRAP /* 0x48 */
.align 32
ta HP_BAD_TRAP /* 0x49 */
.align 32
ta HP_BAD_TRAP /* 0x4a */
.align 32
ta HP_BAD_TRAP /* 0x4b */
.align 32
ta HP_BAD_TRAP /* 0x4c */
.align 32
ta HP_BAD_TRAP /* 0x4d */
.align 32
ta HP_BAD_TRAP /* 0x4e */
.align 32
ta HP_BAD_TRAP /* 0x4f */
.align 32
ta HP_BAD_TRAP /* 0x50 */
.align 32
ta HP_BAD_TRAP /* 0x51 */
.align 32
ta HP_BAD_TRAP /* 0x52 */
.align 32
ta HP_BAD_TRAP /* 0x53 */
.align 32
ta HP_BAD_TRAP /* 0x54 */
.align 32
ta HP_BAD_TRAP /* 0x55 */
.align 32
ta HP_BAD_TRAP /* 0x56 */
.align 32
ta HP_BAD_TRAP /* 0x57 */
.align 32
ta HP_BAD_TRAP /* 0x58 */
.align 32
ta HP_BAD_TRAP /* 0x59 */
.align 32
ta HP_BAD_TRAP /* 0x5a */
.align 32
ta HP_BAD_TRAP /* 0x5b */
.align 32
ta HP_BAD_TRAP /* 0x5c */
.align 32
ta HP_BAD_TRAP /* 0x5d */
.align 32
ta HP_BAD_TRAP /* 0x5e */
.align 32
ta HP_BAD_TRAP /* 0x5f */
.align 32
ta HP_BAD_TRAP /* 0x60 */
.align 32
ta HP_BAD_TRAP /* 0x61 */
.align 32
ta HP_BAD_TRAP /* 0x62 */
.align 32
ta HP_BAD_TRAP /* 0x63 */
.align 32
ta HP_BAD_TRAP /* 0x64 */
.align 32
ta HP_BAD_TRAP /* 0x65 */
.align 32
ta HP_BAD_TRAP /* 0x66 */
.align 32
ta HP_BAD_TRAP /* 0x67 */
.align 32
ta HP_BAD_TRAP /* 0x68 */
.align 32
ta HP_BAD_TRAP /* 0x69 */
.align 32
ta HP_BAD_TRAP /* 0x6a */
.align 32
ta HP_BAD_TRAP /* 0x6b */
.align 32
ta HP_BAD_TRAP /* 0x6c */
.align 32
ta HP_BAD_TRAP /* 0x6d */
.align 32
ta HP_BAD_TRAP /* 0x6e */
.align 32
ta HP_BAD_TRAP /* 0x6f */
.align 32
ta HP_BAD_TRAP /* 0x70 */
.align 32
ta HP_BAD_TRAP /* 0x71 */
.align 32
ta HP_BAD_TRAP /* 0x72 */
.align 32
ta HP_BAD_TRAP /* 0x73 */
.align 32
ta HP_BAD_TRAP /* 0x74 */
.align 32
ta HP_BAD_TRAP /* 0x75 */
.align 32
ta HP_BAD_TRAP /* 0x76 */
.align 32
ta HP_BAD_TRAP /* 0x77 */
.align 32
ta HP_BAD_TRAP /* 0x78 */
.align 32
ta HP_BAD_TRAP /* 0x79 */
.align 32
ta HP_BAD_TRAP /* 0x7a */
.align 32
ta HP_BAD_TRAP /* 0x7b */
.align 32
ta HP_BAD_TRAP /* 0x7c */
.align 32
ta HP_BAD_TRAP /* 0x7d */
.align 32
ta HP_BAD_TRAP /* 0x7e */
.align 32
ta HP_BAD_TRAP /* 0x7f */
.align 32
ta HP_BAD_TRAP /* 0x80 */
.align 32
ta HP_BAD_TRAP /* 0x81 */
.align 32
ta HP_BAD_TRAP /* 0x82 */
.align 32
ta HP_BAD_TRAP /* 0x83 */
.align 32
ta HP_BAD_TRAP /* 0x84 */
.align 32
ta HP_BAD_TRAP /* 0x85 */
.align 32
ta HP_BAD_TRAP /* 0x86 */
.align 32
ta HP_BAD_TRAP /* 0x87 */
.align 32
ta HP_BAD_TRAP /* 0x88 */
.align 32
ta HP_BAD_TRAP /* 0x89 */
.align 32
ta HP_BAD_TRAP /* 0x8a */
.align 32
ta HP_BAD_TRAP /* 0x8b */
.align 32
ta HP_BAD_TRAP /* 0x8c */
.align 32
ta HP_BAD_TRAP /* 0x8d */
.align 32
ta HP_BAD_TRAP /* 0x8e */
.align 32
ta HP_BAD_TRAP /* 0x8f */
.align 32
ta HP_BAD_TRAP /* 0x90 */
.align 32
ta HP_BAD_TRAP /* 0x91 */
.align 32
ta HP_BAD_TRAP /* 0x92 */
.align 32
ta HP_BAD_TRAP /* 0x93 */
.align 32
ta HP_BAD_TRAP /* 0x94 */
.align 32
ta HP_BAD_TRAP /* 0x95 */
.align 32
ta HP_BAD_TRAP /* 0x96 */
.align 32
ta HP_BAD_TRAP /* 0x97 */
.align 32
ta HP_BAD_TRAP /* 0x98 */
.align 32
ta HP_BAD_TRAP /* 0x99 */
.align 32
ta HP_BAD_TRAP /* 0x9a */
.align 32
ta HP_BAD_TRAP /* 0x9b */
.align 32
ta HP_BAD_TRAP /* 0x9c */
.align 32
ta HP_BAD_TRAP /* 0x9d */
.align 32
ta HP_BAD_TRAP /* 0x9e */
.align 32
ta HP_BAD_TRAP /* 0x9f */
.align 32
ta HP_BAD_TRAP /* 0xa0 */
.align 32
ta HP_BAD_TRAP /* 0xa1 */
.align 32
ta HP_BAD_TRAP /* 0xa2 */
.align 32
ta HP_BAD_TRAP /* 0xa3 */
.align 32
ta HP_BAD_TRAP /* 0xa4 */
.align 32
ta HP_BAD_TRAP /* 0xa5 */
.align 32
ta HP_BAD_TRAP /* 0xa6 */
.align 32
ta HP_BAD_TRAP /* 0xa7 */
.align 32
ta HP_BAD_TRAP /* 0xa8 */
.align 32
ta HP_BAD_TRAP /* 0xa9 */
.align 32
ta HP_BAD_TRAP /* 0xaa */
.align 32
ta HP_BAD_TRAP /* 0xab */
.align 32
ta HP_BAD_TRAP /* 0xac */
.align 32
ta HP_BAD_TRAP /* 0xad */
.align 32
ta HP_BAD_TRAP /* 0xae */
.align 32
ta HP_BAD_TRAP /* 0xaf */
.align 32
ta HP_BAD_TRAP /* 0xb0 */
.align 32
ta HP_BAD_TRAP /* 0xb1 */
.align 32
ta HP_BAD_TRAP /* 0xb2 */
.align 32
ta HP_BAD_TRAP /* 0xb3 */
.align 32
ta HP_BAD_TRAP /* 0xb4 */
.align 32
ta HP_BAD_TRAP /* 0xb5 */
.align 32
ta HP_BAD_TRAP /* 0xb6 */
.align 32
ta HP_BAD_TRAP /* 0xb7 */
.align 32
ta HP_BAD_TRAP /* 0xb8 */
.align 32
ta HP_BAD_TRAP /* 0xb9 */
.align 32
ta HP_BAD_TRAP /* 0xba */
.align 32
ta HP_BAD_TRAP /* 0xbb */
.align 32
ta HP_BAD_TRAP /* 0xbc */
.align 32
ta HP_BAD_TRAP /* 0xbd */
.align 32
ta HP_BAD_TRAP /* 0xbe */
.align 32
ta HP_BAD_TRAP /* 0xbf */
.align 32
ta HP_BAD_TRAP /* 0xc0 */
.align 32
ta HP_BAD_TRAP /* 0xc1 */
.align 32
ta HP_BAD_TRAP /* 0xc2 */
.align 32
ta HP_BAD_TRAP /* 0xc3 */
.align 32
ta HP_BAD_TRAP /* 0xc4 */
.align 32
ta HP_BAD_TRAP /* 0xc5 */
.align 32
ta HP_BAD_TRAP /* 0xc6 */
.align 32
ta HP_BAD_TRAP /* 0xc7 */
.align 32
ta HP_BAD_TRAP /* 0xc8 */
.align 32
ta HP_BAD_TRAP /* 0xc9 */
.align 32
ta HP_BAD_TRAP /* 0xca */
.align 32
ta HP_BAD_TRAP /* 0xcb */
.align 32
ta HP_BAD_TRAP /* 0xcc */
.align 32
ta HP_BAD_TRAP /* 0xcd */
.align 32
ta HP_BAD_TRAP /* 0xce */
.align 32
ta HP_BAD_TRAP /* 0xcf */
.align 32
ta HP_BAD_TRAP /* 0xd0 */
.align 32
ta HP_BAD_TRAP /* 0xd1 */
.align 32
ta HP_BAD_TRAP /* 0xd2 */
.align 32
ta HP_BAD_TRAP /* 0xd3 */
.align 32
ta HP_BAD_TRAP /* 0xd4 */
.align 32
ta HP_BAD_TRAP /* 0xd5 */
.align 32
ta HP_BAD_TRAP /* 0xd6 */
.align 32
ta HP_BAD_TRAP /* 0xd7 */
.align 32
ta HP_BAD_TRAP /* 0xd8 */
.align 32
ta HP_BAD_TRAP /* 0xd9 */
.align 32
ta HP_BAD_TRAP /* 0xda */
.align 32
ta HP_BAD_TRAP /* 0xdb */
.align 32
ta HP_BAD_TRAP /* 0xdc */
.align 32
ta HP_BAD_TRAP /* 0xdd */
.align 32
ta HP_BAD_TRAP /* 0xde */
.align 32
ta HP_BAD_TRAP /* 0xdf */
.align 32
ta HP_BAD_TRAP /* 0xe0 */
.align 32
ta HP_BAD_TRAP /* 0xe1 */
.align 32
ta HP_BAD_TRAP /* 0xe2 */
.align 32
ta HP_BAD_TRAP /* 0xe3 */
.align 32
ta HP_BAD_TRAP /* 0xe4 */
.align 32
ta HP_BAD_TRAP /* 0xe5 */
.align 32
ta HP_BAD_TRAP /* 0xe6 */
.align 32
ta HP_BAD_TRAP /* 0xe7 */
.align 32
ta HP_BAD_TRAP /* 0xe8 */
.align 32
ta HP_BAD_TRAP /* 0xe9 */
.align 32
ta HP_BAD_TRAP /* 0xea */
.align 32
ta HP_BAD_TRAP /* 0xeb */
.align 32
ta HP_BAD_TRAP /* 0xec */
.align 32
ta HP_BAD_TRAP /* 0xed */
.align 32
ta HP_BAD_TRAP /* 0xee */
.align 32
ta HP_BAD_TRAP /* 0xef */
.align 32
ta HP_BAD_TRAP /* 0xf0 */
.align 32
ta HP_BAD_TRAP /* 0xf1 */
.align 32
ta HP_BAD_TRAP /* 0xf2 */
.align 32
ta HP_BAD_TRAP /* 0xf3 */
.align 32
ta HP_BAD_TRAP /* 0xf4 */
.align 32
ta HP_BAD_TRAP /* 0xf5 */
.align 32
ta HP_BAD_TRAP /* 0xf6 */
.align 32
ta HP_BAD_TRAP /* 0xf7 */
.align 32
ta HP_BAD_TRAP /* 0xf8 */
.align 32
ta HP_BAD_TRAP /* 0xf9 */
.align 32
ta HP_BAD_TRAP /* 0xfa */
.align 32
ta HP_BAD_TRAP /* 0xfb */
.align 32
ta HP_BAD_TRAP /* 0xfc */
.align 32
ta HP_BAD_TRAP /* 0xfd */
.align 32
ta HP_BAD_TRAP /* 0xfe */
.align 32
ta HP_BAD_TRAP /* 0xff */
.align 32
ta HP_GOOD_TRAP /* 0x100 */
.align 32
ta HP_BAD_TRAP /* 0x101 */
.align 32
ta HP_BAD_TRAP /* 0x102 */
.align 32
ta HP_BAD_TRAP /* 0x103 */
.align 32
ta HP_BAD_TRAP /* 0x104 */
.align 32
ta HP_BAD_TRAP /* 0x105 */
.align 32
ta HP_BAD_TRAP /* 0x106 */
.align 32
ta HP_BAD_TRAP /* 0x107 */
.align 32
ta HP_BAD_TRAP /* 0x108 */
.align 32
ta HP_BAD_TRAP /* 0x109 */
.align 32
ta HP_BAD_TRAP /* 0x10a */
.align 32
ta HP_BAD_TRAP /* 0x10b */
.align 32
ta HP_BAD_TRAP /* 0x10c */
.align 32
ta HP_BAD_TRAP /* 0x10d */
.align 32
ta HP_BAD_TRAP /* 0x10e */
.align 32
ta HP_BAD_TRAP /* 0x10f */
.align 32
ta HPTRAP_I_DEMAP_ALL /* 0x110 */
done
.align 32
ta HPTRAP_I_DEMAP_PCTX /* 0x111 */
done
.align 32
ta HPTRAP_I_DEMAP_SCTX /* 0x112 */
done
.align 32
ta HPTRAP_I_DEMAP_NCTX /* 0x113 */
done
.align 32
ta HPTRAP_I_DEMAP_PAGE /* 0x114 */
done
.align 32
ta HPTRAP_I_DEMAP_RPAGE /* 0x115 */
done
.align 32
ta HPTRAP_I_DEMAP_REAL /* 0x116 */
done
.align 32
ta HPTRAP_D_DEMAP_ALL /* 0x117 */
done
.align 32
ta HPTRAP_D_DEMAP_PCTX /* 0x118 */
done
.align 32
ta HPTRAP_D_DEMAP_SCTX /* 0x119 */
done
.align 32
ta HPTRAP_D_DEMAP_NCTX /* 0x11a */
done
.align 32
ta HPTRAP_D_DEMAP_PAGE /* 0x11b */
done
.align 32
ta HPTRAP_D_DEMAP_RPAGE /* 0x11c */
done
.align 32
ta HPTRAP_D_DEMAP_REAL /* 0x11d */
done
.align 32
ta HP_BAD_TRAP /* 0x11e */
.align 32
ta HP_BAD_TRAP /* 0x11f */
.align 32
sllx %i7, 63, %g1
brz %g1, 1f
nop
rdpr %tnpc, %g2
add %g2, 8, %g2
wrpr %g2, %tnpc
1:
done
.align 32
ta HPTRAP_CHANGE_PID /* 0x121 */
done
.align 32
ta HPTRAP_INCR_TSB_SIZE /* 0x122 */
done
.align 32 /* 0x123 */
ldxa [%l1] 0x14, %l2
done
.align 32 /* 0x124 */
ldxa [%l1] 0x1c, %l2
done
.align 32 /* 0x125 */
ldda [%l1] 0x26, %l2
done
.align 32 /* 0x126 */
ldda [%l1] 0x2e, %l2
done
.align 32
ta HPTRAP_CLEAR_LSU_IMMU /* 0x127 */
done
.align 32
ta HPTRAP_CLEAR_LSU_DMMU /* 0x128 */
done
.align 32
ta HPTRAP_DELAY_LOOP /* 0x129 */
done
.align 32
ta HPTRAP_SEM_LOCK /* 0x12a */
done
.align 32
ta HPTRAP_SEM_RELEASE /* 0x12b */
done
.align 32
ta HPTRAP_SEM_GET /* 0x12c */
done
.align 32
ta HPTRAP_SEM_SET /* 0x12d */
done
.align 32
ta HP_BAD_TRAP /* 0x12e */
.align 32
ta HP_BAD_TRAP /* 0x12f */
.align 32
ta HP_BAD_TRAP /* 0x130 */
.align 32
ta HP_BAD_TRAP /* 0x131 */
.align 32
ta HP_BAD_TRAP /* 0x132 */
.align 32
ta HP_BAD_TRAP /* 0x133 */
.align 32
ta HP_BAD_TRAP /* 0x134 */
.align 32
ta HP_BAD_TRAP /* 0x135 */
.align 32
ta HP_BAD_TRAP /* 0x136 */
.align 32
ta HP_BAD_TRAP /* 0x137 */
.align 32
ta HP_BAD_TRAP /* 0x138 */
.align 32
ta HP_BAD_TRAP /* 0x139 */
.align 32
ta HP_BAD_TRAP /* 0x13a */
.align 32
ta HP_BAD_TRAP /* 0x13b */
.align 32
ta HP_BAD_TRAP /* 0x13c */
.align 32
ta HP_BAD_TRAP /* 0x13d */
.align 32
ta HP_BAD_TRAP /* 0x13e */
.align 32
ta HP_BAD_TRAP /* 0x13f */
.align 32
ta HP_BAD_TRAP /* 0x140 */
.align 32
ta HP_BAD_TRAP /* 0x141 */
.align 32
ta HP_BAD_TRAP /* 0x142 */
.align 32
ta HP_BAD_TRAP /* 0x143 */
.align 32
ta HP_BAD_TRAP /* 0x144 */
.align 32
ta HP_BAD_TRAP /* 0x145 */
.align 32
ta HP_BAD_TRAP /* 0x146 */
.align 32
ta HP_BAD_TRAP /* 0x147 */
.align 32
ta HP_BAD_TRAP /* 0x148 */
.align 32
ta HP_BAD_TRAP /* 0x149 */
.align 32
ta HP_BAD_TRAP /* 0x14a */
.align 32
ta HP_BAD_TRAP /* 0x14b */
.align 32
ta HP_BAD_TRAP /* 0x14c */
.align 32
ta HP_BAD_TRAP /* 0x14d */
.align 32
ta HP_BAD_TRAP /* 0x14e */
.align 32
ta HP_BAD_TRAP /* 0x14f */
.align 32
ta HP_BAD_TRAP /* 0x150 */
.align 32
ta HP_BAD_TRAP /* 0x151 */
.align 32
ta HP_BAD_TRAP /* 0x152 */
.align 32
ta HP_BAD_TRAP /* 0x153 */
.align 32
ta HP_BAD_TRAP /* 0x154 */
.align 32
ta HP_BAD_TRAP /* 0x155 */
.align 32
ta HP_BAD_TRAP /* 0x156 */
.align 32
ta HP_BAD_TRAP /* 0x157 */
.align 32
ta HP_BAD_TRAP /* 0x158 */
.align 32
ta HP_BAD_TRAP /* 0x159 */
.align 32
ta HP_BAD_TRAP /* 0x15a */
.align 32
ta HP_BAD_TRAP /* 0x15b */
.align 32
ta HP_BAD_TRAP /* 0x15c */
.align 32
ta HP_BAD_TRAP /* 0x15d */
.align 32
ta HP_BAD_TRAP /* 0x15e */
.align 32
ta HP_BAD_TRAP /* 0x15f */
.align 32
ta HP_BAD_TRAP /* 0x160 */
.align 32
ta HP_BAD_TRAP /* 0x161 */
.align 32
ta HP_BAD_TRAP /* 0x162 */
.align 32
ta HP_BAD_TRAP /* 0x163 */
.align 32
ta HP_BAD_TRAP /* 0x164 */
.align 32
ta HP_BAD_TRAP /* 0x165 */
.align 32
ta HP_BAD_TRAP /* 0x166 */
.align 32
ta HP_BAD_TRAP /* 0x167 */
.align 32
ta HP_BAD_TRAP /* 0x168 */
.align 32
ta HP_BAD_TRAP /* 0x169 */
.align 32
ta HP_BAD_TRAP /* 0x16a */
.align 32
ta HP_BAD_TRAP /* 0x16b */
.align 32
ta HP_BAD_TRAP /* 0x16c */
.align 32
ta HP_BAD_TRAP /* 0x16d */
.align 32
ta HP_BAD_TRAP /* 0x16e */
.align 32
ta HP_BAD_TRAP /* 0x16f */
.align 32
ta HP_BAD_TRAP /* 0x170 */
.align 32
ta HP_BAD_TRAP /* 0x171 */
.align 32
ta HP_BAD_TRAP /* 0x172 */
.align 32
ta HP_BAD_TRAP /* 0x173 */
.align 32
ta HP_BAD_TRAP /* 0x174 */
.align 32
ta HP_BAD_TRAP /* 0x175 */
.align 32
ta HP_BAD_TRAP /* 0x176 */
.align 32
ta HP_BAD_TRAP /* 0x177 */
.align 32
ta HP_BAD_TRAP /* 0x178 */
.align 32
ta HP_BAD_TRAP /* 0x179 */
.align 32
ta HP_BAD_TRAP /* 0x17a */
.align 32
ta HP_BAD_TRAP /* 0x17b */
.align 32
ta HP_BAD_TRAP /* 0x17c */
.align 32
ta HP_BAD_TRAP /* 0x17d */
.align 32
ta HP_BAD_TRAP /* 0x17e */
.align 32
ta HP_BAD_TRAP /* 0x17f */
.align 32
Thr2_Ptrap_Sect_text_end:
/*********************************************************************/
SECTION .Thr3_Ptrap_Sect TEXT_VA=THR3_PTRAP_TEXT_VA
attr_text {
Name = .Thr3_Ptrap_Sect ,
thr3_z_ctx_tsb_3
VA = THR3_PTRAP_TEXT_VA ,
RA = THR3_PTRAP_TEXT_RA ,
PA = THR3_PTRAP_TEXT_PA ,
TTE_Context = NUCLEUS ,
TTE_V = 1 ,
TTE_Size = 1 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr3_Ptrap_Sect_text_end ,
compressimage ,
}
ta HP_BAD_TRAP /* 0x0 */
.align 32
ta HP_BAD_TRAP /* 0x1 */
.align 32
ta HP_BAD_TRAP /* 0x2 */
.align 32
ta HP_BAD_TRAP /* 0x3 */
.align 32
ta HP_BAD_TRAP /* 0x4 */
.align 32
ta HP_BAD_TRAP /* 0x5 */
.align 32
ta HP_BAD_TRAP /* 0x6 */
.align 32
ta HP_BAD_TRAP /* 0x7 */
.align 32
ta HP_BAD_TRAP /* 0x8 */
.align 32
ta HP_BAD_TRAP /* 0x9 */
.align 32
ta HP_BAD_TRAP /* 0xa */
.align 32
ta HP_BAD_TRAP /* 0xb */
.align 32
ta HP_BAD_TRAP /* 0xc */
.align 32
ta HP_BAD_TRAP /* 0xd */
.align 32
ta HP_BAD_TRAP /* 0xe */
.align 32
ta HP_BAD_TRAP /* 0xf */
.align 32
ta HP_BAD_TRAP /* 0x10 */
.align 32
ta HP_BAD_TRAP /* 0x11 */
.align 32
ta HP_BAD_TRAP /* 0x12 */
.align 32
ta HP_BAD_TRAP /* 0x13 */
.align 32
ta HP_BAD_TRAP /* 0x14 */
.align 32
ta HP_BAD_TRAP /* 0x15 */
.align 32
ta HP_BAD_TRAP /* 0x16 */
.align 32
ta HP_BAD_TRAP /* 0x17 */
.align 32
ta HP_BAD_TRAP /* 0x18 */
.align 32
ta HP_BAD_TRAP /* 0x19 */
.align 32
ta HP_BAD_TRAP /* 0x1a */
.align 32
ta HP_BAD_TRAP /* 0x1b */
.align 32
ta HP_BAD_TRAP /* 0x1c */
.align 32
ta HP_BAD_TRAP /* 0x1d */
.align 32
ta HP_BAD_TRAP /* 0x1e */
.align 32
ta HP_BAD_TRAP /* 0x1f */
.align 32
ta HP_BAD_TRAP /* 0x20 */
.align 32
ta HP_BAD_TRAP /* 0x21 */
.align 32
ta HP_BAD_TRAP /* 0x22 */
.align 32
ta HP_BAD_TRAP /* 0x23 */
.align 32
ta HP_BAD_TRAP /* 0x24 */
.align 32
ta HP_BAD_TRAP /* 0x25 */
.align 32
ta HP_BAD_TRAP /* 0x26 */
.align 32
ta HP_BAD_TRAP /* 0x27 */
.align 32
ta HP_BAD_TRAP /* 0x28 */
.align 32
ta HP_BAD_TRAP /* 0x29 */
.align 32
ta HP_BAD_TRAP /* 0x2a */
.align 32
ta HP_BAD_TRAP /* 0x2b */
.align 32
ta HP_BAD_TRAP /* 0x2c */
.align 32
ta HP_BAD_TRAP /* 0x2d */
.align 32
ta HP_BAD_TRAP /* 0x2e */
.align 32
ta HP_BAD_TRAP /* 0x2f */
.align 32
ta HP_BAD_TRAP /* 0x30 */
.align 32
ta HP_BAD_TRAP /* 0x31 */
.align 32
ta HP_BAD_TRAP /* 0x32 */
.align 32
ta HP_BAD_TRAP /* 0x33 */
.align 32
ta HP_BAD_TRAP /* 0x34 */
.align 32
ta HP_BAD_TRAP /* 0x35 */
.align 32
ta HP_BAD_TRAP /* 0x36 */
.align 32
ta HP_BAD_TRAP /* 0x37 */
.align 32
ta HP_BAD_TRAP /* 0x38 */
.align 32
ta HP_BAD_TRAP /* 0x39 */
.align 32
ta HP_BAD_TRAP /* 0x3a */
.align 32
ta HP_BAD_TRAP /* 0x3b */
.align 32
ta HP_BAD_TRAP /* 0x3c */
.align 32
ta HP_BAD_TRAP /* 0x3d */
.align 32
ta HP_BAD_TRAP /* 0x3e */
.align 32
ta HP_BAD_TRAP /* 0x3f */
.align 32
ta HP_BAD_TRAP /* 0x40 */
.align 32
ta HP_BAD_TRAP /* 0x41 */
.align 32
ta HP_BAD_TRAP /* 0x42 */
.align 32
ta HP_BAD_TRAP /* 0x43 */
.align 32
ta HP_BAD_TRAP /* 0x44 */
.align 32
ta HP_BAD_TRAP /* 0x45 */
.align 32
ta HP_BAD_TRAP /* 0x46 */
.align 32
ta HP_BAD_TRAP /* 0x47 */
.align 32
ta HP_BAD_TRAP /* 0x48 */
.align 32
ta HP_BAD_TRAP /* 0x49 */
.align 32
ta HP_BAD_TRAP /* 0x4a */
.align 32
ta HP_BAD_TRAP /* 0x4b */
.align 32
ta HP_BAD_TRAP /* 0x4c */
.align 32
ta HP_BAD_TRAP /* 0x4d */
.align 32
ta HP_BAD_TRAP /* 0x4e */
.align 32
ta HP_BAD_TRAP /* 0x4f */
.align 32
ta HP_BAD_TRAP /* 0x50 */
.align 32
ta HP_BAD_TRAP /* 0x51 */
.align 32
ta HP_BAD_TRAP /* 0x52 */
.align 32
ta HP_BAD_TRAP /* 0x53 */
.align 32
ta HP_BAD_TRAP /* 0x54 */
.align 32
ta HP_BAD_TRAP /* 0x55 */
.align 32
ta HP_BAD_TRAP /* 0x56 */
.align 32
ta HP_BAD_TRAP /* 0x57 */
.align 32
ta HP_BAD_TRAP /* 0x58 */
.align 32
ta HP_BAD_TRAP /* 0x59 */
.align 32
ta HP_BAD_TRAP /* 0x5a */
.align 32
ta HP_BAD_TRAP /* 0x5b */
.align 32
ta HP_BAD_TRAP /* 0x5c */
.align 32
ta HP_BAD_TRAP /* 0x5d */
.align 32
ta HP_BAD_TRAP /* 0x5e */
.align 32
ta HP_BAD_TRAP /* 0x5f */
.align 32
ta HP_BAD_TRAP /* 0x60 */
.align 32
ta HP_BAD_TRAP /* 0x61 */
.align 32
ta HP_BAD_TRAP /* 0x62 */
.align 32
ta HP_BAD_TRAP /* 0x63 */
.align 32
ta HP_BAD_TRAP /* 0x64 */
.align 32
ta HP_BAD_TRAP /* 0x65 */
.align 32
ta HP_BAD_TRAP /* 0x66 */
.align 32
ta HP_BAD_TRAP /* 0x67 */
.align 32
ta HP_BAD_TRAP /* 0x68 */
.align 32
ta HP_BAD_TRAP /* 0x69 */
.align 32
ta HP_BAD_TRAP /* 0x6a */
.align 32
ta HP_BAD_TRAP /* 0x6b */
.align 32
ta HP_BAD_TRAP /* 0x6c */
.align 32
ta HP_BAD_TRAP /* 0x6d */
.align 32
ta HP_BAD_TRAP /* 0x6e */
.align 32
ta HP_BAD_TRAP /* 0x6f */
.align 32
ta HP_BAD_TRAP /* 0x70 */
.align 32
ta HP_BAD_TRAP /* 0x71 */
.align 32
ta HP_BAD_TRAP /* 0x72 */
.align 32
ta HP_BAD_TRAP /* 0x73 */
.align 32
ta HP_BAD_TRAP /* 0x74 */
.align 32
ta HP_BAD_TRAP /* 0x75 */
.align 32
ta HP_BAD_TRAP /* 0x76 */
.align 32
ta HP_BAD_TRAP /* 0x77 */
.align 32
ta HP_BAD_TRAP /* 0x78 */
.align 32
ta HP_BAD_TRAP /* 0x79 */
.align 32
ta HP_BAD_TRAP /* 0x7a */
.align 32
ta HP_BAD_TRAP /* 0x7b */
.align 32
ta HP_BAD_TRAP /* 0x7c */
.align 32
ta HP_BAD_TRAP /* 0x7d */
.align 32
ta HP_BAD_TRAP /* 0x7e */
.align 32
ta HP_BAD_TRAP /* 0x7f */
.align 32
ta HP_BAD_TRAP /* 0x80 */
.align 32
ta HP_BAD_TRAP /* 0x81 */
.align 32
ta HP_BAD_TRAP /* 0x82 */
.align 32
ta HP_BAD_TRAP /* 0x83 */
.align 32
ta HP_BAD_TRAP /* 0x84 */
.align 32
ta HP_BAD_TRAP /* 0x85 */
.align 32
ta HP_BAD_TRAP /* 0x86 */
.align 32
ta HP_BAD_TRAP /* 0x87 */
.align 32
ta HP_BAD_TRAP /* 0x88 */
.align 32
ta HP_BAD_TRAP /* 0x89 */
.align 32
ta HP_BAD_TRAP /* 0x8a */
.align 32
ta HP_BAD_TRAP /* 0x8b */
.align 32
ta HP_BAD_TRAP /* 0x8c */
.align 32
ta HP_BAD_TRAP /* 0x8d */
.align 32
ta HP_BAD_TRAP /* 0x8e */
.align 32
ta HP_BAD_TRAP /* 0x8f */
.align 32
ta HP_BAD_TRAP /* 0x90 */
.align 32
ta HP_BAD_TRAP /* 0x91 */
.align 32
ta HP_BAD_TRAP /* 0x92 */
.align 32
ta HP_BAD_TRAP /* 0x93 */
.align 32
ta HP_BAD_TRAP /* 0x94 */
.align 32
ta HP_BAD_TRAP /* 0x95 */
.align 32
ta HP_BAD_TRAP /* 0x96 */
.align 32
ta HP_BAD_TRAP /* 0x97 */
.align 32
ta HP_BAD_TRAP /* 0x98 */
.align 32
ta HP_BAD_TRAP /* 0x99 */
.align 32
ta HP_BAD_TRAP /* 0x9a */
.align 32
ta HP_BAD_TRAP /* 0x9b */
.align 32
ta HP_BAD_TRAP /* 0x9c */
.align 32
ta HP_BAD_TRAP /* 0x9d */
.align 32
ta HP_BAD_TRAP /* 0x9e */
.align 32
ta HP_BAD_TRAP /* 0x9f */
.align 32
ta HP_BAD_TRAP /* 0xa0 */
.align 32
ta HP_BAD_TRAP /* 0xa1 */
.align 32
ta HP_BAD_TRAP /* 0xa2 */
.align 32
ta HP_BAD_TRAP /* 0xa3 */
.align 32
ta HP_BAD_TRAP /* 0xa4 */
.align 32
ta HP_BAD_TRAP /* 0xa5 */
.align 32
ta HP_BAD_TRAP /* 0xa6 */
.align 32
ta HP_BAD_TRAP /* 0xa7 */
.align 32
ta HP_BAD_TRAP /* 0xa8 */
.align 32
ta HP_BAD_TRAP /* 0xa9 */
.align 32
ta HP_BAD_TRAP /* 0xaa */
.align 32
ta HP_BAD_TRAP /* 0xab */
.align 32
ta HP_BAD_TRAP /* 0xac */
.align 32
ta HP_BAD_TRAP /* 0xad */
.align 32
ta HP_BAD_TRAP /* 0xae */
.align 32
ta HP_BAD_TRAP /* 0xaf */
.align 32
ta HP_BAD_TRAP /* 0xb0 */
.align 32
ta HP_BAD_TRAP /* 0xb1 */
.align 32
ta HP_BAD_TRAP /* 0xb2 */
.align 32
ta HP_BAD_TRAP /* 0xb3 */
.align 32
ta HP_BAD_TRAP /* 0xb4 */
.align 32
ta HP_BAD_TRAP /* 0xb5 */
.align 32
ta HP_BAD_TRAP /* 0xb6 */
.align 32
ta HP_BAD_TRAP /* 0xb7 */
.align 32
ta HP_BAD_TRAP /* 0xb8 */
.align 32
ta HP_BAD_TRAP /* 0xb9 */
.align 32
ta HP_BAD_TRAP /* 0xba */
.align 32
ta HP_BAD_TRAP /* 0xbb */
.align 32
ta HP_BAD_TRAP /* 0xbc */
.align 32
ta HP_BAD_TRAP /* 0xbd */
.align 32
ta HP_BAD_TRAP /* 0xbe */
.align 32
ta HP_BAD_TRAP /* 0xbf */
.align 32
ta HP_BAD_TRAP /* 0xc0 */
.align 32
ta HP_BAD_TRAP /* 0xc1 */
.align 32
ta HP_BAD_TRAP /* 0xc2 */
.align 32
ta HP_BAD_TRAP /* 0xc3 */
.align 32
ta HP_BAD_TRAP /* 0xc4 */
.align 32
ta HP_BAD_TRAP /* 0xc5 */
.align 32
ta HP_BAD_TRAP /* 0xc6 */
.align 32
ta HP_BAD_TRAP /* 0xc7 */
.align 32
ta HP_BAD_TRAP /* 0xc8 */
.align 32
ta HP_BAD_TRAP /* 0xc9 */
.align 32
ta HP_BAD_TRAP /* 0xca */
.align 32
ta HP_BAD_TRAP /* 0xcb */
.align 32
ta HP_BAD_TRAP /* 0xcc */
.align 32
ta HP_BAD_TRAP /* 0xcd */
.align 32
ta HP_BAD_TRAP /* 0xce */
.align 32
ta HP_BAD_TRAP /* 0xcf */
.align 32
ta HP_BAD_TRAP /* 0xd0 */
.align 32
ta HP_BAD_TRAP /* 0xd1 */
.align 32
ta HP_BAD_TRAP /* 0xd2 */
.align 32
ta HP_BAD_TRAP /* 0xd3 */
.align 32
ta HP_BAD_TRAP /* 0xd4 */
.align 32
ta HP_BAD_TRAP /* 0xd5 */
.align 32
ta HP_BAD_TRAP /* 0xd6 */
.align 32
ta HP_BAD_TRAP /* 0xd7 */
.align 32
ta HP_BAD_TRAP /* 0xd8 */
.align 32
ta HP_BAD_TRAP /* 0xd9 */
.align 32
ta HP_BAD_TRAP /* 0xda */
.align 32
ta HP_BAD_TRAP /* 0xdb */
.align 32
ta HP_BAD_TRAP /* 0xdc */
.align 32
ta HP_BAD_TRAP /* 0xdd */
.align 32
ta HP_BAD_TRAP /* 0xde */
.align 32
ta HP_BAD_TRAP /* 0xdf */
.align 32
ta HP_BAD_TRAP /* 0xe0 */
.align 32
ta HP_BAD_TRAP /* 0xe1 */
.align 32
ta HP_BAD_TRAP /* 0xe2 */
.align 32
ta HP_BAD_TRAP /* 0xe3 */
.align 32
ta HP_BAD_TRAP /* 0xe4 */
.align 32
ta HP_BAD_TRAP /* 0xe5 */
.align 32
ta HP_BAD_TRAP /* 0xe6 */
.align 32
ta HP_BAD_TRAP /* 0xe7 */
.align 32
ta HP_BAD_TRAP /* 0xe8 */
.align 32
ta HP_BAD_TRAP /* 0xe9 */
.align 32
ta HP_BAD_TRAP /* 0xea */
.align 32
ta HP_BAD_TRAP /* 0xeb */
.align 32
ta HP_BAD_TRAP /* 0xec */
.align 32
ta HP_BAD_TRAP /* 0xed */
.align 32
ta HP_BAD_TRAP /* 0xee */
.align 32
ta HP_BAD_TRAP /* 0xef */
.align 32
ta HP_BAD_TRAP /* 0xf0 */
.align 32
ta HP_BAD_TRAP /* 0xf1 */
.align 32
ta HP_BAD_TRAP /* 0xf2 */
.align 32
ta HP_BAD_TRAP /* 0xf3 */
.align 32
ta HP_BAD_TRAP /* 0xf4 */
.align 32
ta HP_BAD_TRAP /* 0xf5 */
.align 32
ta HP_BAD_TRAP /* 0xf6 */
.align 32
ta HP_BAD_TRAP /* 0xf7 */
.align 32
ta HP_BAD_TRAP /* 0xf8 */
.align 32
ta HP_BAD_TRAP /* 0xf9 */
.align 32
ta HP_BAD_TRAP /* 0xfa */
.align 32
ta HP_BAD_TRAP /* 0xfb */
.align 32
ta HP_BAD_TRAP /* 0xfc */
.align 32
ta HP_BAD_TRAP /* 0xfd */
.align 32
ta HP_BAD_TRAP /* 0xfe */
.align 32
ta HP_BAD_TRAP /* 0xff */
.align 32
ta HP_GOOD_TRAP /* 0x100 */
.align 32
ta HP_BAD_TRAP /* 0x101 */
.align 32
ta HP_BAD_TRAP /* 0x102 */
.align 32
ta HP_BAD_TRAP /* 0x103 */
.align 32
ta HP_BAD_TRAP /* 0x104 */
.align 32
ta HP_BAD_TRAP /* 0x105 */
.align 32
ta HP_BAD_TRAP /* 0x106 */
.align 32
ta HP_BAD_TRAP /* 0x107 */
.align 32
ta HP_BAD_TRAP /* 0x108 */
.align 32
ta HP_BAD_TRAP /* 0x109 */
.align 32
ta HP_BAD_TRAP /* 0x10a */
.align 32
ta HP_BAD_TRAP /* 0x10b */
.align 32
ta HP_BAD_TRAP /* 0x10c */
.align 32
ta HP_BAD_TRAP /* 0x10d */
.align 32
ta HP_BAD_TRAP /* 0x10e */
.align 32
ta HP_BAD_TRAP /* 0x10f */
.align 32
ta HPTRAP_I_DEMAP_ALL /* 0x110 */
done
.align 32
ta HPTRAP_I_DEMAP_PCTX /* 0x111 */
done
.align 32
ta HPTRAP_I_DEMAP_SCTX /* 0x112 */
done
.align 32
ta HPTRAP_I_DEMAP_NCTX /* 0x113 */
done
.align 32
ta HPTRAP_I_DEMAP_PAGE /* 0x114 */
done
.align 32
ta HPTRAP_I_DEMAP_RPAGE /* 0x115 */
done
.align 32
ta HPTRAP_I_DEMAP_REAL /* 0x116 */
done
.align 32
ta HPTRAP_D_DEMAP_ALL /* 0x117 */
done
.align 32
ta HPTRAP_D_DEMAP_PCTX /* 0x118 */
done
.align 32
ta HPTRAP_D_DEMAP_SCTX /* 0x119 */
done
.align 32
ta HPTRAP_D_DEMAP_NCTX /* 0x11a */
done
.align 32
ta HPTRAP_D_DEMAP_PAGE /* 0x11b */
done
.align 32
ta HPTRAP_D_DEMAP_RPAGE /* 0x11c */
done
.align 32
ta HPTRAP_D_DEMAP_REAL /* 0x11d */
done
.align 32
ta HP_BAD_TRAP /* 0x11e */
.align 32
ta HP_BAD_TRAP /* 0x11f */
.align 32
sllx %i7, 63, %g1
brz %g1, 1f
nop
rdpr %tnpc, %g2
add %g2, 8, %g2
wrpr %g2, %tnpc
1:
done
.align 32
ta HPTRAP_CHANGE_PID /* 0x121 */
done
.align 32
ta HPTRAP_INCR_TSB_SIZE /* 0x122 */
done
.align 32 /* 0x123 */
ldxa [%l1] 0x14, %l2
done
.align 32 /* 0x124 */
ldxa [%l1] 0x1c, %l2
done
.align 32 /* 0x125 */
ldda [%l1] 0x26, %l2
done
.align 32 /* 0x126 */
ldda [%l1] 0x2e, %l2
done
.align 32
ta HPTRAP_CLEAR_LSU_IMMU /* 0x127 */
done
.align 32
ta HPTRAP_CLEAR_LSU_DMMU /* 0x128 */
done
.align 32
ta HPTRAP_DELAY_LOOP /* 0x129 */
done
.align 32
ta HPTRAP_SEM_LOCK /* 0x12a */
done
.align 32
ta HPTRAP_SEM_RELEASE /* 0x12b */
done
.align 32
ta HPTRAP_SEM_GET /* 0x12c */
done
.align 32
ta HPTRAP_SEM_SET /* 0x12d */
done
.align 32
ta HP_BAD_TRAP /* 0x12e */
.align 32
ta HP_BAD_TRAP /* 0x12f */
.align 32
ta HP_BAD_TRAP /* 0x130 */
.align 32
ta HP_BAD_TRAP /* 0x131 */
.align 32
ta HP_BAD_TRAP /* 0x132 */
.align 32
ta HP_BAD_TRAP /* 0x133 */
.align 32
ta HP_BAD_TRAP /* 0x134 */
.align 32
ta HP_BAD_TRAP /* 0x135 */
.align 32
ta HP_BAD_TRAP /* 0x136 */
.align 32
ta HP_BAD_TRAP /* 0x137 */
.align 32
ta HP_BAD_TRAP /* 0x138 */
.align 32
ta HP_BAD_TRAP /* 0x139 */
.align 32
ta HP_BAD_TRAP /* 0x13a */
.align 32
ta HP_BAD_TRAP /* 0x13b */
.align 32
ta HP_BAD_TRAP /* 0x13c */
.align 32
ta HP_BAD_TRAP /* 0x13d */
.align 32
ta HP_BAD_TRAP /* 0x13e */
.align 32
ta HP_BAD_TRAP /* 0x13f */
.align 32
ta HP_BAD_TRAP /* 0x140 */
.align 32
ta HP_BAD_TRAP /* 0x141 */
.align 32
ta HP_BAD_TRAP /* 0x142 */
.align 32
ta HP_BAD_TRAP /* 0x143 */
.align 32
ta HP_BAD_TRAP /* 0x144 */
.align 32
ta HP_BAD_TRAP /* 0x145 */
.align 32
ta HP_BAD_TRAP /* 0x146 */
.align 32
ta HP_BAD_TRAP /* 0x147 */
.align 32
ta HP_BAD_TRAP /* 0x148 */
.align 32
ta HP_BAD_TRAP /* 0x149 */
.align 32
ta HP_BAD_TRAP /* 0x14a */
.align 32
ta HP_BAD_TRAP /* 0x14b */
.align 32
ta HP_BAD_TRAP /* 0x14c */
.align 32
ta HP_BAD_TRAP /* 0x14d */
.align 32
ta HP_BAD_TRAP /* 0x14e */
.align 32
ta HP_BAD_TRAP /* 0x14f */
.align 32
ta HP_BAD_TRAP /* 0x150 */
.align 32
ta HP_BAD_TRAP /* 0x151 */
.align 32
ta HP_BAD_TRAP /* 0x152 */
.align 32
ta HP_BAD_TRAP /* 0x153 */
.align 32
ta HP_BAD_TRAP /* 0x154 */
.align 32
ta HP_BAD_TRAP /* 0x155 */
.align 32
ta HP_BAD_TRAP /* 0x156 */
.align 32
ta HP_BAD_TRAP /* 0x157 */
.align 32
ta HP_BAD_TRAP /* 0x158 */
.align 32
ta HP_BAD_TRAP /* 0x159 */
.align 32
ta HP_BAD_TRAP /* 0x15a */
.align 32
ta HP_BAD_TRAP /* 0x15b */
.align 32
ta HP_BAD_TRAP /* 0x15c */
.align 32
ta HP_BAD_TRAP /* 0x15d */
.align 32
ta HP_BAD_TRAP /* 0x15e */
.align 32
ta HP_BAD_TRAP /* 0x15f */
.align 32
ta HP_BAD_TRAP /* 0x160 */
.align 32
ta HP_BAD_TRAP /* 0x161 */
.align 32
ta HP_BAD_TRAP /* 0x162 */
.align 32
ta HP_BAD_TRAP /* 0x163 */
.align 32
ta HP_BAD_TRAP /* 0x164 */
.align 32
ta HP_BAD_TRAP /* 0x165 */
.align 32
ta HP_BAD_TRAP /* 0x166 */
.align 32
ta HP_BAD_TRAP /* 0x167 */
.align 32
ta HP_BAD_TRAP /* 0x168 */
.align 32
ta HP_BAD_TRAP /* 0x169 */
.align 32
ta HP_BAD_TRAP /* 0x16a */
.align 32
ta HP_BAD_TRAP /* 0x16b */
.align 32
ta HP_BAD_TRAP /* 0x16c */
.align 32
ta HP_BAD_TRAP /* 0x16d */
.align 32
ta HP_BAD_TRAP /* 0x16e */
.align 32
ta HP_BAD_TRAP /* 0x16f */
.align 32
ta HP_BAD_TRAP /* 0x170 */
.align 32
ta HP_BAD_TRAP /* 0x171 */
.align 32
ta HP_BAD_TRAP /* 0x172 */
.align 32
ta HP_BAD_TRAP /* 0x173 */
.align 32
ta HP_BAD_TRAP /* 0x174 */
.align 32
ta HP_BAD_TRAP /* 0x175 */
.align 32
ta HP_BAD_TRAP /* 0x176 */
.align 32
ta HP_BAD_TRAP /* 0x177 */
.align 32
ta HP_BAD_TRAP /* 0x178 */
.align 32
ta HP_BAD_TRAP /* 0x179 */
.align 32
ta HP_BAD_TRAP /* 0x17a */
.align 32
ta HP_BAD_TRAP /* 0x17b */
.align 32
ta HP_BAD_TRAP /* 0x17c */
.align 32
ta HP_BAD_TRAP /* 0x17d */
.align 32
ta HP_BAD_TRAP /* 0x17e */
.align 32
ta HP_BAD_TRAP /* 0x17f */
.align 32
Thr3_Ptrap_Sect_text_end:
/*********************************************************************/
SECTION .Thr4_Ptrap_Sect TEXT_VA=THR4_PTRAP_TEXT_VA
attr_text {
Name = .Thr4_Ptrap_Sect ,
thr4_z_ctx_tsb_2
VA = THR4_PTRAP_TEXT_VA ,
RA = THR4_PTRAP_TEXT_RA ,
PA = THR4_PTRAP_TEXT_PA ,
TTE_Context = NUCLEUS ,
TTE_V = 1 ,
TTE_Size = 1 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 1 ,
TTE_RSVD1 = 0 ,
end_label = Thr4_Ptrap_Sect_text_end ,
compressimage ,
}
ta HP_BAD_TRAP /* 0x0 */
.align 32
ta HP_BAD_TRAP /* 0x1 */
.align 32
ta HP_BAD_TRAP /* 0x2 */
.align 32
ta HP_BAD_TRAP /* 0x3 */
.align 32
ta HP_BAD_TRAP /* 0x4 */
.align 32
ta HP_BAD_TRAP /* 0x5 */
.align 32
ta HP_BAD_TRAP /* 0x6 */
.align 32
ta HP_BAD_TRAP /* 0x7 */
.align 32
ta HP_BAD_TRAP /* 0x8 */
.align 32
ta HP_BAD_TRAP /* 0x9 */
.align 32
ta HP_BAD_TRAP /* 0xa */
.align 32
ta HP_BAD_TRAP /* 0xb */
.align 32
ta HP_BAD_TRAP /* 0xc */
.align 32
ta HP_BAD_TRAP /* 0xd */
.align 32
ta HP_BAD_TRAP /* 0xe */
.align 32
ta HP_BAD_TRAP /* 0xf */
.align 32
ta HP_BAD_TRAP /* 0x10 */
.align 32
ta HP_BAD_TRAP /* 0x11 */
.align 32
ta HP_BAD_TRAP /* 0x12 */
.align 32
ta HP_BAD_TRAP /* 0x13 */
.align 32
ta HP_BAD_TRAP /* 0x14 */
.align 32
ta HP_BAD_TRAP /* 0x15 */
.align 32
ta HP_BAD_TRAP /* 0x16 */
.align 32
ta HP_BAD_TRAP /* 0x17 */
.align 32
ta HP_BAD_TRAP /* 0x18 */
.align 32
ta HP_BAD_TRAP /* 0x19 */
.align 32
ta HP_BAD_TRAP /* 0x1a */
.align 32
ta HP_BAD_TRAP /* 0x1b */
.align 32
ta HP_BAD_TRAP /* 0x1c */
.align 32
ta HP_BAD_TRAP /* 0x1d */
.align 32
ta HP_BAD_TRAP /* 0x1e */
.align 32
ta HP_BAD_TRAP /* 0x1f */
.align 32
ta HP_BAD_TRAP /* 0x20 */
.align 32
ta HP_BAD_TRAP /* 0x21 */
.align 32
ta HP_BAD_TRAP /* 0x22 */
.align 32
ta HP_BAD_TRAP /* 0x23 */
.align 32
ta HP_BAD_TRAP /* 0x24 */
.align 32
ta HP_BAD_TRAP /* 0x25 */
.align 32
ta HP_BAD_TRAP /* 0x26 */
.align 32
ta HP_BAD_TRAP /* 0x27 */
.align 32
ta HP_BAD_TRAP /* 0x28 */
.align 32
ta HP_BAD_TRAP /* 0x29 */
.align 32
ta HP_BAD_TRAP /* 0x2a */
.align 32
ta HP_BAD_TRAP /* 0x2b */
.align 32
ta HP_BAD_TRAP /* 0x2c */
.align 32
ta HP_BAD_TRAP /* 0x2d */
.align 32
ta HP_BAD_TRAP /* 0x2e */
.align 32
ta HP_BAD_TRAP /* 0x2f */
.align 32
ta HP_BAD_TRAP /* 0x30 */
.align 32
ta HP_BAD_TRAP /* 0x31 */
.align 32
ta HP_BAD_TRAP /* 0x32 */
.align 32
ta HP_BAD_TRAP /* 0x33 */
.align 32
ta HP_BAD_TRAP /* 0x34 */
.align 32
ta HP_BAD_TRAP /* 0x35 */
.align 32
ta HP_BAD_TRAP /* 0x36 */
.align 32
ta HP_BAD_TRAP /* 0x37 */
.align 32
ta HP_BAD_TRAP /* 0x38 */
.align 32
ta HP_BAD_TRAP /* 0x39 */
.align 32
ta HP_BAD_TRAP /* 0x3a */
.align 32
ta HP_BAD_TRAP /* 0x3b */
.align 32
ta HP_BAD_TRAP /* 0x3c */
.align 32
ta HP_BAD_TRAP /* 0x3d */
.align 32
ta HP_BAD_TRAP /* 0x3e */
.align 32
ta HP_BAD_TRAP /* 0x3f */
.align 32
ta HP_BAD_TRAP /* 0x40 */
.align 32
ta HP_BAD_TRAP /* 0x41 */
.align 32
ta HP_BAD_TRAP /* 0x42 */
.align 32
ta HP_BAD_TRAP /* 0x43 */
.align 32
ta HP_BAD_TRAP /* 0x44 */
.align 32
ta HP_BAD_TRAP /* 0x45 */
.align 32
ta HP_BAD_TRAP /* 0x46 */
.align 32
ta HP_BAD_TRAP /* 0x47 */
.align 32
ta HP_BAD_TRAP /* 0x48 */
.align 32
ta HP_BAD_TRAP /* 0x49 */
.align 32
ta HP_BAD_TRAP /* 0x4a */
.align 32
ta HP_BAD_TRAP /* 0x4b */
.align 32
ta HP_BAD_TRAP /* 0x4c */
.align 32
ta HP_BAD_TRAP /* 0x4d */
.align 32
ta HP_BAD_TRAP /* 0x4e */
.align 32
ta HP_BAD_TRAP /* 0x4f */
.align 32
ta HP_BAD_TRAP /* 0x50 */
.align 32
ta HP_BAD_TRAP /* 0x51 */
.align 32
ta HP_BAD_TRAP /* 0x52 */
.align 32
ta HP_BAD_TRAP /* 0x53 */
.align 32
ta HP_BAD_TRAP /* 0x54 */
.align 32
ta HP_BAD_TRAP /* 0x55 */
.align 32
ta HP_BAD_TRAP /* 0x56 */
.align 32
ta HP_BAD_TRAP /* 0x57 */
.align 32
ta HP_BAD_TRAP /* 0x58 */
.align 32
ta HP_BAD_TRAP /* 0x59 */
.align 32
ta HP_BAD_TRAP /* 0x5a */
.align 32
ta HP_BAD_TRAP /* 0x5b */
.align 32
ta HP_BAD_TRAP /* 0x5c */
.align 32
ta HP_BAD_TRAP /* 0x5d */
.align 32
ta HP_BAD_TRAP /* 0x5e */
.align 32
ta HP_BAD_TRAP /* 0x5f */
.align 32
ta HP_BAD_TRAP /* 0x60 */
.align 32
ta HP_BAD_TRAP /* 0x61 */
.align 32
ta HP_BAD_TRAP /* 0x62 */
.align 32
ta HP_BAD_TRAP /* 0x63 */
.align 32
ta HP_BAD_TRAP /* 0x64 */
.align 32
ta HP_BAD_TRAP /* 0x65 */
.align 32
ta HP_BAD_TRAP /* 0x66 */
.align 32
ta HP_BAD_TRAP /* 0x67 */
.align 32
ta HP_BAD_TRAP /* 0x68 */
.align 32
ta HP_BAD_TRAP /* 0x69 */
.align 32
ta HP_BAD_TRAP /* 0x6a */
.align 32
ta HP_BAD_TRAP /* 0x6b */
.align 32
ta HP_BAD_TRAP /* 0x6c */
.align 32
ta HP_BAD_TRAP /* 0x6d */
.align 32
ta HP_BAD_TRAP /* 0x6e */
.align 32
ta HP_BAD_TRAP /* 0x6f */
.align 32
ta HP_BAD_TRAP /* 0x70 */
.align 32
ta HP_BAD_TRAP /* 0x71 */
.align 32
ta HP_BAD_TRAP /* 0x72 */
.align 32
ta HP_BAD_TRAP /* 0x73 */
.align 32
ta HP_BAD_TRAP /* 0x74 */
.align 32
ta HP_BAD_TRAP /* 0x75 */
.align 32
ta HP_BAD_TRAP /* 0x76 */
.align 32
ta HP_BAD_TRAP /* 0x77 */
.align 32
ta HP_BAD_TRAP /* 0x78 */
.align 32
ta HP_BAD_TRAP /* 0x79 */
.align 32
ta HP_BAD_TRAP /* 0x7a */
.align 32
ta HP_BAD_TRAP /* 0x7b */
.align 32
ta HP_BAD_TRAP /* 0x7c */
.align 32
ta HP_BAD_TRAP /* 0x7d */
.align 32
ta HP_BAD_TRAP /* 0x7e */
.align 32
ta HP_BAD_TRAP /* 0x7f */
.align 32
ta HP_BAD_TRAP /* 0x80 */
.align 32
ta HP_BAD_TRAP /* 0x81 */
.align 32
ta HP_BAD_TRAP /* 0x82 */
.align 32
ta HP_BAD_TRAP /* 0x83 */
.align 32
ta HP_BAD_TRAP /* 0x84 */
.align 32
ta HP_BAD_TRAP /* 0x85 */
.align 32
ta HP_BAD_TRAP /* 0x86 */
.align 32
ta HP_BAD_TRAP /* 0x87 */
.align 32
ta HP_BAD_TRAP /* 0x88 */
.align 32
ta HP_BAD_TRAP /* 0x89 */
.align 32
ta HP_BAD_TRAP /* 0x8a */
.align 32
ta HP_BAD_TRAP /* 0x8b */
.align 32
ta HP_BAD_TRAP /* 0x8c */
.align 32
ta HP_BAD_TRAP /* 0x8d */
.align 32
ta HP_BAD_TRAP /* 0x8e */
.align 32
ta HP_BAD_TRAP /* 0x8f */
.align 32
ta HP_BAD_TRAP /* 0x90 */
.align 32
ta HP_BAD_TRAP /* 0x91 */
.align 32
ta HP_BAD_TRAP /* 0x92 */
.align 32
ta HP_BAD_TRAP /* 0x93 */
.align 32
ta HP_BAD_TRAP /* 0x94 */
.align 32
ta HP_BAD_TRAP /* 0x95 */
.align 32
ta HP_BAD_TRAP /* 0x96 */
.align 32
ta HP_BAD_TRAP /* 0x97 */
.align 32
ta HP_BAD_TRAP /* 0x98 */
.align 32
ta HP_BAD_TRAP /* 0x99 */
.align 32
ta HP_BAD_TRAP /* 0x9a */
.align 32
ta HP_BAD_TRAP /* 0x9b */
.align 32
ta HP_BAD_TRAP /* 0x9c */
.align 32
ta HP_BAD_TRAP /* 0x9d */
.align 32
ta HP_BAD_TRAP /* 0x9e */
.align 32
ta HP_BAD_TRAP /* 0x9f */
.align 32
ta HP_BAD_TRAP /* 0xa0 */
.align 32
ta HP_BAD_TRAP /* 0xa1 */
.align 32
ta HP_BAD_TRAP /* 0xa2 */
.align 32
ta HP_BAD_TRAP /* 0xa3 */
.align 32
ta HP_BAD_TRAP /* 0xa4 */
.align 32
ta HP_BAD_TRAP /* 0xa5 */
.align 32
ta HP_BAD_TRAP /* 0xa6 */
.align 32
ta HP_BAD_TRAP /* 0xa7 */
.align 32
ta HP_BAD_TRAP /* 0xa8 */
.align 32
ta HP_BAD_TRAP /* 0xa9 */
.align 32
ta HP_BAD_TRAP /* 0xaa */
.align 32
ta HP_BAD_TRAP /* 0xab */
.align 32
ta HP_BAD_TRAP /* 0xac */
.align 32
ta HP_BAD_TRAP /* 0xad */
.align 32
ta HP_BAD_TRAP /* 0xae */
.align 32
ta HP_BAD_TRAP /* 0xaf */
.align 32
ta HP_BAD_TRAP /* 0xb0 */
.align 32
ta HP_BAD_TRAP /* 0xb1 */
.align 32
ta HP_BAD_TRAP /* 0xb2 */
.align 32
ta HP_BAD_TRAP /* 0xb3 */
.align 32
ta HP_BAD_TRAP /* 0xb4 */
.align 32
ta HP_BAD_TRAP /* 0xb5 */
.align 32
ta HP_BAD_TRAP /* 0xb6 */
.align 32
ta HP_BAD_TRAP /* 0xb7 */
.align 32
ta HP_BAD_TRAP /* 0xb8 */
.align 32
ta HP_BAD_TRAP /* 0xb9 */
.align 32
ta HP_BAD_TRAP /* 0xba */
.align 32
ta HP_BAD_TRAP /* 0xbb */
.align 32
ta HP_BAD_TRAP /* 0xbc */
.align 32
ta HP_BAD_TRAP /* 0xbd */
.align 32
ta HP_BAD_TRAP /* 0xbe */
.align 32
ta HP_BAD_TRAP /* 0xbf */
.align 32
ta HP_BAD_TRAP /* 0xc0 */
.align 32
ta HP_BAD_TRAP /* 0xc1 */
.align 32
ta HP_BAD_TRAP /* 0xc2 */
.align 32
ta HP_BAD_TRAP /* 0xc3 */
.align 32
ta HP_BAD_TRAP /* 0xc4 */
.align 32
ta HP_BAD_TRAP /* 0xc5 */
.align 32
ta HP_BAD_TRAP /* 0xc6 */
.align 32
ta HP_BAD_TRAP /* 0xc7 */
.align 32
ta HP_BAD_TRAP /* 0xc8 */
.align 32
ta HP_BAD_TRAP /* 0xc9 */
.align 32
ta HP_BAD_TRAP /* 0xca */
.align 32
ta HP_BAD_TRAP /* 0xcb */
.align 32
ta HP_BAD_TRAP /* 0xcc */
.align 32
ta HP_BAD_TRAP /* 0xcd */
.align 32
ta HP_BAD_TRAP /* 0xce */
.align 32
ta HP_BAD_TRAP /* 0xcf */
.align 32
ta HP_BAD_TRAP /* 0xd0 */
.align 32
ta HP_BAD_TRAP /* 0xd1 */
.align 32
ta HP_BAD_TRAP /* 0xd2 */
.align 32
ta HP_BAD_TRAP /* 0xd3 */
.align 32
ta HP_BAD_TRAP /* 0xd4 */
.align 32
ta HP_BAD_TRAP /* 0xd5 */
.align 32
ta HP_BAD_TRAP /* 0xd6 */
.align 32
ta HP_BAD_TRAP /* 0xd7 */
.align 32
ta HP_BAD_TRAP /* 0xd8 */
.align 32
ta HP_BAD_TRAP /* 0xd9 */
.align 32
ta HP_BAD_TRAP /* 0xda */
.align 32
ta HP_BAD_TRAP /* 0xdb */
.align 32
ta HP_BAD_TRAP /* 0xdc */
.align 32
ta HP_BAD_TRAP /* 0xdd */
.align 32
ta HP_BAD_TRAP /* 0xde */
.align 32
ta HP_BAD_TRAP /* 0xdf */
.align 32
ta HP_BAD_TRAP /* 0xe0 */
.align 32
ta HP_BAD_TRAP /* 0xe1 */
.align 32
ta HP_BAD_TRAP /* 0xe2 */
.align 32
ta HP_BAD_TRAP /* 0xe3 */
.align 32
ta HP_BAD_TRAP /* 0xe4 */
.align 32
ta HP_BAD_TRAP /* 0xe5 */
.align 32
ta HP_BAD_TRAP /* 0xe6 */
.align 32
ta HP_BAD_TRAP /* 0xe7 */
.align 32
ta HP_BAD_TRAP /* 0xe8 */
.align 32
ta HP_BAD_TRAP /* 0xe9 */
.align 32
ta HP_BAD_TRAP /* 0xea */
.align 32
ta HP_BAD_TRAP /* 0xeb */
.align 32
ta HP_BAD_TRAP /* 0xec */
.align 32
ta HP_BAD_TRAP /* 0xed */
.align 32
ta HP_BAD_TRAP /* 0xee */
.align 32
ta HP_BAD_TRAP /* 0xef */
.align 32
ta HP_BAD_TRAP /* 0xf0 */
.align 32
ta HP_BAD_TRAP /* 0xf1 */
.align 32
ta HP_BAD_TRAP /* 0xf2 */
.align 32
ta HP_BAD_TRAP /* 0xf3 */
.align 32
ta HP_BAD_TRAP /* 0xf4 */
.align 32
ta HP_BAD_TRAP /* 0xf5 */
.align 32
ta HP_BAD_TRAP /* 0xf6 */
.align 32
ta HP_BAD_TRAP /* 0xf7 */
.align 32
ta HP_BAD_TRAP /* 0xf8 */
.align 32
ta HP_BAD_TRAP /* 0xf9 */
.align 32
ta HP_BAD_TRAP /* 0xfa */
.align 32
ta HP_BAD_TRAP /* 0xfb */
.align 32
ta HP_BAD_TRAP /* 0xfc */
.align 32
ta HP_BAD_TRAP /* 0xfd */
.align 32
ta HP_BAD_TRAP /* 0xfe */
.align 32
ta HP_BAD_TRAP /* 0xff */
.align 32
ta HP_GOOD_TRAP /* 0x100 */
.align 32
ta HP_BAD_TRAP /* 0x101 */
.align 32
ta HP_BAD_TRAP /* 0x102 */
.align 32
ta HP_BAD_TRAP /* 0x103 */
.align 32
ta HP_BAD_TRAP /* 0x104 */
.align 32
ta HP_BAD_TRAP /* 0x105 */
.align 32
ta HP_BAD_TRAP /* 0x106 */
.align 32
ta HP_BAD_TRAP /* 0x107 */
.align 32
ta HP_BAD_TRAP /* 0x108 */
.align 32
ta HP_BAD_TRAP /* 0x109 */
.align 32
ta HP_BAD_TRAP /* 0x10a */
.align 32
ta HP_BAD_TRAP /* 0x10b */
.align 32
ta HP_BAD_TRAP /* 0x10c */
.align 32
ta HP_BAD_TRAP /* 0x10d */
.align 32
ta HP_BAD_TRAP /* 0x10e */
.align 32
ta HP_BAD_TRAP /* 0x10f */
.align 32
ta HPTRAP_I_DEMAP_ALL /* 0x110 */
done
.align 32
ta HPTRAP_I_DEMAP_PCTX /* 0x111 */
done
.align 32
ta HPTRAP_I_DEMAP_SCTX /* 0x112 */
done
.align 32
ta HPTRAP_I_DEMAP_NCTX /* 0x113 */
done
.align 32
ta HPTRAP_I_DEMAP_PAGE /* 0x114 */
done
.align 32
ta HPTRAP_I_DEMAP_RPAGE /* 0x115 */
done
.align 32
ta HPTRAP_I_DEMAP_REAL /* 0x116 */
done
.align 32
ta HPTRAP_D_DEMAP_ALL /* 0x117 */
done
.align 32
ta HPTRAP_D_DEMAP_PCTX /* 0x118 */
done
.align 32
ta HPTRAP_D_DEMAP_SCTX /* 0x119 */
done
.align 32
ta HPTRAP_D_DEMAP_NCTX /* 0x11a */
done
.align 32
ta HPTRAP_D_DEMAP_PAGE /* 0x11b */
done
.align 32
ta HPTRAP_D_DEMAP_RPAGE /* 0x11c */
done
.align 32
ta HPTRAP_D_DEMAP_REAL /* 0x11d */
done
.align 32
ta HP_BAD_TRAP /* 0x11e */
.align 32
ta HP_BAD_TRAP /* 0x11f */
.align 32
sllx %i7, 63, %g1
brz %g1, 1f
nop
rdpr %tnpc, %g2
add %g2, 8, %g2
wrpr %g2, %tnpc
1:
done
.align 32
ta HPTRAP_CHANGE_PID /* 0x121 */
done
.align 32
ta HPTRAP_INCR_TSB_SIZE /* 0x122 */
done
.align 32 /* 0x123 */
ldxa [%l1] 0x14, %l2
done
.align 32 /* 0x124 */
ldxa [%l1] 0x1c, %l2
done
.align 32 /* 0x125 */
ldda [%l1] 0x26, %l2
done
.align 32 /* 0x126 */
ldda [%l1] 0x2e, %l2
done
.align 32
ta HPTRAP_CLEAR_LSU_IMMU /* 0x127 */
done
.align 32
ta HPTRAP_CLEAR_LSU_DMMU /* 0x128 */
done
.align 32
ta HPTRAP_DELAY_LOOP /* 0x129 */
done
.align 32
ta HPTRAP_SEM_LOCK /* 0x12a */
done
.align 32
ta HPTRAP_SEM_RELEASE /* 0x12b */
done
.align 32
ta HPTRAP_SEM_GET /* 0x12c */
done
.align 32
ta HPTRAP_SEM_SET /* 0x12d */
done
.align 32
ta HP_BAD_TRAP /* 0x12e */
.align 32
ta HP_BAD_TRAP /* 0x12f */
.align 32
ta HP_BAD_TRAP /* 0x130 */
.align 32
ta HP_BAD_TRAP /* 0x131 */
.align 32
ta HP_BAD_TRAP /* 0x132 */
.align 32
ta HP_BAD_TRAP /* 0x133 */
.align 32
ta HP_BAD_TRAP /* 0x134 */
.align 32
ta HP_BAD_TRAP /* 0x135 */
.align 32
ta HP_BAD_TRAP /* 0x136 */
.align 32
ta HP_BAD_TRAP /* 0x137 */
.align 32
ta HP_BAD_TRAP /* 0x138 */
.align 32
ta HP_BAD_TRAP /* 0x139 */
.align 32
ta HP_BAD_TRAP /* 0x13a */
.align 32
ta HP_BAD_TRAP /* 0x13b */
.align 32
ta HP_BAD_TRAP /* 0x13c */
.align 32
ta HP_BAD_TRAP /* 0x13d */
.align 32
ta HP_BAD_TRAP /* 0x13e */
.align 32
ta HP_BAD_TRAP /* 0x13f */
.align 32
ta HP_BAD_TRAP /* 0x140 */
.align 32
ta HP_BAD_TRAP /* 0x141 */
.align 32
ta HP_BAD_TRAP /* 0x142 */
.align 32
ta HP_BAD_TRAP /* 0x143 */
.align 32
ta HP_BAD_TRAP /* 0x144 */
.align 32
ta HP_BAD_TRAP /* 0x145 */
.align 32
ta HP_BAD_TRAP /* 0x146 */
.align 32
ta HP_BAD_TRAP /* 0x147 */
.align 32
ta HP_BAD_TRAP /* 0x148 */
.align 32
ta HP_BAD_TRAP /* 0x149 */
.align 32
ta HP_BAD_TRAP /* 0x14a */
.align 32
ta HP_BAD_TRAP /* 0x14b */
.align 32
ta HP_BAD_TRAP /* 0x14c */
.align 32
ta HP_BAD_TRAP /* 0x14d */
.align 32
ta HP_BAD_TRAP /* 0x14e */
.align 32
ta HP_BAD_TRAP /* 0x14f */
.align 32
ta HP_BAD_TRAP /* 0x150 */
.align 32
ta HP_BAD_TRAP /* 0x151 */
.align 32
ta HP_BAD_TRAP /* 0x152 */
.align 32
ta HP_BAD_TRAP /* 0x153 */
.align 32
ta HP_BAD_TRAP /* 0x154 */
.align 32
ta HP_BAD_TRAP /* 0x155 */
.align 32
ta HP_BAD_TRAP /* 0x156 */
.align 32
ta HP_BAD_TRAP /* 0x157 */
.align 32
ta HP_BAD_TRAP /* 0x158 */
.align 32
ta HP_BAD_TRAP /* 0x159 */
.align 32
ta HP_BAD_TRAP /* 0x15a */
.align 32
ta HP_BAD_TRAP /* 0x15b */
.align 32
ta HP_BAD_TRAP /* 0x15c */
.align 32
ta HP_BAD_TRAP /* 0x15d */
.align 32
ta HP_BAD_TRAP /* 0x15e */
.align 32
ta HP_BAD_TRAP /* 0x15f */
.align 32
ta HP_BAD_TRAP /* 0x160 */
.align 32
ta HP_BAD_TRAP /* 0x161 */
.align 32
ta HP_BAD_TRAP /* 0x162 */
.align 32
ta HP_BAD_TRAP /* 0x163 */
.align 32
ta HP_BAD_TRAP /* 0x164 */
.align 32
ta HP_BAD_TRAP /* 0x165 */
.align 32
ta HP_BAD_TRAP /* 0x166 */
.align 32
ta HP_BAD_TRAP /* 0x167 */
.align 32
ta HP_BAD_TRAP /* 0x168 */
.align 32
ta HP_BAD_TRAP /* 0x169 */
.align 32
ta HP_BAD_TRAP /* 0x16a */
.align 32
ta HP_BAD_TRAP /* 0x16b */
.align 32
ta HP_BAD_TRAP /* 0x16c */
.align 32
ta HP_BAD_TRAP /* 0x16d */
.align 32
ta HP_BAD_TRAP /* 0x16e */
.align 32
ta HP_BAD_TRAP /* 0x16f */
.align 32
ta HP_BAD_TRAP /* 0x170 */
.align 32
ta HP_BAD_TRAP /* 0x171 */
.align 32
ta HP_BAD_TRAP /* 0x172 */
.align 32
ta HP_BAD_TRAP /* 0x173 */
.align 32
ta HP_BAD_TRAP /* 0x174 */
.align 32
ta HP_BAD_TRAP /* 0x175 */
.align 32
ta HP_BAD_TRAP /* 0x176 */
.align 32
ta HP_BAD_TRAP /* 0x177 */
.align 32
ta HP_BAD_TRAP /* 0x178 */
.align 32
ta HP_BAD_TRAP /* 0x179 */
.align 32
ta HP_BAD_TRAP /* 0x17a */
.align 32
ta HP_BAD_TRAP /* 0x17b */
.align 32
ta HP_BAD_TRAP /* 0x17c */
.align 32
ta HP_BAD_TRAP /* 0x17d */
.align 32
ta HP_BAD_TRAP /* 0x17e */
.align 32
ta HP_BAD_TRAP /* 0x17f */
.align 32
Thr4_Ptrap_Sect_text_end:
/*********************************************************************/
SECTION .Thr5_Ptrap_Sect TEXT_VA=THR5_PTRAP_TEXT_VA
attr_text {
Name = .Thr5_Ptrap_Sect ,
thr5_z_ctx_tsb_2
VA = THR5_PTRAP_TEXT_VA ,
RA = THR5_PTRAP_TEXT_RA ,
PA = THR5_PTRAP_TEXT_PA ,
TTE_Context = NUCLEUS ,
TTE_V = 1 ,
TTE_Size = 1 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr5_Ptrap_Sect_text_end ,
compressimage ,
}
ta HP_BAD_TRAP /* 0x0 */
.align 32
ta HP_BAD_TRAP /* 0x1 */
.align 32
ta HP_BAD_TRAP /* 0x2 */
.align 32
ta HP_BAD_TRAP /* 0x3 */
.align 32
ta HP_BAD_TRAP /* 0x4 */
.align 32
ta HP_BAD_TRAP /* 0x5 */
.align 32
ta HP_BAD_TRAP /* 0x6 */
.align 32
ta HP_BAD_TRAP /* 0x7 */
.align 32
ta HP_BAD_TRAP /* 0x8 */
.align 32
ta HP_BAD_TRAP /* 0x9 */
.align 32
ta HP_BAD_TRAP /* 0xa */
.align 32
ta HP_BAD_TRAP /* 0xb */
.align 32
ta HP_BAD_TRAP /* 0xc */
.align 32
ta HP_BAD_TRAP /* 0xd */
.align 32
ta HP_BAD_TRAP /* 0xe */
.align 32
ta HP_BAD_TRAP /* 0xf */
.align 32
ta HP_BAD_TRAP /* 0x10 */
.align 32
ta HP_BAD_TRAP /* 0x11 */
.align 32
ta HP_BAD_TRAP /* 0x12 */
.align 32
ta HP_BAD_TRAP /* 0x13 */
.align 32
ta HP_BAD_TRAP /* 0x14 */
.align 32
ta HP_BAD_TRAP /* 0x15 */
.align 32
ta HP_BAD_TRAP /* 0x16 */
.align 32
ta HP_BAD_TRAP /* 0x17 */
.align 32
ta HP_BAD_TRAP /* 0x18 */
.align 32
ta HP_BAD_TRAP /* 0x19 */
.align 32
ta HP_BAD_TRAP /* 0x1a */
.align 32
ta HP_BAD_TRAP /* 0x1b */
.align 32
ta HP_BAD_TRAP /* 0x1c */
.align 32
ta HP_BAD_TRAP /* 0x1d */
.align 32
ta HP_BAD_TRAP /* 0x1e */
.align 32
ta HP_BAD_TRAP /* 0x1f */
.align 32
ta HP_BAD_TRAP /* 0x20 */
.align 32
ta HP_BAD_TRAP /* 0x21 */
.align 32
ta HP_BAD_TRAP /* 0x22 */
.align 32
ta HP_BAD_TRAP /* 0x23 */
.align 32
ta HP_BAD_TRAP /* 0x24 */
.align 32
ta HP_BAD_TRAP /* 0x25 */
.align 32
ta HP_BAD_TRAP /* 0x26 */
.align 32
ta HP_BAD_TRAP /* 0x27 */
.align 32
ta HP_BAD_TRAP /* 0x28 */
.align 32
ta HP_BAD_TRAP /* 0x29 */
.align 32
ta HP_BAD_TRAP /* 0x2a */
.align 32
ta HP_BAD_TRAP /* 0x2b */
.align 32
ta HP_BAD_TRAP /* 0x2c */
.align 32
ta HP_BAD_TRAP /* 0x2d */
.align 32
ta HP_BAD_TRAP /* 0x2e */
.align 32
ta HP_BAD_TRAP /* 0x2f */
.align 32
ta HP_BAD_TRAP /* 0x30 */
.align 32
ta HP_BAD_TRAP /* 0x31 */
.align 32
ta HP_BAD_TRAP /* 0x32 */
.align 32
ta HP_BAD_TRAP /* 0x33 */
.align 32
ta HP_BAD_TRAP /* 0x34 */
.align 32
ta HP_BAD_TRAP /* 0x35 */
.align 32
ta HP_BAD_TRAP /* 0x36 */
.align 32
ta HP_BAD_TRAP /* 0x37 */
.align 32
ta HP_BAD_TRAP /* 0x38 */
.align 32
ta HP_BAD_TRAP /* 0x39 */
.align 32
ta HP_BAD_TRAP /* 0x3a */
.align 32
ta HP_BAD_TRAP /* 0x3b */
.align 32
ta HP_BAD_TRAP /* 0x3c */
.align 32
ta HP_BAD_TRAP /* 0x3d */
.align 32
ta HP_BAD_TRAP /* 0x3e */
.align 32
ta HP_BAD_TRAP /* 0x3f */
.align 32
ta HP_BAD_TRAP /* 0x40 */
.align 32
ta HP_BAD_TRAP /* 0x41 */
.align 32
ta HP_BAD_TRAP /* 0x42 */
.align 32
ta HP_BAD_TRAP /* 0x43 */
.align 32
ta HP_BAD_TRAP /* 0x44 */
.align 32
ta HP_BAD_TRAP /* 0x45 */
.align 32
ta HP_BAD_TRAP /* 0x46 */
.align 32
ta HP_BAD_TRAP /* 0x47 */
.align 32
ta HP_BAD_TRAP /* 0x48 */
.align 32
ta HP_BAD_TRAP /* 0x49 */
.align 32
ta HP_BAD_TRAP /* 0x4a */
.align 32
ta HP_BAD_TRAP /* 0x4b */
.align 32
ta HP_BAD_TRAP /* 0x4c */
.align 32
ta HP_BAD_TRAP /* 0x4d */
.align 32
ta HP_BAD_TRAP /* 0x4e */
.align 32
ta HP_BAD_TRAP /* 0x4f */
.align 32
ta HP_BAD_TRAP /* 0x50 */
.align 32
ta HP_BAD_TRAP /* 0x51 */
.align 32
ta HP_BAD_TRAP /* 0x52 */
.align 32
ta HP_BAD_TRAP /* 0x53 */
.align 32
ta HP_BAD_TRAP /* 0x54 */
.align 32
ta HP_BAD_TRAP /* 0x55 */
.align 32
ta HP_BAD_TRAP /* 0x56 */
.align 32
ta HP_BAD_TRAP /* 0x57 */
.align 32
ta HP_BAD_TRAP /* 0x58 */
.align 32
ta HP_BAD_TRAP /* 0x59 */
.align 32
ta HP_BAD_TRAP /* 0x5a */
.align 32
ta HP_BAD_TRAP /* 0x5b */
.align 32
ta HP_BAD_TRAP /* 0x5c */
.align 32
ta HP_BAD_TRAP /* 0x5d */
.align 32
ta HP_BAD_TRAP /* 0x5e */
.align 32
ta HP_BAD_TRAP /* 0x5f */
.align 32
ta HP_BAD_TRAP /* 0x60 */
.align 32
ta HP_BAD_TRAP /* 0x61 */
.align 32
ta HP_BAD_TRAP /* 0x62 */
.align 32
ta HP_BAD_TRAP /* 0x63 */
.align 32
ta HP_BAD_TRAP /* 0x64 */
.align 32
ta HP_BAD_TRAP /* 0x65 */
.align 32
ta HP_BAD_TRAP /* 0x66 */
.align 32
ta HP_BAD_TRAP /* 0x67 */
.align 32
ta HP_BAD_TRAP /* 0x68 */
.align 32
ta HP_BAD_TRAP /* 0x69 */
.align 32
ta HP_BAD_TRAP /* 0x6a */
.align 32
ta HP_BAD_TRAP /* 0x6b */
.align 32
ta HP_BAD_TRAP /* 0x6c */
.align 32
ta HP_BAD_TRAP /* 0x6d */
.align 32
ta HP_BAD_TRAP /* 0x6e */
.align 32
ta HP_BAD_TRAP /* 0x6f */
.align 32
ta HP_BAD_TRAP /* 0x70 */
.align 32
ta HP_BAD_TRAP /* 0x71 */
.align 32
ta HP_BAD_TRAP /* 0x72 */
.align 32
ta HP_BAD_TRAP /* 0x73 */
.align 32
ta HP_BAD_TRAP /* 0x74 */
.align 32
ta HP_BAD_TRAP /* 0x75 */
.align 32
ta HP_BAD_TRAP /* 0x76 */
.align 32
ta HP_BAD_TRAP /* 0x77 */
.align 32
ta HP_BAD_TRAP /* 0x78 */
.align 32
ta HP_BAD_TRAP /* 0x79 */
.align 32
ta HP_BAD_TRAP /* 0x7a */
.align 32
ta HP_BAD_TRAP /* 0x7b */
.align 32
ta HP_BAD_TRAP /* 0x7c */
.align 32
ta HP_BAD_TRAP /* 0x7d */
.align 32
ta HP_BAD_TRAP /* 0x7e */
.align 32
ta HP_BAD_TRAP /* 0x7f */
.align 32
ta HP_BAD_TRAP /* 0x80 */
.align 32
ta HP_BAD_TRAP /* 0x81 */
.align 32
ta HP_BAD_TRAP /* 0x82 */
.align 32
ta HP_BAD_TRAP /* 0x83 */
.align 32
ta HP_BAD_TRAP /* 0x84 */
.align 32
ta HP_BAD_TRAP /* 0x85 */
.align 32
ta HP_BAD_TRAP /* 0x86 */
.align 32
ta HP_BAD_TRAP /* 0x87 */
.align 32
ta HP_BAD_TRAP /* 0x88 */
.align 32
ta HP_BAD_TRAP /* 0x89 */
.align 32
ta HP_BAD_TRAP /* 0x8a */
.align 32
ta HP_BAD_TRAP /* 0x8b */
.align 32
ta HP_BAD_TRAP /* 0x8c */
.align 32
ta HP_BAD_TRAP /* 0x8d */
.align 32
ta HP_BAD_TRAP /* 0x8e */
.align 32
ta HP_BAD_TRAP /* 0x8f */
.align 32
ta HP_BAD_TRAP /* 0x90 */
.align 32
ta HP_BAD_TRAP /* 0x91 */
.align 32
ta HP_BAD_TRAP /* 0x92 */
.align 32
ta HP_BAD_TRAP /* 0x93 */
.align 32
ta HP_BAD_TRAP /* 0x94 */
.align 32
ta HP_BAD_TRAP /* 0x95 */
.align 32
ta HP_BAD_TRAP /* 0x96 */
.align 32
ta HP_BAD_TRAP /* 0x97 */
.align 32
ta HP_BAD_TRAP /* 0x98 */
.align 32
ta HP_BAD_TRAP /* 0x99 */
.align 32
ta HP_BAD_TRAP /* 0x9a */
.align 32
ta HP_BAD_TRAP /* 0x9b */
.align 32
ta HP_BAD_TRAP /* 0x9c */
.align 32
ta HP_BAD_TRAP /* 0x9d */
.align 32
ta HP_BAD_TRAP /* 0x9e */
.align 32
ta HP_BAD_TRAP /* 0x9f */
.align 32
ta HP_BAD_TRAP /* 0xa0 */
.align 32
ta HP_BAD_TRAP /* 0xa1 */
.align 32
ta HP_BAD_TRAP /* 0xa2 */
.align 32
ta HP_BAD_TRAP /* 0xa3 */
.align 32
ta HP_BAD_TRAP /* 0xa4 */
.align 32
ta HP_BAD_TRAP /* 0xa5 */
.align 32
ta HP_BAD_TRAP /* 0xa6 */
.align 32
ta HP_BAD_TRAP /* 0xa7 */
.align 32
ta HP_BAD_TRAP /* 0xa8 */
.align 32
ta HP_BAD_TRAP /* 0xa9 */
.align 32
ta HP_BAD_TRAP /* 0xaa */
.align 32
ta HP_BAD_TRAP /* 0xab */
.align 32
ta HP_BAD_TRAP /* 0xac */
.align 32
ta HP_BAD_TRAP /* 0xad */
.align 32
ta HP_BAD_TRAP /* 0xae */
.align 32
ta HP_BAD_TRAP /* 0xaf */
.align 32
ta HP_BAD_TRAP /* 0xb0 */
.align 32
ta HP_BAD_TRAP /* 0xb1 */
.align 32
ta HP_BAD_TRAP /* 0xb2 */
.align 32
ta HP_BAD_TRAP /* 0xb3 */
.align 32
ta HP_BAD_TRAP /* 0xb4 */
.align 32
ta HP_BAD_TRAP /* 0xb5 */
.align 32
ta HP_BAD_TRAP /* 0xb6 */
.align 32
ta HP_BAD_TRAP /* 0xb7 */
.align 32
ta HP_BAD_TRAP /* 0xb8 */
.align 32
ta HP_BAD_TRAP /* 0xb9 */
.align 32
ta HP_BAD_TRAP /* 0xba */
.align 32
ta HP_BAD_TRAP /* 0xbb */
.align 32
ta HP_BAD_TRAP /* 0xbc */
.align 32
ta HP_BAD_TRAP /* 0xbd */
.align 32
ta HP_BAD_TRAP /* 0xbe */
.align 32
ta HP_BAD_TRAP /* 0xbf */
.align 32
ta HP_BAD_TRAP /* 0xc0 */
.align 32
ta HP_BAD_TRAP /* 0xc1 */
.align 32
ta HP_BAD_TRAP /* 0xc2 */
.align 32
ta HP_BAD_TRAP /* 0xc3 */
.align 32
ta HP_BAD_TRAP /* 0xc4 */
.align 32
ta HP_BAD_TRAP /* 0xc5 */
.align 32
ta HP_BAD_TRAP /* 0xc6 */
.align 32
ta HP_BAD_TRAP /* 0xc7 */
.align 32
ta HP_BAD_TRAP /* 0xc8 */
.align 32
ta HP_BAD_TRAP /* 0xc9 */
.align 32
ta HP_BAD_TRAP /* 0xca */
.align 32
ta HP_BAD_TRAP /* 0xcb */
.align 32
ta HP_BAD_TRAP /* 0xcc */
.align 32
ta HP_BAD_TRAP /* 0xcd */
.align 32
ta HP_BAD_TRAP /* 0xce */
.align 32
ta HP_BAD_TRAP /* 0xcf */
.align 32
ta HP_BAD_TRAP /* 0xd0 */
.align 32
ta HP_BAD_TRAP /* 0xd1 */
.align 32
ta HP_BAD_TRAP /* 0xd2 */
.align 32
ta HP_BAD_TRAP /* 0xd3 */
.align 32
ta HP_BAD_TRAP /* 0xd4 */
.align 32
ta HP_BAD_TRAP /* 0xd5 */
.align 32
ta HP_BAD_TRAP /* 0xd6 */
.align 32
ta HP_BAD_TRAP /* 0xd7 */
.align 32
ta HP_BAD_TRAP /* 0xd8 */
.align 32
ta HP_BAD_TRAP /* 0xd9 */
.align 32
ta HP_BAD_TRAP /* 0xda */
.align 32
ta HP_BAD_TRAP /* 0xdb */
.align 32
ta HP_BAD_TRAP /* 0xdc */
.align 32
ta HP_BAD_TRAP /* 0xdd */
.align 32
ta HP_BAD_TRAP /* 0xde */
.align 32
ta HP_BAD_TRAP /* 0xdf */
.align 32
ta HP_BAD_TRAP /* 0xe0 */
.align 32
ta HP_BAD_TRAP /* 0xe1 */
.align 32
ta HP_BAD_TRAP /* 0xe2 */
.align 32
ta HP_BAD_TRAP /* 0xe3 */
.align 32
ta HP_BAD_TRAP /* 0xe4 */
.align 32
ta HP_BAD_TRAP /* 0xe5 */
.align 32
ta HP_BAD_TRAP /* 0xe6 */
.align 32
ta HP_BAD_TRAP /* 0xe7 */
.align 32
ta HP_BAD_TRAP /* 0xe8 */
.align 32
ta HP_BAD_TRAP /* 0xe9 */
.align 32
ta HP_BAD_TRAP /* 0xea */
.align 32
ta HP_BAD_TRAP /* 0xeb */
.align 32
ta HP_BAD_TRAP /* 0xec */
.align 32
ta HP_BAD_TRAP /* 0xed */
.align 32
ta HP_BAD_TRAP /* 0xee */
.align 32
ta HP_BAD_TRAP /* 0xef */
.align 32
ta HP_BAD_TRAP /* 0xf0 */
.align 32
ta HP_BAD_TRAP /* 0xf1 */
.align 32
ta HP_BAD_TRAP /* 0xf2 */
.align 32
ta HP_BAD_TRAP /* 0xf3 */
.align 32
ta HP_BAD_TRAP /* 0xf4 */
.align 32
ta HP_BAD_TRAP /* 0xf5 */
.align 32
ta HP_BAD_TRAP /* 0xf6 */
.align 32
ta HP_BAD_TRAP /* 0xf7 */
.align 32
ta HP_BAD_TRAP /* 0xf8 */
.align 32
ta HP_BAD_TRAP /* 0xf9 */
.align 32
ta HP_BAD_TRAP /* 0xfa */
.align 32
ta HP_BAD_TRAP /* 0xfb */
.align 32
ta HP_BAD_TRAP /* 0xfc */
.align 32
ta HP_BAD_TRAP /* 0xfd */
.align 32
ta HP_BAD_TRAP /* 0xfe */
.align 32
ta HP_BAD_TRAP /* 0xff */
.align 32
ta HP_GOOD_TRAP /* 0x100 */
.align 32
ta HP_BAD_TRAP /* 0x101 */
.align 32
ta HP_BAD_TRAP /* 0x102 */
.align 32
ta HP_BAD_TRAP /* 0x103 */
.align 32
ta HP_BAD_TRAP /* 0x104 */
.align 32
ta HP_BAD_TRAP /* 0x105 */
.align 32
ta HP_BAD_TRAP /* 0x106 */
.align 32
ta HP_BAD_TRAP /* 0x107 */
.align 32
ta HP_BAD_TRAP /* 0x108 */
.align 32
ta HP_BAD_TRAP /* 0x109 */
.align 32
ta HP_BAD_TRAP /* 0x10a */
.align 32
ta HP_BAD_TRAP /* 0x10b */
.align 32
ta HP_BAD_TRAP /* 0x10c */
.align 32
ta HP_BAD_TRAP /* 0x10d */
.align 32
ta HP_BAD_TRAP /* 0x10e */
.align 32
ta HP_BAD_TRAP /* 0x10f */
.align 32
ta HPTRAP_I_DEMAP_ALL /* 0x110 */
done
.align 32
ta HPTRAP_I_DEMAP_PCTX /* 0x111 */
done
.align 32
ta HPTRAP_I_DEMAP_SCTX /* 0x112 */
done
.align 32
ta HPTRAP_I_DEMAP_NCTX /* 0x113 */
done
.align 32
ta HPTRAP_I_DEMAP_PAGE /* 0x114 */
done
.align 32
ta HPTRAP_I_DEMAP_RPAGE /* 0x115 */
done
.align 32
ta HPTRAP_I_DEMAP_REAL /* 0x116 */
done
.align 32
ta HPTRAP_D_DEMAP_ALL /* 0x117 */
done
.align 32
ta HPTRAP_D_DEMAP_PCTX /* 0x118 */
done
.align 32
ta HPTRAP_D_DEMAP_SCTX /* 0x119 */
done
.align 32
ta HPTRAP_D_DEMAP_NCTX /* 0x11a */
done
.align 32
ta HPTRAP_D_DEMAP_PAGE /* 0x11b */
done
.align 32
ta HPTRAP_D_DEMAP_RPAGE /* 0x11c */
done
.align 32
ta HPTRAP_D_DEMAP_REAL /* 0x11d */
done
.align 32
ta HP_BAD_TRAP /* 0x11e */
.align 32
ta HP_BAD_TRAP /* 0x11f */
.align 32
sllx %i7, 63, %g1
brz %g1, 1f
nop
rdpr %tnpc, %g2
add %g2, 8, %g2
wrpr %g2, %tnpc
1:
done
.align 32
ta HPTRAP_CHANGE_PID /* 0x121 */
done
.align 32
ta HPTRAP_INCR_TSB_SIZE /* 0x122 */
done
.align 32 /* 0x123 */
ldxa [%l1] 0x14, %l2
done
.align 32 /* 0x124 */
ldxa [%l1] 0x1c, %l2
done
.align 32 /* 0x125 */
ldda [%l1] 0x26, %l2
done
.align 32 /* 0x126 */
ldda [%l1] 0x2e, %l2
done
.align 32
ta HPTRAP_CLEAR_LSU_IMMU /* 0x127 */
done
.align 32
ta HPTRAP_CLEAR_LSU_DMMU /* 0x128 */
done
.align 32
ta HPTRAP_DELAY_LOOP /* 0x129 */
done
.align 32
ta HPTRAP_SEM_LOCK /* 0x12a */
done
.align 32
ta HPTRAP_SEM_RELEASE /* 0x12b */
done
.align 32
ta HPTRAP_SEM_GET /* 0x12c */
done
.align 32
ta HPTRAP_SEM_SET /* 0x12d */
done
.align 32
ta HP_BAD_TRAP /* 0x12e */
.align 32
ta HP_BAD_TRAP /* 0x12f */
.align 32
ta HP_BAD_TRAP /* 0x130 */
.align 32
ta HP_BAD_TRAP /* 0x131 */
.align 32
ta HP_BAD_TRAP /* 0x132 */
.align 32
ta HP_BAD_TRAP /* 0x133 */
.align 32
ta HP_BAD_TRAP /* 0x134 */
.align 32
ta HP_BAD_TRAP /* 0x135 */
.align 32
ta HP_BAD_TRAP /* 0x136 */
.align 32
ta HP_BAD_TRAP /* 0x137 */
.align 32
ta HP_BAD_TRAP /* 0x138 */
.align 32
ta HP_BAD_TRAP /* 0x139 */
.align 32
ta HP_BAD_TRAP /* 0x13a */
.align 32
ta HP_BAD_TRAP /* 0x13b */
.align 32
ta HP_BAD_TRAP /* 0x13c */
.align 32
ta HP_BAD_TRAP /* 0x13d */
.align 32
ta HP_BAD_TRAP /* 0x13e */
.align 32
ta HP_BAD_TRAP /* 0x13f */
.align 32
ta HP_BAD_TRAP /* 0x140 */
.align 32
ta HP_BAD_TRAP /* 0x141 */
.align 32
ta HP_BAD_TRAP /* 0x142 */
.align 32
ta HP_BAD_TRAP /* 0x143 */
.align 32
ta HP_BAD_TRAP /* 0x144 */
.align 32
ta HP_BAD_TRAP /* 0x145 */
.align 32
ta HP_BAD_TRAP /* 0x146 */
.align 32
ta HP_BAD_TRAP /* 0x147 */
.align 32
ta HP_BAD_TRAP /* 0x148 */
.align 32
ta HP_BAD_TRAP /* 0x149 */
.align 32
ta HP_BAD_TRAP /* 0x14a */
.align 32
ta HP_BAD_TRAP /* 0x14b */
.align 32
ta HP_BAD_TRAP /* 0x14c */
.align 32
ta HP_BAD_TRAP /* 0x14d */
.align 32
ta HP_BAD_TRAP /* 0x14e */
.align 32
ta HP_BAD_TRAP /* 0x14f */
.align 32
ta HP_BAD_TRAP /* 0x150 */
.align 32
ta HP_BAD_TRAP /* 0x151 */
.align 32
ta HP_BAD_TRAP /* 0x152 */
.align 32
ta HP_BAD_TRAP /* 0x153 */
.align 32
ta HP_BAD_TRAP /* 0x154 */
.align 32
ta HP_BAD_TRAP /* 0x155 */
.align 32
ta HP_BAD_TRAP /* 0x156 */
.align 32
ta HP_BAD_TRAP /* 0x157 */
.align 32
ta HP_BAD_TRAP /* 0x158 */
.align 32
ta HP_BAD_TRAP /* 0x159 */
.align 32
ta HP_BAD_TRAP /* 0x15a */
.align 32
ta HP_BAD_TRAP /* 0x15b */
.align 32
ta HP_BAD_TRAP /* 0x15c */
.align 32
ta HP_BAD_TRAP /* 0x15d */
.align 32
ta HP_BAD_TRAP /* 0x15e */
.align 32
ta HP_BAD_TRAP /* 0x15f */
.align 32
ta HP_BAD_TRAP /* 0x160 */
.align 32
ta HP_BAD_TRAP /* 0x161 */
.align 32
ta HP_BAD_TRAP /* 0x162 */
.align 32
ta HP_BAD_TRAP /* 0x163 */
.align 32
ta HP_BAD_TRAP /* 0x164 */
.align 32
ta HP_BAD_TRAP /* 0x165 */
.align 32
ta HP_BAD_TRAP /* 0x166 */
.align 32
ta HP_BAD_TRAP /* 0x167 */
.align 32
ta HP_BAD_TRAP /* 0x168 */
.align 32
ta HP_BAD_TRAP /* 0x169 */
.align 32
ta HP_BAD_TRAP /* 0x16a */
.align 32
ta HP_BAD_TRAP /* 0x16b */
.align 32
ta HP_BAD_TRAP /* 0x16c */
.align 32
ta HP_BAD_TRAP /* 0x16d */
.align 32
ta HP_BAD_TRAP /* 0x16e */
.align 32
ta HP_BAD_TRAP /* 0x16f */
.align 32
ta HP_BAD_TRAP /* 0x170 */
.align 32
ta HP_BAD_TRAP /* 0x171 */
.align 32
ta HP_BAD_TRAP /* 0x172 */
.align 32
ta HP_BAD_TRAP /* 0x173 */
.align 32
ta HP_BAD_TRAP /* 0x174 */
.align 32
ta HP_BAD_TRAP /* 0x175 */
.align 32
ta HP_BAD_TRAP /* 0x176 */
.align 32
ta HP_BAD_TRAP /* 0x177 */
.align 32
ta HP_BAD_TRAP /* 0x178 */
.align 32
ta HP_BAD_TRAP /* 0x179 */
.align 32
ta HP_BAD_TRAP /* 0x17a */
.align 32
ta HP_BAD_TRAP /* 0x17b */
.align 32
ta HP_BAD_TRAP /* 0x17c */
.align 32
ta HP_BAD_TRAP /* 0x17d */
.align 32
ta HP_BAD_TRAP /* 0x17e */
.align 32
ta HP_BAD_TRAP /* 0x17f */
.align 32
Thr5_Ptrap_Sect_text_end:
/*********************************************************************/
SECTION .Thr6_Ptrap_Sect TEXT_VA=THR6_PTRAP_TEXT_VA
attr_text {
Name = .Thr6_Ptrap_Sect ,
thr6_z_ctx_tsb_2
VA = THR6_PTRAP_TEXT_VA ,
RA = THR6_PTRAP_TEXT_RA ,
PA = THR6_PTRAP_TEXT_PA ,
TTE_Context = NUCLEUS ,
TTE_V = 1 ,
TTE_Size = 1 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr6_Ptrap_Sect_text_end ,
compressimage ,
}
ta HP_BAD_TRAP /* 0x0 */
.align 32
ta HP_BAD_TRAP /* 0x1 */
.align 32
ta HP_BAD_TRAP /* 0x2 */
.align 32
ta HP_BAD_TRAP /* 0x3 */
.align 32
ta HP_BAD_TRAP /* 0x4 */
.align 32
ta HP_BAD_TRAP /* 0x5 */
.align 32
ta HP_BAD_TRAP /* 0x6 */
.align 32
ta HP_BAD_TRAP /* 0x7 */
.align 32
ta HP_BAD_TRAP /* 0x8 */
.align 32
ta HP_BAD_TRAP /* 0x9 */
.align 32
ta HP_BAD_TRAP /* 0xa */
.align 32
ta HP_BAD_TRAP /* 0xb */
.align 32
ta HP_BAD_TRAP /* 0xc */
.align 32
ta HP_BAD_TRAP /* 0xd */
.align 32
ta HP_BAD_TRAP /* 0xe */
.align 32
ta HP_BAD_TRAP /* 0xf */
.align 32
ta HP_BAD_TRAP /* 0x10 */
.align 32
ta HP_BAD_TRAP /* 0x11 */
.align 32
ta HP_BAD_TRAP /* 0x12 */
.align 32
ta HP_BAD_TRAP /* 0x13 */
.align 32
ta HP_BAD_TRAP /* 0x14 */
.align 32
ta HP_BAD_TRAP /* 0x15 */
.align 32
ta HP_BAD_TRAP /* 0x16 */
.align 32
ta HP_BAD_TRAP /* 0x17 */
.align 32
ta HP_BAD_TRAP /* 0x18 */
.align 32
ta HP_BAD_TRAP /* 0x19 */
.align 32
ta HP_BAD_TRAP /* 0x1a */
.align 32
ta HP_BAD_TRAP /* 0x1b */
.align 32
ta HP_BAD_TRAP /* 0x1c */
.align 32
ta HP_BAD_TRAP /* 0x1d */
.align 32
ta HP_BAD_TRAP /* 0x1e */
.align 32
ta HP_BAD_TRAP /* 0x1f */
.align 32
ta HP_BAD_TRAP /* 0x20 */
.align 32
ta HP_BAD_TRAP /* 0x21 */
.align 32
ta HP_BAD_TRAP /* 0x22 */
.align 32
ta HP_BAD_TRAP /* 0x23 */
.align 32
ta HP_BAD_TRAP /* 0x24 */
.align 32
ta HP_BAD_TRAP /* 0x25 */
.align 32
ta HP_BAD_TRAP /* 0x26 */
.align 32
ta HP_BAD_TRAP /* 0x27 */
.align 32
ta HP_BAD_TRAP /* 0x28 */
.align 32
ta HP_BAD_TRAP /* 0x29 */
.align 32
ta HP_BAD_TRAP /* 0x2a */
.align 32
ta HP_BAD_TRAP /* 0x2b */
.align 32
ta HP_BAD_TRAP /* 0x2c */
.align 32
ta HP_BAD_TRAP /* 0x2d */
.align 32
ta HP_BAD_TRAP /* 0x2e */
.align 32
ta HP_BAD_TRAP /* 0x2f */
.align 32
ta HP_BAD_TRAP /* 0x30 */
.align 32
ta HP_BAD_TRAP /* 0x31 */
.align 32
ta HP_BAD_TRAP /* 0x32 */
.align 32
ta HP_BAD_TRAP /* 0x33 */
.align 32
ta HP_BAD_TRAP /* 0x34 */
.align 32
ta HP_BAD_TRAP /* 0x35 */
.align 32
ta HP_BAD_TRAP /* 0x36 */
.align 32
ta HP_BAD_TRAP /* 0x37 */
.align 32
ta HP_BAD_TRAP /* 0x38 */
.align 32
ta HP_BAD_TRAP /* 0x39 */
.align 32
ta HP_BAD_TRAP /* 0x3a */
.align 32
ta HP_BAD_TRAP /* 0x3b */
.align 32
ta HP_BAD_TRAP /* 0x3c */
.align 32
ta HP_BAD_TRAP /* 0x3d */
.align 32
ta HP_BAD_TRAP /* 0x3e */
.align 32
ta HP_BAD_TRAP /* 0x3f */
.align 32
ta HP_BAD_TRAP /* 0x40 */
.align 32
ta HP_BAD_TRAP /* 0x41 */
.align 32
ta HP_BAD_TRAP /* 0x42 */
.align 32
ta HP_BAD_TRAP /* 0x43 */
.align 32
ta HP_BAD_TRAP /* 0x44 */
.align 32
ta HP_BAD_TRAP /* 0x45 */
.align 32
ta HP_BAD_TRAP /* 0x46 */
.align 32
ta HP_BAD_TRAP /* 0x47 */
.align 32
ta HP_BAD_TRAP /* 0x48 */
.align 32
ta HP_BAD_TRAP /* 0x49 */
.align 32
ta HP_BAD_TRAP /* 0x4a */
.align 32
ta HP_BAD_TRAP /* 0x4b */
.align 32
ta HP_BAD_TRAP /* 0x4c */
.align 32
ta HP_BAD_TRAP /* 0x4d */
.align 32
ta HP_BAD_TRAP /* 0x4e */
.align 32
ta HP_BAD_TRAP /* 0x4f */
.align 32
ta HP_BAD_TRAP /* 0x50 */
.align 32
ta HP_BAD_TRAP /* 0x51 */
.align 32
ta HP_BAD_TRAP /* 0x52 */
.align 32
ta HP_BAD_TRAP /* 0x53 */
.align 32
ta HP_BAD_TRAP /* 0x54 */
.align 32
ta HP_BAD_TRAP /* 0x55 */
.align 32
ta HP_BAD_TRAP /* 0x56 */
.align 32
ta HP_BAD_TRAP /* 0x57 */
.align 32
ta HP_BAD_TRAP /* 0x58 */
.align 32
ta HP_BAD_TRAP /* 0x59 */
.align 32
ta HP_BAD_TRAP /* 0x5a */
.align 32
ta HP_BAD_TRAP /* 0x5b */
.align 32
ta HP_BAD_TRAP /* 0x5c */
.align 32
ta HP_BAD_TRAP /* 0x5d */
.align 32
ta HP_BAD_TRAP /* 0x5e */
.align 32
ta HP_BAD_TRAP /* 0x5f */
.align 32
ta HP_BAD_TRAP /* 0x60 */
.align 32
ta HP_BAD_TRAP /* 0x61 */
.align 32
ta HP_BAD_TRAP /* 0x62 */
.align 32
ta HP_BAD_TRAP /* 0x63 */
.align 32
ta HP_BAD_TRAP /* 0x64 */
.align 32
ta HP_BAD_TRAP /* 0x65 */
.align 32
ta HP_BAD_TRAP /* 0x66 */
.align 32
ta HP_BAD_TRAP /* 0x67 */
.align 32
ta HP_BAD_TRAP /* 0x68 */
.align 32
ta HP_BAD_TRAP /* 0x69 */
.align 32
ta HP_BAD_TRAP /* 0x6a */
.align 32
ta HP_BAD_TRAP /* 0x6b */
.align 32
ta HP_BAD_TRAP /* 0x6c */
.align 32
ta HP_BAD_TRAP /* 0x6d */
.align 32
ta HP_BAD_TRAP /* 0x6e */
.align 32
ta HP_BAD_TRAP /* 0x6f */
.align 32
ta HP_BAD_TRAP /* 0x70 */
.align 32
ta HP_BAD_TRAP /* 0x71 */
.align 32
ta HP_BAD_TRAP /* 0x72 */
.align 32
ta HP_BAD_TRAP /* 0x73 */
.align 32
ta HP_BAD_TRAP /* 0x74 */
.align 32
ta HP_BAD_TRAP /* 0x75 */
.align 32
ta HP_BAD_TRAP /* 0x76 */
.align 32
ta HP_BAD_TRAP /* 0x77 */
.align 32
ta HP_BAD_TRAP /* 0x78 */
.align 32
ta HP_BAD_TRAP /* 0x79 */
.align 32
ta HP_BAD_TRAP /* 0x7a */
.align 32
ta HP_BAD_TRAP /* 0x7b */
.align 32
ta HP_BAD_TRAP /* 0x7c */
.align 32
ta HP_BAD_TRAP /* 0x7d */
.align 32
ta HP_BAD_TRAP /* 0x7e */
.align 32
ta HP_BAD_TRAP /* 0x7f */
.align 32
ta HP_BAD_TRAP /* 0x80 */
.align 32
ta HP_BAD_TRAP /* 0x81 */
.align 32
ta HP_BAD_TRAP /* 0x82 */
.align 32
ta HP_BAD_TRAP /* 0x83 */
.align 32
ta HP_BAD_TRAP /* 0x84 */
.align 32
ta HP_BAD_TRAP /* 0x85 */
.align 32
ta HP_BAD_TRAP /* 0x86 */
.align 32
ta HP_BAD_TRAP /* 0x87 */
.align 32
ta HP_BAD_TRAP /* 0x88 */
.align 32
ta HP_BAD_TRAP /* 0x89 */
.align 32
ta HP_BAD_TRAP /* 0x8a */
.align 32
ta HP_BAD_TRAP /* 0x8b */
.align 32
ta HP_BAD_TRAP /* 0x8c */
.align 32
ta HP_BAD_TRAP /* 0x8d */
.align 32
ta HP_BAD_TRAP /* 0x8e */
.align 32
ta HP_BAD_TRAP /* 0x8f */
.align 32
ta HP_BAD_TRAP /* 0x90 */
.align 32
ta HP_BAD_TRAP /* 0x91 */
.align 32
ta HP_BAD_TRAP /* 0x92 */
.align 32
ta HP_BAD_TRAP /* 0x93 */
.align 32
ta HP_BAD_TRAP /* 0x94 */
.align 32
ta HP_BAD_TRAP /* 0x95 */
.align 32
ta HP_BAD_TRAP /* 0x96 */
.align 32
ta HP_BAD_TRAP /* 0x97 */
.align 32
ta HP_BAD_TRAP /* 0x98 */
.align 32
ta HP_BAD_TRAP /* 0x99 */
.align 32
ta HP_BAD_TRAP /* 0x9a */
.align 32
ta HP_BAD_TRAP /* 0x9b */
.align 32
ta HP_BAD_TRAP /* 0x9c */
.align 32
ta HP_BAD_TRAP /* 0x9d */
.align 32
ta HP_BAD_TRAP /* 0x9e */
.align 32
ta HP_BAD_TRAP /* 0x9f */
.align 32
ta HP_BAD_TRAP /* 0xa0 */
.align 32
ta HP_BAD_TRAP /* 0xa1 */
.align 32
ta HP_BAD_TRAP /* 0xa2 */
.align 32
ta HP_BAD_TRAP /* 0xa3 */
.align 32
ta HP_BAD_TRAP /* 0xa4 */
.align 32
ta HP_BAD_TRAP /* 0xa5 */
.align 32
ta HP_BAD_TRAP /* 0xa6 */
.align 32
ta HP_BAD_TRAP /* 0xa7 */
.align 32
ta HP_BAD_TRAP /* 0xa8 */
.align 32
ta HP_BAD_TRAP /* 0xa9 */
.align 32
ta HP_BAD_TRAP /* 0xaa */
.align 32
ta HP_BAD_TRAP /* 0xab */
.align 32
ta HP_BAD_TRAP /* 0xac */
.align 32
ta HP_BAD_TRAP /* 0xad */
.align 32
ta HP_BAD_TRAP /* 0xae */
.align 32
ta HP_BAD_TRAP /* 0xaf */
.align 32
ta HP_BAD_TRAP /* 0xb0 */
.align 32
ta HP_BAD_TRAP /* 0xb1 */
.align 32
ta HP_BAD_TRAP /* 0xb2 */
.align 32
ta HP_BAD_TRAP /* 0xb3 */
.align 32
ta HP_BAD_TRAP /* 0xb4 */
.align 32
ta HP_BAD_TRAP /* 0xb5 */
.align 32
ta HP_BAD_TRAP /* 0xb6 */
.align 32
ta HP_BAD_TRAP /* 0xb7 */
.align 32
ta HP_BAD_TRAP /* 0xb8 */
.align 32
ta HP_BAD_TRAP /* 0xb9 */
.align 32
ta HP_BAD_TRAP /* 0xba */
.align 32
ta HP_BAD_TRAP /* 0xbb */
.align 32
ta HP_BAD_TRAP /* 0xbc */
.align 32
ta HP_BAD_TRAP /* 0xbd */
.align 32
ta HP_BAD_TRAP /* 0xbe */
.align 32
ta HP_BAD_TRAP /* 0xbf */
.align 32
ta HP_BAD_TRAP /* 0xc0 */
.align 32
ta HP_BAD_TRAP /* 0xc1 */
.align 32
ta HP_BAD_TRAP /* 0xc2 */
.align 32
ta HP_BAD_TRAP /* 0xc3 */
.align 32
ta HP_BAD_TRAP /* 0xc4 */
.align 32
ta HP_BAD_TRAP /* 0xc5 */
.align 32
ta HP_BAD_TRAP /* 0xc6 */
.align 32
ta HP_BAD_TRAP /* 0xc7 */
.align 32
ta HP_BAD_TRAP /* 0xc8 */
.align 32
ta HP_BAD_TRAP /* 0xc9 */
.align 32
ta HP_BAD_TRAP /* 0xca */
.align 32
ta HP_BAD_TRAP /* 0xcb */
.align 32
ta HP_BAD_TRAP /* 0xcc */
.align 32
ta HP_BAD_TRAP /* 0xcd */
.align 32
ta HP_BAD_TRAP /* 0xce */
.align 32
ta HP_BAD_TRAP /* 0xcf */
.align 32
ta HP_BAD_TRAP /* 0xd0 */
.align 32
ta HP_BAD_TRAP /* 0xd1 */
.align 32
ta HP_BAD_TRAP /* 0xd2 */
.align 32
ta HP_BAD_TRAP /* 0xd3 */
.align 32
ta HP_BAD_TRAP /* 0xd4 */
.align 32
ta HP_BAD_TRAP /* 0xd5 */
.align 32
ta HP_BAD_TRAP /* 0xd6 */
.align 32
ta HP_BAD_TRAP /* 0xd7 */
.align 32
ta HP_BAD_TRAP /* 0xd8 */
.align 32
ta HP_BAD_TRAP /* 0xd9 */
.align 32
ta HP_BAD_TRAP /* 0xda */
.align 32
ta HP_BAD_TRAP /* 0xdb */
.align 32
ta HP_BAD_TRAP /* 0xdc */
.align 32
ta HP_BAD_TRAP /* 0xdd */
.align 32
ta HP_BAD_TRAP /* 0xde */
.align 32
ta HP_BAD_TRAP /* 0xdf */
.align 32
ta HP_BAD_TRAP /* 0xe0 */
.align 32
ta HP_BAD_TRAP /* 0xe1 */
.align 32
ta HP_BAD_TRAP /* 0xe2 */
.align 32
ta HP_BAD_TRAP /* 0xe3 */
.align 32
ta HP_BAD_TRAP /* 0xe4 */
.align 32
ta HP_BAD_TRAP /* 0xe5 */
.align 32
ta HP_BAD_TRAP /* 0xe6 */
.align 32
ta HP_BAD_TRAP /* 0xe7 */
.align 32
ta HP_BAD_TRAP /* 0xe8 */
.align 32
ta HP_BAD_TRAP /* 0xe9 */
.align 32
ta HP_BAD_TRAP /* 0xea */
.align 32
ta HP_BAD_TRAP /* 0xeb */
.align 32
ta HP_BAD_TRAP /* 0xec */
.align 32
ta HP_BAD_TRAP /* 0xed */
.align 32
ta HP_BAD_TRAP /* 0xee */
.align 32
ta HP_BAD_TRAP /* 0xef */
.align 32
ta HP_BAD_TRAP /* 0xf0 */
.align 32
ta HP_BAD_TRAP /* 0xf1 */
.align 32
ta HP_BAD_TRAP /* 0xf2 */
.align 32
ta HP_BAD_TRAP /* 0xf3 */
.align 32
ta HP_BAD_TRAP /* 0xf4 */
.align 32
ta HP_BAD_TRAP /* 0xf5 */
.align 32
ta HP_BAD_TRAP /* 0xf6 */
.align 32
ta HP_BAD_TRAP /* 0xf7 */
.align 32
ta HP_BAD_TRAP /* 0xf8 */
.align 32
ta HP_BAD_TRAP /* 0xf9 */
.align 32
ta HP_BAD_TRAP /* 0xfa */
.align 32
ta HP_BAD_TRAP /* 0xfb */
.align 32
ta HP_BAD_TRAP /* 0xfc */
.align 32
ta HP_BAD_TRAP /* 0xfd */
.align 32
ta HP_BAD_TRAP /* 0xfe */
.align 32
ta HP_BAD_TRAP /* 0xff */
.align 32
ta HP_GOOD_TRAP /* 0x100 */
.align 32
ta HP_BAD_TRAP /* 0x101 */
.align 32
ta HP_BAD_TRAP /* 0x102 */
.align 32
ta HP_BAD_TRAP /* 0x103 */
.align 32
ta HP_BAD_TRAP /* 0x104 */
.align 32
ta HP_BAD_TRAP /* 0x105 */
.align 32
ta HP_BAD_TRAP /* 0x106 */
.align 32
ta HP_BAD_TRAP /* 0x107 */
.align 32
ta HP_BAD_TRAP /* 0x108 */
.align 32
ta HP_BAD_TRAP /* 0x109 */
.align 32
ta HP_BAD_TRAP /* 0x10a */
.align 32
ta HP_BAD_TRAP /* 0x10b */
.align 32
ta HP_BAD_TRAP /* 0x10c */
.align 32
ta HP_BAD_TRAP /* 0x10d */
.align 32
ta HP_BAD_TRAP /* 0x10e */
.align 32
ta HP_BAD_TRAP /* 0x10f */
.align 32
ta HPTRAP_I_DEMAP_ALL /* 0x110 */
done
.align 32
ta HPTRAP_I_DEMAP_PCTX /* 0x111 */
done
.align 32
ta HPTRAP_I_DEMAP_SCTX /* 0x112 */
done
.align 32
ta HPTRAP_I_DEMAP_NCTX /* 0x113 */
done
.align 32
ta HPTRAP_I_DEMAP_PAGE /* 0x114 */
done
.align 32
ta HPTRAP_I_DEMAP_RPAGE /* 0x115 */
done
.align 32
ta HPTRAP_I_DEMAP_REAL /* 0x116 */
done
.align 32
ta HPTRAP_D_DEMAP_ALL /* 0x117 */
done
.align 32
ta HPTRAP_D_DEMAP_PCTX /* 0x118 */
done
.align 32
ta HPTRAP_D_DEMAP_SCTX /* 0x119 */
done
.align 32
ta HPTRAP_D_DEMAP_NCTX /* 0x11a */
done
.align 32
ta HPTRAP_D_DEMAP_PAGE /* 0x11b */
done
.align 32
ta HPTRAP_D_DEMAP_RPAGE /* 0x11c */
done
.align 32
ta HPTRAP_D_DEMAP_REAL /* 0x11d */
done
.align 32
ta HP_BAD_TRAP /* 0x11e */
.align 32
ta HP_BAD_TRAP /* 0x11f */
.align 32
sllx %i7, 63, %g1
brz %g1, 1f
nop
rdpr %tnpc, %g2
add %g2, 8, %g2
wrpr %g2, %tnpc
1:
done
.align 32
ta HPTRAP_CHANGE_PID /* 0x121 */
done
.align 32
ta HPTRAP_INCR_TSB_SIZE /* 0x122 */
done
.align 32 /* 0x123 */
ldxa [%l1] 0x14, %l2
done
.align 32 /* 0x124 */
ldxa [%l1] 0x1c, %l2
done
.align 32 /* 0x125 */
ldda [%l1] 0x26, %l2
done
.align 32 /* 0x126 */
ldda [%l1] 0x2e, %l2
done
.align 32
ta HPTRAP_CLEAR_LSU_IMMU /* 0x127 */
done
.align 32
ta HPTRAP_CLEAR_LSU_DMMU /* 0x128 */
done
.align 32
ta HPTRAP_DELAY_LOOP /* 0x129 */
done
.align 32
ta HPTRAP_SEM_LOCK /* 0x12a */
done
.align 32
ta HPTRAP_SEM_RELEASE /* 0x12b */
done
.align 32
ta HPTRAP_SEM_GET /* 0x12c */
done
.align 32
ta HPTRAP_SEM_SET /* 0x12d */
done
.align 32
ta HP_BAD_TRAP /* 0x12e */
.align 32
ta HP_BAD_TRAP /* 0x12f */
.align 32
ta HP_BAD_TRAP /* 0x130 */
.align 32
ta HP_BAD_TRAP /* 0x131 */
.align 32
ta HP_BAD_TRAP /* 0x132 */
.align 32
ta HP_BAD_TRAP /* 0x133 */
.align 32
ta HP_BAD_TRAP /* 0x134 */
.align 32
ta HP_BAD_TRAP /* 0x135 */
.align 32
ta HP_BAD_TRAP /* 0x136 */
.align 32
ta HP_BAD_TRAP /* 0x137 */
.align 32
ta HP_BAD_TRAP /* 0x138 */
.align 32
ta HP_BAD_TRAP /* 0x139 */
.align 32
ta HP_BAD_TRAP /* 0x13a */
.align 32
ta HP_BAD_TRAP /* 0x13b */
.align 32
ta HP_BAD_TRAP /* 0x13c */
.align 32
ta HP_BAD_TRAP /* 0x13d */
.align 32
ta HP_BAD_TRAP /* 0x13e */
.align 32
ta HP_BAD_TRAP /* 0x13f */
.align 32
ta HP_BAD_TRAP /* 0x140 */
.align 32
ta HP_BAD_TRAP /* 0x141 */
.align 32
ta HP_BAD_TRAP /* 0x142 */
.align 32
ta HP_BAD_TRAP /* 0x143 */
.align 32
ta HP_BAD_TRAP /* 0x144 */
.align 32
ta HP_BAD_TRAP /* 0x145 */
.align 32
ta HP_BAD_TRAP /* 0x146 */
.align 32
ta HP_BAD_TRAP /* 0x147 */
.align 32
ta HP_BAD_TRAP /* 0x148 */
.align 32
ta HP_BAD_TRAP /* 0x149 */
.align 32
ta HP_BAD_TRAP /* 0x14a */
.align 32
ta HP_BAD_TRAP /* 0x14b */
.align 32
ta HP_BAD_TRAP /* 0x14c */
.align 32
ta HP_BAD_TRAP /* 0x14d */
.align 32
ta HP_BAD_TRAP /* 0x14e */
.align 32
ta HP_BAD_TRAP /* 0x14f */
.align 32
ta HP_BAD_TRAP /* 0x150 */
.align 32
ta HP_BAD_TRAP /* 0x151 */
.align 32
ta HP_BAD_TRAP /* 0x152 */
.align 32
ta HP_BAD_TRAP /* 0x153 */
.align 32
ta HP_BAD_TRAP /* 0x154 */
.align 32
ta HP_BAD_TRAP /* 0x155 */
.align 32
ta HP_BAD_TRAP /* 0x156 */
.align 32
ta HP_BAD_TRAP /* 0x157 */
.align 32
ta HP_BAD_TRAP /* 0x158 */
.align 32
ta HP_BAD_TRAP /* 0x159 */
.align 32
ta HP_BAD_TRAP /* 0x15a */
.align 32
ta HP_BAD_TRAP /* 0x15b */
.align 32
ta HP_BAD_TRAP /* 0x15c */
.align 32
ta HP_BAD_TRAP /* 0x15d */
.align 32
ta HP_BAD_TRAP /* 0x15e */
.align 32
ta HP_BAD_TRAP /* 0x15f */
.align 32
ta HP_BAD_TRAP /* 0x160 */
.align 32
ta HP_BAD_TRAP /* 0x161 */
.align 32
ta HP_BAD_TRAP /* 0x162 */
.align 32
ta HP_BAD_TRAP /* 0x163 */
.align 32
ta HP_BAD_TRAP /* 0x164 */
.align 32
ta HP_BAD_TRAP /* 0x165 */
.align 32
ta HP_BAD_TRAP /* 0x166 */
.align 32
ta HP_BAD_TRAP /* 0x167 */
.align 32
ta HP_BAD_TRAP /* 0x168 */
.align 32
ta HP_BAD_TRAP /* 0x169 */
.align 32
ta HP_BAD_TRAP /* 0x16a */
.align 32
ta HP_BAD_TRAP /* 0x16b */
.align 32
ta HP_BAD_TRAP /* 0x16c */
.align 32
ta HP_BAD_TRAP /* 0x16d */
.align 32
ta HP_BAD_TRAP /* 0x16e */
.align 32
ta HP_BAD_TRAP /* 0x16f */
.align 32
ta HP_BAD_TRAP /* 0x170 */
.align 32
ta HP_BAD_TRAP /* 0x171 */
.align 32
ta HP_BAD_TRAP /* 0x172 */
.align 32
ta HP_BAD_TRAP /* 0x173 */
.align 32
ta HP_BAD_TRAP /* 0x174 */
.align 32
ta HP_BAD_TRAP /* 0x175 */
.align 32
ta HP_BAD_TRAP /* 0x176 */
.align 32
ta HP_BAD_TRAP /* 0x177 */
.align 32
ta HP_BAD_TRAP /* 0x178 */
.align 32
ta HP_BAD_TRAP /* 0x179 */
.align 32
ta HP_BAD_TRAP /* 0x17a */
.align 32
ta HP_BAD_TRAP /* 0x17b */
.align 32
ta HP_BAD_TRAP /* 0x17c */
.align 32
ta HP_BAD_TRAP /* 0x17d */
.align 32
ta HP_BAD_TRAP /* 0x17e */
.align 32
ta HP_BAD_TRAP /* 0x17f */
.align 32
Thr6_Ptrap_Sect_text_end:
/*********************************************************************/
SECTION .Thr7_Ptrap_Sect TEXT_VA=THR7_PTRAP_TEXT_VA
attr_text {
Name = .Thr7_Ptrap_Sect ,
thr7_z_ctx_tsb_0
VA = THR7_PTRAP_TEXT_VA ,
RA = THR7_PTRAP_TEXT_RA ,
PA = THR7_PTRAP_TEXT_PA ,
TTE_Context = NUCLEUS ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 1 ,
TTE_EP = 1 ,
TTE_W = 0 ,
TTE_SW1 = 0 ,
TTE_SW0 = 0 ,
TTE_RSVD1 = 0 ,
TTE_Size = 1 ,
end_label = Thr7_Ptrap_Sect_text_end ,
compressimage ,
}
ta HP_BAD_TRAP /* 0x0 */
.align 32
ta HP_BAD_TRAP /* 0x1 */
.align 32
ta HP_BAD_TRAP /* 0x2 */
.align 32
ta HP_BAD_TRAP /* 0x3 */
.align 32
ta HP_BAD_TRAP /* 0x4 */
.align 32
ta HP_BAD_TRAP /* 0x5 */
.align 32
ta HP_BAD_TRAP /* 0x6 */
.align 32
ta HP_BAD_TRAP /* 0x7 */
.align 32
ta HP_BAD_TRAP /* 0x8 */
.align 32
ta HP_BAD_TRAP /* 0x9 */
.align 32
ta HP_BAD_TRAP /* 0xa */
.align 32
ta HP_BAD_TRAP /* 0xb */
.align 32
ta HP_BAD_TRAP /* 0xc */
.align 32
ta HP_BAD_TRAP /* 0xd */
.align 32
ta HP_BAD_TRAP /* 0xe */
.align 32
ta HP_BAD_TRAP /* 0xf */
.align 32
ta HP_BAD_TRAP /* 0x10 */
.align 32
ta HP_BAD_TRAP /* 0x11 */
.align 32
ta HP_BAD_TRAP /* 0x12 */
.align 32
ta HP_BAD_TRAP /* 0x13 */
.align 32
ta HP_BAD_TRAP /* 0x14 */
.align 32
ta HP_BAD_TRAP /* 0x15 */
.align 32
ta HP_BAD_TRAP /* 0x16 */
.align 32
ta HP_BAD_TRAP /* 0x17 */
.align 32
ta HP_BAD_TRAP /* 0x18 */
.align 32
ta HP_BAD_TRAP /* 0x19 */
.align 32
ta HP_BAD_TRAP /* 0x1a */
.align 32
ta HP_BAD_TRAP /* 0x1b */
.align 32
ta HP_BAD_TRAP /* 0x1c */
.align 32
ta HP_BAD_TRAP /* 0x1d */
.align 32
ta HP_BAD_TRAP /* 0x1e */
.align 32
ta HP_BAD_TRAP /* 0x1f */
.align 32
ta HP_BAD_TRAP /* 0x20 */
.align 32
ta HP_BAD_TRAP /* 0x21 */
.align 32
ta HP_BAD_TRAP /* 0x22 */
.align 32
ta HP_BAD_TRAP /* 0x23 */
.align 32
ta HP_BAD_TRAP /* 0x24 */
.align 32
ta HP_BAD_TRAP /* 0x25 */
.align 32
ta HP_BAD_TRAP /* 0x26 */
.align 32
ta HP_BAD_TRAP /* 0x27 */
.align 32
ta HP_BAD_TRAP /* 0x28 */
.align 32
ta HP_BAD_TRAP /* 0x29 */
.align 32
ta HP_BAD_TRAP /* 0x2a */
.align 32
ta HP_BAD_TRAP /* 0x2b */
.align 32
ta HP_BAD_TRAP /* 0x2c */
.align 32
ta HP_BAD_TRAP /* 0x2d */
.align 32
ta HP_BAD_TRAP /* 0x2e */
.align 32
ta HP_BAD_TRAP /* 0x2f */
.align 32
ta HP_BAD_TRAP /* 0x30 */
.align 32
ta HP_BAD_TRAP /* 0x31 */
.align 32
ta HP_BAD_TRAP /* 0x32 */
.align 32
ta HP_BAD_TRAP /* 0x33 */
.align 32
ta HP_BAD_TRAP /* 0x34 */
.align 32
ta HP_BAD_TRAP /* 0x35 */
.align 32
ta HP_BAD_TRAP /* 0x36 */
.align 32
ta HP_BAD_TRAP /* 0x37 */
.align 32
ta HP_BAD_TRAP /* 0x38 */
.align 32
ta HP_BAD_TRAP /* 0x39 */
.align 32
ta HP_BAD_TRAP /* 0x3a */
.align 32
ta HP_BAD_TRAP /* 0x3b */
.align 32
ta HP_BAD_TRAP /* 0x3c */
.align 32
ta HP_BAD_TRAP /* 0x3d */
.align 32
ta HP_BAD_TRAP /* 0x3e */
.align 32
ta HP_BAD_TRAP /* 0x3f */
.align 32
ta HP_BAD_TRAP /* 0x40 */
.align 32
ta HP_BAD_TRAP /* 0x41 */
.align 32
ta HP_BAD_TRAP /* 0x42 */
.align 32
ta HP_BAD_TRAP /* 0x43 */
.align 32
ta HP_BAD_TRAP /* 0x44 */
.align 32
ta HP_BAD_TRAP /* 0x45 */
.align 32
ta HP_BAD_TRAP /* 0x46 */
.align 32
ta HP_BAD_TRAP /* 0x47 */
.align 32
ta HP_BAD_TRAP /* 0x48 */
.align 32
ta HP_BAD_TRAP /* 0x49 */
.align 32
ta HP_BAD_TRAP /* 0x4a */
.align 32
ta HP_BAD_TRAP /* 0x4b */
.align 32
ta HP_BAD_TRAP /* 0x4c */
.align 32
ta HP_BAD_TRAP /* 0x4d */
.align 32
ta HP_BAD_TRAP /* 0x4e */
.align 32
ta HP_BAD_TRAP /* 0x4f */
.align 32
ta HP_BAD_TRAP /* 0x50 */
.align 32
ta HP_BAD_TRAP /* 0x51 */
.align 32
ta HP_BAD_TRAP /* 0x52 */
.align 32
ta HP_BAD_TRAP /* 0x53 */
.align 32
ta HP_BAD_TRAP /* 0x54 */
.align 32
ta HP_BAD_TRAP /* 0x55 */
.align 32
ta HP_BAD_TRAP /* 0x56 */
.align 32
ta HP_BAD_TRAP /* 0x57 */
.align 32
ta HP_BAD_TRAP /* 0x58 */
.align 32
ta HP_BAD_TRAP /* 0x59 */
.align 32
ta HP_BAD_TRAP /* 0x5a */
.align 32
ta HP_BAD_TRAP /* 0x5b */
.align 32
ta HP_BAD_TRAP /* 0x5c */
.align 32
ta HP_BAD_TRAP /* 0x5d */
.align 32
ta HP_BAD_TRAP /* 0x5e */
.align 32
ta HP_BAD_TRAP /* 0x5f */
.align 32
ta HP_BAD_TRAP /* 0x60 */
.align 32
ta HP_BAD_TRAP /* 0x61 */
.align 32
ta HP_BAD_TRAP /* 0x62 */
.align 32
ta HP_BAD_TRAP /* 0x63 */
.align 32
ta HP_BAD_TRAP /* 0x64 */
.align 32
ta HP_BAD_TRAP /* 0x65 */
.align 32
ta HP_BAD_TRAP /* 0x66 */
.align 32
ta HP_BAD_TRAP /* 0x67 */
.align 32
ta HP_BAD_TRAP /* 0x68 */
.align 32
ta HP_BAD_TRAP /* 0x69 */
.align 32
ta HP_BAD_TRAP /* 0x6a */
.align 32
ta HP_BAD_TRAP /* 0x6b */
.align 32
ta HP_BAD_TRAP /* 0x6c */
.align 32
ta HP_BAD_TRAP /* 0x6d */
.align 32
ta HP_BAD_TRAP /* 0x6e */
.align 32
ta HP_BAD_TRAP /* 0x6f */
.align 32
ta HP_BAD_TRAP /* 0x70 */
.align 32
ta HP_BAD_TRAP /* 0x71 */
.align 32
ta HP_BAD_TRAP /* 0x72 */
.align 32
ta HP_BAD_TRAP /* 0x73 */
.align 32
ta HP_BAD_TRAP /* 0x74 */
.align 32
ta HP_BAD_TRAP /* 0x75 */
.align 32
ta HP_BAD_TRAP /* 0x76 */
.align 32
ta HP_BAD_TRAP /* 0x77 */
.align 32
ta HP_BAD_TRAP /* 0x78 */
.align 32
ta HP_BAD_TRAP /* 0x79 */
.align 32
ta HP_BAD_TRAP /* 0x7a */
.align 32
ta HP_BAD_TRAP /* 0x7b */
.align 32
ta HP_BAD_TRAP /* 0x7c */
.align 32
ta HP_BAD_TRAP /* 0x7d */
.align 32
ta HP_BAD_TRAP /* 0x7e */
.align 32
ta HP_BAD_TRAP /* 0x7f */
.align 32
ta HP_BAD_TRAP /* 0x80 */
.align 32
ta HP_BAD_TRAP /* 0x81 */
.align 32
ta HP_BAD_TRAP /* 0x82 */
.align 32
ta HP_BAD_TRAP /* 0x83 */
.align 32
ta HP_BAD_TRAP /* 0x84 */
.align 32
ta HP_BAD_TRAP /* 0x85 */
.align 32
ta HP_BAD_TRAP /* 0x86 */
.align 32
ta HP_BAD_TRAP /* 0x87 */
.align 32
ta HP_BAD_TRAP /* 0x88 */
.align 32
ta HP_BAD_TRAP /* 0x89 */
.align 32
ta HP_BAD_TRAP /* 0x8a */
.align 32
ta HP_BAD_TRAP /* 0x8b */
.align 32
ta HP_BAD_TRAP /* 0x8c */
.align 32
ta HP_BAD_TRAP /* 0x8d */
.align 32
ta HP_BAD_TRAP /* 0x8e */
.align 32
ta HP_BAD_TRAP /* 0x8f */
.align 32
ta HP_BAD_TRAP /* 0x90 */
.align 32
ta HP_BAD_TRAP /* 0x91 */
.align 32
ta HP_BAD_TRAP /* 0x92 */
.align 32
ta HP_BAD_TRAP /* 0x93 */
.align 32
ta HP_BAD_TRAP /* 0x94 */
.align 32
ta HP_BAD_TRAP /* 0x95 */
.align 32
ta HP_BAD_TRAP /* 0x96 */
.align 32
ta HP_BAD_TRAP /* 0x97 */
.align 32
ta HP_BAD_TRAP /* 0x98 */
.align 32
ta HP_BAD_TRAP /* 0x99 */
.align 32
ta HP_BAD_TRAP /* 0x9a */
.align 32
ta HP_BAD_TRAP /* 0x9b */
.align 32
ta HP_BAD_TRAP /* 0x9c */
.align 32
ta HP_BAD_TRAP /* 0x9d */
.align 32
ta HP_BAD_TRAP /* 0x9e */
.align 32
ta HP_BAD_TRAP /* 0x9f */
.align 32
ta HP_BAD_TRAP /* 0xa0 */
.align 32
ta HP_BAD_TRAP /* 0xa1 */
.align 32
ta HP_BAD_TRAP /* 0xa2 */
.align 32
ta HP_BAD_TRAP /* 0xa3 */
.align 32
ta HP_BAD_TRAP /* 0xa4 */
.align 32
ta HP_BAD_TRAP /* 0xa5 */
.align 32
ta HP_BAD_TRAP /* 0xa6 */
.align 32
ta HP_BAD_TRAP /* 0xa7 */
.align 32
ta HP_BAD_TRAP /* 0xa8 */
.align 32
ta HP_BAD_TRAP /* 0xa9 */
.align 32
ta HP_BAD_TRAP /* 0xaa */
.align 32
ta HP_BAD_TRAP /* 0xab */
.align 32
ta HP_BAD_TRAP /* 0xac */
.align 32
ta HP_BAD_TRAP /* 0xad */
.align 32
ta HP_BAD_TRAP /* 0xae */
.align 32
ta HP_BAD_TRAP /* 0xaf */
.align 32
ta HP_BAD_TRAP /* 0xb0 */
.align 32
ta HP_BAD_TRAP /* 0xb1 */
.align 32
ta HP_BAD_TRAP /* 0xb2 */
.align 32
ta HP_BAD_TRAP /* 0xb3 */
.align 32
ta HP_BAD_TRAP /* 0xb4 */
.align 32
ta HP_BAD_TRAP /* 0xb5 */
.align 32
ta HP_BAD_TRAP /* 0xb6 */
.align 32
ta HP_BAD_TRAP /* 0xb7 */
.align 32
ta HP_BAD_TRAP /* 0xb8 */
.align 32
ta HP_BAD_TRAP /* 0xb9 */
.align 32
ta HP_BAD_TRAP /* 0xba */
.align 32
ta HP_BAD_TRAP /* 0xbb */
.align 32
ta HP_BAD_TRAP /* 0xbc */
.align 32
ta HP_BAD_TRAP /* 0xbd */
.align 32
ta HP_BAD_TRAP /* 0xbe */
.align 32
ta HP_BAD_TRAP /* 0xbf */
.align 32
ta HP_BAD_TRAP /* 0xc0 */
.align 32
ta HP_BAD_TRAP /* 0xc1 */
.align 32
ta HP_BAD_TRAP /* 0xc2 */
.align 32
ta HP_BAD_TRAP /* 0xc3 */
.align 32
ta HP_BAD_TRAP /* 0xc4 */
.align 32
ta HP_BAD_TRAP /* 0xc5 */
.align 32
ta HP_BAD_TRAP /* 0xc6 */
.align 32
ta HP_BAD_TRAP /* 0xc7 */
.align 32
ta HP_BAD_TRAP /* 0xc8 */
.align 32
ta HP_BAD_TRAP /* 0xc9 */
.align 32
ta HP_BAD_TRAP /* 0xca */
.align 32
ta HP_BAD_TRAP /* 0xcb */
.align 32
ta HP_BAD_TRAP /* 0xcc */
.align 32
ta HP_BAD_TRAP /* 0xcd */
.align 32
ta HP_BAD_TRAP /* 0xce */
.align 32
ta HP_BAD_TRAP /* 0xcf */
.align 32
ta HP_BAD_TRAP /* 0xd0 */
.align 32
ta HP_BAD_TRAP /* 0xd1 */
.align 32
ta HP_BAD_TRAP /* 0xd2 */
.align 32
ta HP_BAD_TRAP /* 0xd3 */
.align 32
ta HP_BAD_TRAP /* 0xd4 */
.align 32
ta HP_BAD_TRAP /* 0xd5 */
.align 32
ta HP_BAD_TRAP /* 0xd6 */
.align 32
ta HP_BAD_TRAP /* 0xd7 */
.align 32
ta HP_BAD_TRAP /* 0xd8 */
.align 32
ta HP_BAD_TRAP /* 0xd9 */
.align 32
ta HP_BAD_TRAP /* 0xda */
.align 32
ta HP_BAD_TRAP /* 0xdb */
.align 32
ta HP_BAD_TRAP /* 0xdc */
.align 32
ta HP_BAD_TRAP /* 0xdd */
.align 32
ta HP_BAD_TRAP /* 0xde */
.align 32
ta HP_BAD_TRAP /* 0xdf */
.align 32
ta HP_BAD_TRAP /* 0xe0 */
.align 32
ta HP_BAD_TRAP /* 0xe1 */
.align 32
ta HP_BAD_TRAP /* 0xe2 */
.align 32
ta HP_BAD_TRAP /* 0xe3 */
.align 32
ta HP_BAD_TRAP /* 0xe4 */
.align 32
ta HP_BAD_TRAP /* 0xe5 */
.align 32
ta HP_BAD_TRAP /* 0xe6 */
.align 32
ta HP_BAD_TRAP /* 0xe7 */
.align 32
ta HP_BAD_TRAP /* 0xe8 */
.align 32
ta HP_BAD_TRAP /* 0xe9 */
.align 32
ta HP_BAD_TRAP /* 0xea */
.align 32
ta HP_BAD_TRAP /* 0xeb */
.align 32
ta HP_BAD_TRAP /* 0xec */
.align 32
ta HP_BAD_TRAP /* 0xed */
.align 32
ta HP_BAD_TRAP /* 0xee */
.align 32
ta HP_BAD_TRAP /* 0xef */
.align 32
ta HP_BAD_TRAP /* 0xf0 */
.align 32
ta HP_BAD_TRAP /* 0xf1 */
.align 32
ta HP_BAD_TRAP /* 0xf2 */
.align 32
ta HP_BAD_TRAP /* 0xf3 */
.align 32
ta HP_BAD_TRAP /* 0xf4 */
.align 32
ta HP_BAD_TRAP /* 0xf5 */
.align 32
ta HP_BAD_TRAP /* 0xf6 */
.align 32
ta HP_BAD_TRAP /* 0xf7 */
.align 32
ta HP_BAD_TRAP /* 0xf8 */
.align 32
ta HP_BAD_TRAP /* 0xf9 */
.align 32
ta HP_BAD_TRAP /* 0xfa */
.align 32
ta HP_BAD_TRAP /* 0xfb */
.align 32
ta HP_BAD_TRAP /* 0xfc */
.align 32
ta HP_BAD_TRAP /* 0xfd */
.align 32
ta HP_BAD_TRAP /* 0xfe */
.align 32
ta HP_BAD_TRAP /* 0xff */
.align 32
ta HP_GOOD_TRAP /* 0x100 */
.align 32
ta HP_BAD_TRAP /* 0x101 */
.align 32
ta HP_BAD_TRAP /* 0x102 */
.align 32
ta HP_BAD_TRAP /* 0x103 */
.align 32
ta HP_BAD_TRAP /* 0x104 */
.align 32
ta HP_BAD_TRAP /* 0x105 */
.align 32
ta HP_BAD_TRAP /* 0x106 */
.align 32
ta HP_BAD_TRAP /* 0x107 */
.align 32
ta HP_BAD_TRAP /* 0x108 */
.align 32
ta HP_BAD_TRAP /* 0x109 */
.align 32
ta HP_BAD_TRAP /* 0x10a */
.align 32
ta HP_BAD_TRAP /* 0x10b */
.align 32
ta HP_BAD_TRAP /* 0x10c */
.align 32
ta HP_BAD_TRAP /* 0x10d */
.align 32
ta HP_BAD_TRAP /* 0x10e */
.align 32
ta HP_BAD_TRAP /* 0x10f */
.align 32
ta HPTRAP_I_DEMAP_ALL /* 0x110 */
done
.align 32
ta HPTRAP_I_DEMAP_PCTX /* 0x111 */
done
.align 32
ta HPTRAP_I_DEMAP_SCTX /* 0x112 */
done
.align 32
ta HPTRAP_I_DEMAP_NCTX /* 0x113 */
done
.align 32
ta HPTRAP_I_DEMAP_PAGE /* 0x114 */
done
.align 32
ta HPTRAP_I_DEMAP_RPAGE /* 0x115 */
done
.align 32
ta HPTRAP_I_DEMAP_REAL /* 0x116 */
done
.align 32
ta HPTRAP_D_DEMAP_ALL /* 0x117 */
done
.align 32
ta HPTRAP_D_DEMAP_PCTX /* 0x118 */
done
.align 32
ta HPTRAP_D_DEMAP_SCTX /* 0x119 */
done
.align 32
ta HPTRAP_D_DEMAP_NCTX /* 0x11a */
done
.align 32
ta HPTRAP_D_DEMAP_PAGE /* 0x11b */
done
.align 32
ta HPTRAP_D_DEMAP_RPAGE /* 0x11c */
done
.align 32
ta HPTRAP_D_DEMAP_REAL /* 0x11d */
done
.align 32
ta HP_BAD_TRAP /* 0x11e */
.align 32
ta HP_BAD_TRAP /* 0x11f */
.align 32
sllx %i7, 63, %g1
brz %g1, 1f
nop
rdpr %tnpc, %g2
add %g2, 8, %g2
wrpr %g2, %tnpc
1:
done
.align 32
ta HPTRAP_CHANGE_PID /* 0x121 */
done
.align 32
ta HPTRAP_INCR_TSB_SIZE /* 0x122 */
done
.align 32 /* 0x123 */
ldxa [%l1] 0x14, %l2
done
.align 32 /* 0x124 */
ldxa [%l1] 0x1c, %l2
done
.align 32 /* 0x125 */
ldda [%l1] 0x26, %l2
done
.align 32 /* 0x126 */
ldda [%l1] 0x2e, %l2
done
.align 32
ta HPTRAP_CLEAR_LSU_IMMU /* 0x127 */
done
.align 32
ta HPTRAP_CLEAR_LSU_DMMU /* 0x128 */
done
.align 32
ta HPTRAP_DELAY_LOOP /* 0x129 */
done
.align 32
ta HPTRAP_SEM_LOCK /* 0x12a */
done
.align 32
ta HPTRAP_SEM_RELEASE /* 0x12b */
done
.align 32
ta HPTRAP_SEM_GET /* 0x12c */
done
.align 32
ta HPTRAP_SEM_SET /* 0x12d */
done
.align 32
ta HP_BAD_TRAP /* 0x12e */
.align 32
ta HP_BAD_TRAP /* 0x12f */
.align 32
ta HP_BAD_TRAP /* 0x130 */
.align 32
ta HP_BAD_TRAP /* 0x131 */
.align 32
ta HP_BAD_TRAP /* 0x132 */
.align 32
ta HP_BAD_TRAP /* 0x133 */
.align 32
ta HP_BAD_TRAP /* 0x134 */
.align 32
ta HP_BAD_TRAP /* 0x135 */
.align 32
ta HP_BAD_TRAP /* 0x136 */
.align 32
ta HP_BAD_TRAP /* 0x137 */
.align 32
ta HP_BAD_TRAP /* 0x138 */
.align 32
ta HP_BAD_TRAP /* 0x139 */
.align 32
ta HP_BAD_TRAP /* 0x13a */
.align 32
ta HP_BAD_TRAP /* 0x13b */
.align 32
ta HP_BAD_TRAP /* 0x13c */
.align 32
ta HP_BAD_TRAP /* 0x13d */
.align 32
ta HP_BAD_TRAP /* 0x13e */
.align 32
ta HP_BAD_TRAP /* 0x13f */
.align 32
ta HP_BAD_TRAP /* 0x140 */
.align 32
ta HP_BAD_TRAP /* 0x141 */
.align 32
ta HP_BAD_TRAP /* 0x142 */
.align 32
ta HP_BAD_TRAP /* 0x143 */
.align 32
ta HP_BAD_TRAP /* 0x144 */
.align 32
ta HP_BAD_TRAP /* 0x145 */
.align 32
ta HP_BAD_TRAP /* 0x146 */
.align 32
ta HP_BAD_TRAP /* 0x147 */
.align 32
ta HP_BAD_TRAP /* 0x148 */
.align 32
ta HP_BAD_TRAP /* 0x149 */
.align 32
ta HP_BAD_TRAP /* 0x14a */
.align 32
ta HP_BAD_TRAP /* 0x14b */
.align 32
ta HP_BAD_TRAP /* 0x14c */
.align 32
ta HP_BAD_TRAP /* 0x14d */
.align 32
ta HP_BAD_TRAP /* 0x14e */
.align 32
ta HP_BAD_TRAP /* 0x14f */
.align 32
ta HP_BAD_TRAP /* 0x150 */
.align 32
ta HP_BAD_TRAP /* 0x151 */
.align 32
ta HP_BAD_TRAP /* 0x152 */
.align 32
ta HP_BAD_TRAP /* 0x153 */
.align 32
ta HP_BAD_TRAP /* 0x154 */
.align 32
ta HP_BAD_TRAP /* 0x155 */
.align 32
ta HP_BAD_TRAP /* 0x156 */
.align 32
ta HP_BAD_TRAP /* 0x157 */
.align 32
ta HP_BAD_TRAP /* 0x158 */
.align 32
ta HP_BAD_TRAP /* 0x159 */
.align 32
ta HP_BAD_TRAP /* 0x15a */
.align 32
ta HP_BAD_TRAP /* 0x15b */
.align 32
ta HP_BAD_TRAP /* 0x15c */
.align 32
ta HP_BAD_TRAP /* 0x15d */
.align 32
ta HP_BAD_TRAP /* 0x15e */
.align 32
ta HP_BAD_TRAP /* 0x15f */
.align 32
ta HP_BAD_TRAP /* 0x160 */
.align 32
ta HP_BAD_TRAP /* 0x161 */
.align 32
ta HP_BAD_TRAP /* 0x162 */
.align 32
ta HP_BAD_TRAP /* 0x163 */
.align 32
ta HP_BAD_TRAP /* 0x164 */
.align 32
ta HP_BAD_TRAP /* 0x165 */
.align 32
ta HP_BAD_TRAP /* 0x166 */
.align 32
ta HP_BAD_TRAP /* 0x167 */
.align 32
ta HP_BAD_TRAP /* 0x168 */
.align 32
ta HP_BAD_TRAP /* 0x169 */
.align 32
ta HP_BAD_TRAP /* 0x16a */
.align 32
ta HP_BAD_TRAP /* 0x16b */
.align 32
ta HP_BAD_TRAP /* 0x16c */
.align 32
ta HP_BAD_TRAP /* 0x16d */
.align 32
ta HP_BAD_TRAP /* 0x16e */
.align 32
ta HP_BAD_TRAP /* 0x16f */
.align 32
ta HP_BAD_TRAP /* 0x170 */
.align 32
ta HP_BAD_TRAP /* 0x171 */
.align 32
ta HP_BAD_TRAP /* 0x172 */
.align 32
ta HP_BAD_TRAP /* 0x173 */
.align 32
ta HP_BAD_TRAP /* 0x174 */
.align 32
ta HP_BAD_TRAP /* 0x175 */
.align 32
ta HP_BAD_TRAP /* 0x176 */
.align 32
ta HP_BAD_TRAP /* 0x177 */
.align 32
ta HP_BAD_TRAP /* 0x178 */
.align 32
ta HP_BAD_TRAP /* 0x179 */
.align 32
ta HP_BAD_TRAP /* 0x17a */
.align 32
ta HP_BAD_TRAP /* 0x17b */
.align 32
ta HP_BAD_TRAP /* 0x17c */
.align 32
ta HP_BAD_TRAP /* 0x17d */
.align 32
ta HP_BAD_TRAP /* 0x17e */
.align 32
ta HP_BAD_TRAP /* 0x17f */
.align 32
Thr7_Ptrap_Sect_text_end:
/******************************************************************************************
* $Revision: 1.1 $
*******************************************************************************************/
SECTION .HTRAPS TEXT_VA=HPTRAP_TEXT_PA
attr_text {
Name = .HTRAPS,
hypervisor,
}
ta HP_BAD_TRAP
.align 32 /* 1 */
ta HP_BAD_TRAP
.align 32 /* 2 */
ta HP_BAD_TRAP
.align 32 /* 3 */
ta HP_BAD_TRAP
.align 32 /* 4 */
ta HP_BAD_TRAP
.align 32 /* 5 */
ta HP_BAD_TRAP
.align 32 /* 6 */
ta HP_BAD_TRAP
.align 32 /* 7 */
ta HP_BAD_TRAP
.align 32 /* 8 */
ta HP_BAD_TRAP
.align 32 /* 9 */
setx ext_trap_0x9_begin, %g1, %g2
jmp %g2
nop
.align 32 /* a */
ta HP_BAD_TRAP
.align 32 /* b */
setx ext_trap_0xb_begin, %g1, %g2
jmp %g2
nop
.align 32 /* c */
ta HP_BAD_TRAP
.align 32 /* d */
ta HP_BAD_TRAP
.align 32 /* e */
ta HP_BAD_TRAP
.align 32 /* f */
ta HP_BAD_TRAP
.align 32 /* 10 */
done
.align 32 /* 11 */
ta HP_BAD_TRAP
.align 32 /* 12 */
ta HP_BAD_TRAP
.align 32 /* 13 */
ta HP_BAD_TRAP
.align 32 /* 14 */
ta HP_BAD_TRAP
.align 32 /* 15 */
ta HP_BAD_TRAP
.align 32 /* 16 */
ta HP_BAD_TRAP
.align 32 /* 17 */
ta HP_BAD_TRAP
.align 32 /* 18 */
ta HP_BAD_TRAP
.align 32 /* 19 */
ta HP_BAD_TRAP
.align 32 /* 1a */
ta HP_BAD_TRAP
.align 32 /* 1b */
setx ext_trap_0x1b_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 1c */
ta HP_BAD_TRAP
.align 32 /* 1d */
ta HP_BAD_TRAP
.align 32 /* 1e */
ta HP_BAD_TRAP
.align 32 /* 1f */
ta HP_BAD_TRAP
.align 32 /* 20 */
ta HP_BAD_TRAP
.align 32 /* 21 */
ta HP_BAD_TRAP
.align 32 /* 22 */
ta HP_BAD_TRAP
.align 32 /* 23 */
ta HP_BAD_TRAP
.align 32 /* 24 */
ta HP_BAD_TRAP
.align 32 /* 25 */
ta HP_BAD_TRAP
.align 32 /* 26 */
ta HP_BAD_TRAP
.align 32 /* 27 */
ta HP_BAD_TRAP
.align 32 /* 28 */
ta HP_BAD_TRAP
.align 32 /* 29 */
ta HP_BAD_TRAP
.align 32 /* 2a */
ta HP_BAD_TRAP
.align 32 /* 2b */
ta HP_BAD_TRAP
.align 32 /* 2c */
ta HP_BAD_TRAP
.align 32 /* 2d */
ta HP_BAD_TRAP
.align 32 /* 2e */
setx ext_trap_0x2e_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 2f */
ta HP_BAD_TRAP
.align 32 /* 30 */
ta HP_BAD_TRAP
.align 32 /* 31 */
setx ext_trap_0x31_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 32 */
ta HP_BAD_TRAP
.align 32 /* 33 */
ta HP_BAD_TRAP
.align 32 /* 34 */
done
.align 32 /* 35 */
ta HP_BAD_TRAP
.align 32 /* 36 */
ta HP_BAD_TRAP
.align 32 /* 37 */
ta HP_BAD_TRAP
.align 32 /* 38 */
ta HP_BAD_TRAP
.align 32 /* 39 */
ta HP_BAD_TRAP
.align 32 /* 3a */
ta HP_BAD_TRAP
.align 32 /* 3b */
ta HP_BAD_TRAP
.align 32 /* 3c */
ta HP_BAD_TRAP
.align 32 /* 3d */
ta HP_BAD_TRAP
.align 32 /* 3e */
instruction_real_miss:
setx ext_trap_0x3e_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 3f */
data_real_miss:
setx ext_trap_0x3f_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 40 */
ta HP_BAD_TRAP
.align 32 /* 41 */
ta HP_BAD_TRAP
.align 32 /* 42 */
ta HP_BAD_TRAP
.align 32 /* 43 */
ta HP_BAD_TRAP
.align 32 /* 44 */
ta HP_BAD_TRAP
.align 32 /* 45 */
ta HP_BAD_TRAP
.align 32 /* 46 */
ta HP_BAD_TRAP
.align 32 /* 47 */
ta HP_BAD_TRAP
.align 32 /* 48 */
ta HP_BAD_TRAP
.align 32 /* 49 */
ta HP_BAD_TRAP
.align 32 /* 4a */
ta HP_BAD_TRAP
.align 32 /* 4b */
ta HP_BAD_TRAP
.align 32 /* 4c */
ta HP_BAD_TRAP
.align 32 /* 4d */
ta HP_BAD_TRAP
.align 32 /* 4e */
ta HP_BAD_TRAP
.align 32 /* 4f */
ta HP_BAD_TRAP
.align 32 /* 50 */
ta HP_BAD_TRAP
.align 32 /* 51 */
ta HP_BAD_TRAP
.align 32 /* 52 */
ta HP_BAD_TRAP
.align 32 /* 53 */
ta HP_BAD_TRAP
.align 32 /* 54 */
ta HP_BAD_TRAP
.align 32 /* 55 */
ta HP_BAD_TRAP
.align 32 /* 56 */
ta HP_BAD_TRAP
.align 32 /* 57 */
ta HP_BAD_TRAP
.align 32 /* 58 */
ta HP_BAD_TRAP
.align 32 /* 59 */
ta HP_BAD_TRAP
.align 32 /* 5a */
ta HP_BAD_TRAP
.align 32 /* 5b */
ta HP_BAD_TRAP
.align 32 /* 5c */
ta HP_BAD_TRAP
.align 32 /* 5d */
ta HP_BAD_TRAP
.align 32 /* 5e */
ta HP_BAD_TRAP
.align 32 /* 5f */
ta HP_BAD_TRAP
.align 32 /* 60 */
ta HP_BAD_TRAP
.align 32 /* 61 */
ta HP_BAD_TRAP
.align 32 /* 62 */
ta HP_BAD_TRAP
.align 32 /* 63 */
ta HP_BAD_TRAP
.align 32 /* 64 */
setx ext_trap_0x64_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 65 */
ta HP_BAD_TRAP
.align 32 /* 66 */
ta HP_BAD_TRAP
.align 32 /* 67 */
ta HP_BAD_TRAP
.align 32 /* 68 */
setx ext_trap_0x68_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 69 */
ta HP_BAD_TRAP
.align 32 /* 6a */
ta HP_BAD_TRAP
.align 32 /* 6b */
ta HP_BAD_TRAP
.align 32 /* 6c */
setx ext_trap_0x6c_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 6d */
ta HP_BAD_TRAP
.align 32 /* 6e */
ta HP_BAD_TRAP
.align 32 /* 6f */
ta HP_BAD_TRAP
.align 32 /* 70 */
ta HP_BAD_TRAP
.align 32 /* 71 */
ta HP_BAD_TRAP
.align 32 /* 72 */
ta HP_GOOD_TRAP
.align 32 /* 73 */
ta HP_BAD_TRAP
.align 32 /* 74 */
ta HP_BAD_TRAP
.align 32 /* 75 */
ta HP_BAD_TRAP
.align 32 /* 76 */
ta HP_BAD_TRAP
.align 32 /* 77 */
ta HP_BAD_TRAP
.align 32 /* 78 */
ta HP_BAD_TRAP
.align 32 /* 79 */
ta HP_BAD_TRAP
.align 32 /* 7a */
ta HP_BAD_TRAP
.align 32 /* 7b */
ta HP_BAD_TRAP
.align 32 /* 7c */
ta HP_BAD_TRAP
.align 32 /* 7d */
ta HP_BAD_TRAP
.align 32 /* 7e */
ta HP_BAD_TRAP
.align 32 /* 7f */
ta HP_BAD_TRAP
.align 32 /* 80 */
ta HP_BAD_TRAP
.align 32 /* 81 */
ta HP_BAD_TRAP
.align 32 /* 82 */
ta HP_BAD_TRAP
.align 32 /* 83 */
ta HP_BAD_TRAP
.align 32 /* 84 */
ta HP_BAD_TRAP
.align 32 /* 85 */
ta HP_BAD_TRAP
.align 32 /* 86 */
ta HP_BAD_TRAP
.align 32 /* 87 */
ta HP_BAD_TRAP
.align 32 /* 88 */
ta HP_BAD_TRAP
.align 32 /* 89 */
ta HP_BAD_TRAP
.align 32 /* 8a */
ta HP_BAD_TRAP
.align 32 /* 8b */
ta HP_BAD_TRAP
.align 32 /* 8c */
ta HP_BAD_TRAP
.align 32 /* 8d */
ta HP_BAD_TRAP
.align 32 /* 8e */
ta HP_BAD_TRAP
.align 32 /* 8f */
ta HP_BAD_TRAP
.align 32 /* 90 */
ta HP_BAD_TRAP
.align 32 /* 91 */
ta HP_BAD_TRAP
.align 32 /* 92 */
ta HP_BAD_TRAP
.align 32 /* 93 */
ta HP_BAD_TRAP
.align 32 /* 94 */
ta HP_BAD_TRAP
.align 32 /* 95 */
ta HP_BAD_TRAP
.align 32 /* 96 */
ta HP_BAD_TRAP
.align 32 /* 97 */
ta HP_BAD_TRAP
.align 32 /* 98 */
ta HP_BAD_TRAP
.align 32 /* 99 */
ta HP_BAD_TRAP
.align 32 /* 9a */
ta HP_BAD_TRAP
.align 32 /* 9b */
ta HP_BAD_TRAP
.align 32 /* 9c */
ta HP_BAD_TRAP
.align 32 /* 9d */
ta HP_BAD_TRAP
.align 32 /* 9e */
ta HP_BAD_TRAP
.align 32 /* 9f */
ta HP_BAD_TRAP
.align 32 /* a0 */
ta HP_BAD_TRAP
.align 32 /* a1 */
ta HP_BAD_TRAP
.align 32 /* a2 */
ta HP_BAD_TRAP
.align 32 /* a3 */
ta HP_BAD_TRAP
.align 32 /* a4 */
ta HP_BAD_TRAP
.align 32 /* a5 */
ta HP_BAD_TRAP
.align 32 /* a6 */
ta HP_BAD_TRAP
.align 32 /* a7 */
ta HP_BAD_TRAP
.align 32 /* a8 */
ta HP_BAD_TRAP
.align 32 /* a9 */
ta HP_BAD_TRAP
.align 32 /* aa */
ta HP_BAD_TRAP
.align 32 /* ab */
ta HP_BAD_TRAP
.align 32 /* ac */
ta HP_BAD_TRAP
.align 32 /* ad */
ta HP_BAD_TRAP
.align 32 /* ae */
ta HP_BAD_TRAP
.align 32 /* af */
ta HP_BAD_TRAP
.align 32 /* b0 */
ta HP_BAD_TRAP
.align 32 /* b1 */
ta HP_BAD_TRAP
.align 32 /* b2 */
ta HP_BAD_TRAP
.align 32 /* b3 */
ta HP_BAD_TRAP
.align 32 /* b4 */
ta HP_BAD_TRAP
.align 32 /* b5 */
ta HP_BAD_TRAP
.align 32 /* b6 */
ta HP_BAD_TRAP
.align 32 /* b7 */
ta HP_BAD_TRAP
.align 32 /* b8 */
ta HP_BAD_TRAP
.align 32 /* b9 */
ta HP_BAD_TRAP
.align 32 /* ba */
ta HP_BAD_TRAP
.align 32 /* bb */
ta HP_BAD_TRAP
.align 32 /* bc */
ta HP_BAD_TRAP
.align 32 /* bd */
ta HP_BAD_TRAP
.align 32 /* be */
ta HP_BAD_TRAP
.align 32 /* bf */
ta HP_BAD_TRAP
.align 32 /* c0 */
ta HP_BAD_TRAP
.align 32 /* c1 */
ta HP_BAD_TRAP
.align 32 /* c2 */
ta HP_BAD_TRAP
.align 32 /* c3 */
ta HP_BAD_TRAP
.align 32 /* c4 */
ta HP_BAD_TRAP
.align 32 /* c5 */
ta HP_BAD_TRAP
.align 32 /* c6 */
ta HP_BAD_TRAP
.align 32 /* c7 */
ta HP_BAD_TRAP
.align 32 /* c8 */
ta HP_BAD_TRAP
.align 32 /* c9 */
ta HP_BAD_TRAP
.align 32 /* ca */
ta HP_BAD_TRAP
.align 32 /* cb */
ta HP_BAD_TRAP
.align 32 /* cc */
ta HP_BAD_TRAP
.align 32 /* cd */
ta HP_BAD_TRAP
.align 32 /* ce */
ta HP_BAD_TRAP
.align 32 /* cf */
ta HP_BAD_TRAP
.align 32 /* d0 */
ta HP_BAD_TRAP
.align 32 /* d1 */
ta HP_BAD_TRAP
.align 32 /* d2 */
ta HP_BAD_TRAP
.align 32 /* d3 */
ta HP_BAD_TRAP
.align 32 /* d4 */
ta HP_BAD_TRAP
.align 32 /* d5 */
ta HP_BAD_TRAP
.align 32 /* d6 */
ta HP_BAD_TRAP
.align 32 /* d7 */
ta HP_BAD_TRAP
.align 32 /* d8 */
ta HP_BAD_TRAP
.align 32 /* d9 */
ta HP_BAD_TRAP
.align 32 /* da */
ta HP_BAD_TRAP
.align 32 /* db */
ta HP_BAD_TRAP
.align 32 /* dc */
ta HP_BAD_TRAP
.align 32 /* dd */
ta HP_BAD_TRAP
.align 32 /* de */
ta HP_BAD_TRAP
.align 32 /* df */
ta HP_BAD_TRAP
.align 32 /* e0 */
ta HP_BAD_TRAP
.align 32 /* e1 */
ta HP_BAD_TRAP
.align 32 /* e2 */
ta HP_BAD_TRAP
.align 32 /* e3 */
ta HP_BAD_TRAP
.align 32 /* e4 */
ta HP_BAD_TRAP
.align 32 /* e5 */
ta HP_BAD_TRAP
.align 32 /* e6 */
ta HP_BAD_TRAP
.align 32 /* e7 */
ta HP_BAD_TRAP
.align 32 /* e8 */
ta HP_BAD_TRAP
.align 32 /* e9 */
ta HP_BAD_TRAP
.align 32 /* ea */
ta HP_BAD_TRAP
.align 32 /* eb */
ta HP_BAD_TRAP
.align 32 /* ec */
ta HP_BAD_TRAP
.align 32 /* ed */
ta HP_BAD_TRAP
.align 32 /* ee */
ta HP_BAD_TRAP
.align 32 /* ef */
ta HP_BAD_TRAP
.align 32 /* f0 */
ta HP_BAD_TRAP
.align 32 /* f1 */
ta HP_BAD_TRAP
.align 32 /* f2 */
ta HP_BAD_TRAP
.align 32 /* f3 */
ta HP_BAD_TRAP
.align 32 /* f4 */
ta HP_BAD_TRAP
.align 32 /* f5 */
ta HP_BAD_TRAP
.align 32 /* f6 */
ta HP_BAD_TRAP
.align 32 /* f7 */
ta HP_BAD_TRAP
.align 32 /* f8 */
ta HP_BAD_TRAP
.align 32 /* f9 */
ta HP_BAD_TRAP
.align 32 /* fa */
ta HP_BAD_TRAP
.align 32 /* fb */
ta HP_BAD_TRAP
.align 32 /* fc */
ta HP_BAD_TRAP
.align 32 /* fd */
ta HP_BAD_TRAP
.align 32 /* fe */
ta HP_BAD_TRAP
.align 32 /* ff */
ta HP_BAD_TRAP
.align 32 /* 100 */
wrpr 0, %tl
ta HP_GOOD_TRAP
.align 32 /* 101 */
wrpr 0, %tl
ta HP_BAD_TRAP
.align 32 /* 102 */
ta HP_BAD_TRAP
.align 32 /* 103 */
ta HP_BAD_TRAP
.align 32 /* 104 */
ta HP_BAD_TRAP
.align 32 /* 105 */
ta HP_BAD_TRAP
.align 32 /* 106 */
ta HP_BAD_TRAP
.align 32 /* 107 */
ta HP_BAD_TRAP
.align 32 /* 108 */
ta HP_BAD_TRAP
.align 32 /* 109 */
ta HP_BAD_TRAP
.align 32 /* 10a */
ta HP_BAD_TRAP
.align 32 /* 10b */
ta HP_BAD_TRAP
.align 32 /* 10c */
ta HP_BAD_TRAP
.align 32 /* 10d */
ta HP_BAD_TRAP
.align 32 /* 10e */
ta HP_BAD_TRAP
.align 32 /* 10f */
ta HP_BAD_TRAP
.align 32 /* 110 */
ta HP_BAD_TRAP
.align 32 /* 111 */
ta HP_BAD_TRAP
.align 32 /* 112 */
ta HP_BAD_TRAP
.align 32 /* 113 */
ta HP_BAD_TRAP
.align 32 /* 114 */
ta HP_BAD_TRAP
.align 32 /* 115 */
ta HP_BAD_TRAP
.align 32 /* 116 */
ta HP_BAD_TRAP
.align 32 /* 117 */
ta HP_BAD_TRAP
.align 32 /* 118 */
ta HP_BAD_TRAP
.align 32 /* 119 */
ta HP_BAD_TRAP
.align 32 /* 11a */
ta HP_BAD_TRAP
.align 32 /* 11b */
ta HP_BAD_TRAP
.align 32 /* 11c */
ta HP_BAD_TRAP
.align 32 /* 11d */
ta HP_BAD_TRAP
.align 32 /* 11e */
ta HP_BAD_TRAP
.align 32 /* 11f */
ta HP_BAD_TRAP
.align 32 /* 120 */
ta HP_BAD_TRAP
.align 32 /* 121 */
ta HP_BAD_TRAP
.align 32 /* 122 */
ta HP_BAD_TRAP
.align 32 /* 123 */
ta HP_BAD_TRAP
.align 32 /* 124 */
ta HP_BAD_TRAP
.align 32 /* 125 */
ta HP_BAD_TRAP
.align 32 /* 126 */
ta HP_BAD_TRAP
.align 32 /* 127 */
ta HP_BAD_TRAP
.align 32 /* 128 */
ta HP_BAD_TRAP
.align 32 /* 129 */
ta HP_BAD_TRAP
.align 32 /* 12a */
ta HP_BAD_TRAP
.align 32 /* 12b */
ta HP_BAD_TRAP
.align 32 /* 12c */
ta HP_BAD_TRAP
.align 32 /* 12d */
ta HP_BAD_TRAP
.align 32 /* 12e */
ta HP_BAD_TRAP
.align 32 /* 12f */
ta HP_BAD_TRAP
.align 32 /* 130 */
ta HP_BAD_TRAP
.align 32 /* 131 */
ta HP_BAD_TRAP
.align 32 /* 132 */
ta HP_BAD_TRAP
.align 32 /* 133 */
ta HP_BAD_TRAP
.align 32 /* 134 */
ta HP_BAD_TRAP
.align 32 /* 135 */
ta HP_BAD_TRAP
.align 32 /* 136 */
ta HP_BAD_TRAP
.align 32 /* 137 */
ta HP_BAD_TRAP
.align 32 /* 138 */
ta HP_BAD_TRAP
.align 32 /* 139 */
ta HP_BAD_TRAP
.align 32 /* 13a */
ta HP_BAD_TRAP
.align 32 /* 13b */
ta HP_BAD_TRAP
.align 32 /* 13c */
ta HP_BAD_TRAP
.align 32 /* 13d */
ta HP_BAD_TRAP
.align 32 /* 13e */
ta HP_BAD_TRAP
.align 32 /* 13f */
ta HP_BAD_TRAP
.align 32 /* 140 */
ta HP_BAD_TRAP
.align 32 /* 141 */
ta HP_BAD_TRAP
.align 32 /* 142 */
ta HP_BAD_TRAP
.align 32 /* 143 */
ta HP_BAD_TRAP
.align 32 /* 144 */
ta HP_BAD_TRAP
.align 32 /* 145 */
ta HP_BAD_TRAP
.align 32 /* 146 */
ta HP_BAD_TRAP
.align 32 /* 147 */
ta HP_BAD_TRAP
.align 32 /* 148 */
ta HP_BAD_TRAP
.align 32 /* 149 */
ta HP_BAD_TRAP
.align 32 /* 14a */
ta HP_BAD_TRAP
.align 32 /* 14b */
ta HP_BAD_TRAP
.align 32 /* 14c */
ta HP_BAD_TRAP
.align 32 /* 14d */
ta HP_BAD_TRAP
.align 32 /* 14e */
ta HP_BAD_TRAP
.align 32 /* 14f */
ta HP_BAD_TRAP
.align 32 /* 150 */
ta HP_BAD_TRAP
.align 32 /* 151 */
ta HP_BAD_TRAP
.align 32 /* 152 */
ta HP_BAD_TRAP
.align 32 /* 153 */
ta HP_BAD_TRAP
.align 32 /* 154 */
ta HP_BAD_TRAP
.align 32 /* 155 */
ta HP_BAD_TRAP
.align 32 /* 156 */
ta HP_BAD_TRAP
.align 32 /* 157 */
ta HP_BAD_TRAP
.align 32 /* 158 */
ta HP_BAD_TRAP
.align 32 /* 159 */
ta HP_BAD_TRAP
.align 32 /* 15a */
ta HP_BAD_TRAP
.align 32 /* 15b */
ta HP_BAD_TRAP
.align 32 /* 15c */
ta HP_BAD_TRAP
.align 32 /* 15d */
ta HP_BAD_TRAP
.align 32 /* 15e */
ta HP_BAD_TRAP
.align 32 /* 15f */
ta HP_BAD_TRAP
.align 32 /* 160 */
ta HP_BAD_TRAP
.align 32 /* 161 */
ta HP_BAD_TRAP
.align 32 /* 162 */
ta HP_BAD_TRAP
.align 32 /* 163 */
ta HP_BAD_TRAP
.align 32 /* 164 */
ta HP_BAD_TRAP
.align 32 /* 165 */
ta HP_BAD_TRAP
.align 32 /* 166 */
ta HP_BAD_TRAP
.align 32 /* 167 */
ta HP_BAD_TRAP
.align 32 /* 168 */
ta HP_BAD_TRAP
.align 32 /* 169 */
ta HP_BAD_TRAP
.align 32 /* 16a */
ta HP_BAD_TRAP
.align 32 /* 16b */
ta HP_BAD_TRAP
.align 32 /* 16c */
ta HP_BAD_TRAP
.align 32 /* 16d */
ta HP_BAD_TRAP
.align 32 /* 16e */
ta HP_BAD_TRAP
.align 32 /* 16f */
ta HP_BAD_TRAP
.align 32 /* 170 */
ta HP_BAD_TRAP
.align 32 /* 171 */
ta HP_BAD_TRAP
.align 32 /* 172 */
ta HP_BAD_TRAP
.align 32 /* 173 */
ta HP_BAD_TRAP
.align 32 /* 174 */
ta HP_BAD_TRAP
.align 32 /* 175 */
ta HP_BAD_TRAP
.align 32 /* 176 */
ta HP_BAD_TRAP
.align 32 /* 177 */
ta HP_BAD_TRAP
.align 32 /* 178 */
ta HP_BAD_TRAP
.align 32 /* 179 */
ta HP_BAD_TRAP
.align 32 /* 17a */
ta HP_BAD_TRAP
.align 32 /* 17b */
ta HP_BAD_TRAP
.align 32 /* 17c */
ta HP_BAD_TRAP
.align 32 /* 17d */
ta HP_BAD_TRAP
.align 32 /* 17e */
ta HP_BAD_TRAP
.align 32 /* 17f */
ta HP_BAD_TRAP
.align 32 /* 180 */
! For all demaps, assume register %i7 = {VA[63:13],13'h0}
hptrap_I_demap_all:
or 0x80, %i7, %g1
stxa %g0, [%g1] ASI_IMMU_DEMAP
done
.align 32 /* 181 */
hptrap_I_demap_pctx:
or 0x40, %i7, %g1
stxa %g0, [%g1] ASI_IMMU_DEMAP
done
.align 32 /* 182 */
hptrap_I_demap_sctx:
or 0x50, %i7, %g1
stxa %g0, [%g1] ASI_IMMU_DEMAP
done
.align 32 /* 183 */
hptrap_I_demap_nctx:
or 0x60, %i7, %g1
stxa %g0, [%g1] ASI_IMMU_DEMAP
done
.align 32 /* 184 */
hptrap_I_demap_page:
or 0x00, %i7, %g1
stxa %g0, [%g1] ASI_IMMU_DEMAP
done
.align 32 /* 185 */
hptrap_I_demap_rpage:
or 0x800, %i7, %g1
stxa %g0, [%g1] ASI_IMMU_DEMAP
done
.align 32 /* 18c */
hptrap_I_demap_real:
or 0xc0, %i7, %g1
stxa %g0, [%g1] ASI_IMMU_DEMAP
done
.align 32 /* 186 */
hptrap_D_demap_all:
or 0x80, %i7, %g1
stxa %g0, [%g1] ASI_DMMU_DEMAP
done
.align 32 /* 187 */
hptrap_D_demap_pctx:
or 0x40, %i7, %g1
stxa %g0, [%g1] ASI_DMMU_DEMAP
done
.align 32 /* 188 */
hptrap_D_demap_sctx:
or 0x50, %i7, %g1
stxa %g0, [%g1] ASI_DMMU_DEMAP
done
.align 32 /* 189 */
hptrap_D_demap_nctx:
or 0x60, %i7, %g1
stxa %g0, [%g1] ASI_DMMU_DEMAP
done
.align 32 /* 18a */
hptrap_D_demap_page:
or 0x00, %i7, %g1
stxa %g0, [%g1] ASI_DMMU_DEMAP
done
.align 32 /* 18b */
hptrap_D_demap_rpage:
or 0x800, %i7, %g1
stxa %g0, [%g1] ASI_DMMU_DEMAP
done
.align 32 /* 18d */
hptrap_D_demap_real:
or 0xc0, %i7, %g1
stxa %g0, [%g1] ASI_DMMU_DEMAP
done
.align 32 /* 18e */
ta HP_BAD_TRAP
.align 32 /* 18f */
ta HP_BAD_TRAP
.align 32 /* 190 */
ta HP_BAD_TRAP
.align 32 /* 191 */
hptrap_change_pid:
mov ASI_PARTITION_ID_VAL, %g1
ldxa [%g1] ASI_PARTITION_ID, %g2
add %g2, 1, %g2
and %g2, 7, %g2
stxa %g2, [%g1] ASI_PARTITION_ID
done
.align 32 /* 192 */
hptrap_incr_tsb_size:
ta HP_BAD_TRAP
!setx ext_trap_0x192_begin, %g1, %g2
!jmp %g2
!nop
.align 32 /* 193 */
clear_lsu_immu:
or %g0, 0x4, %g1
ldxa [%g0] 0x45, %g2
xor %g2, %g1, %g3
stxa %g3, [%g0] 0x45
done
.align 32 /* 194 */
clear_lsu_dmmu:
or %g0, 0x8, %g1
ldxa [%g0] 0x45, %g2
xor %g2, %g1, %g3
stxa %g3, [%g0] 0x45
done
.align 32 /* 195 */
delay_loop: /* %i7 = loop count */
brnz,a %i7, delay_loop
sub %i7, 1, %i7
done
.align 32 /* 196 */
setx ext_trap_sem_lock_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 197 */
setx ext_trap_sem_release_begin, %g1, %g2
jmp %g2
nop
.align 32 /* 198 */
setx sem_data, %g5, %g4 ! %g4 = sem_data
ldx [%g4+8], %i7
done
.align 32 /* 199 */
setx sem_data, %g5, %g4 ! %g4 = sem_data
stx %i7, [%g4+8]
done
.align 32 /* 19a */
ta HP_BAD_TRAP
.align 32 /* 19b */
ta HP_BAD_TRAP
.align 32 /* 19c */
ta HP_BAD_TRAP
.align 32 /* 19d */
ta HP_BAD_TRAP
.align 32 /* 19e */
ta HP_BAD_TRAP
.align 32 /* 19f */
ta HP_BAD_TRAP
.align 32 /* 1a0 */
trap_handler_1a0:
.global good_trap
good_trap:
ba good_trap
nop
nop
nop
.align 32
trap_handler_1a1:
.global bad_trap
bad_trap:
ba bad_trap
nop
nop
nop
/****************************************************************************************** */
SECTION .HPTRAPS_EXT_SECT TEXT_VA=HPTRAPS_EXT_TEXT_PA, DATA_VA=HPTRAPS_EXT_DATA_PA
attr_text {
Name=.HPTRAPS_EXT_SECT,
hypervisor
}
.text
.global ext_trap_0x9_begin
.global ext_trap_0xb_begin
.global ext_trap_0x1b_begin
.global ext_trap_0x2e_begin
.global ext_trap_0x31_begin
.global ext_trap_0x3e_begin
.global ext_trap_0x3f_begin
.global ext_trap_0x64_begin
.global ext_trap_0x68_begin
.global ext_trap_0x6c_begin
.global ext_trap_0x192_begin
.global ext_trap_sem_lock_begin
.global ext_trap_sem_release_begin
ext_trap_sem_lock_begin:
or %i7, %g0, %g7 ! save %i7
wr %g0, ASI_CORE_ID, %asi
ldxa [ASI_CORE_ID_VA] %asi, %g1 ! %g1 = core id + tid
ext_trap_sem_lock_loop:
or %g0, 0x100, %i7
or %g0, %g1, %g2
or %g0, 0x0fff, %g3 ! %g3 = compare value
setx sem_data, %g5, %g4 ! %g4 = sem_data
casxa [%g4] 0x80, %g3, %g2
cmp %g2, 0x0fff
bne,a %xcc, ext_trap_sem_lock_loop
ta HPTRAP_DELAY_LOOP
or %g7, %g0, %i7 ! restore %i7
done
ext_trap_sem_release_begin:
wr %g0, ASI_CORE_ID, %asi
ldxa [ASI_CORE_ID_VA] %asi, %g1 ! %g1 = core id + tid
or %g0, 0x0fff, %g3 ! %g3 = compare value
setx sem_data, %g5, %g4 ! %g4 = sem_data
casxa [%g4] 0x80, %g1, %g3
done
ext_trap_0x3e_begin:
! If TL > 1 ==> Zero context
rdpr %tl, %g1
cmp %g1, 1
bg,a %xcc, trap_0x3e_zero_ctx
or %g0, 0x10, %g4
or %g0, 0x30, %g4
trap_0x3e_zero_ctx:
ldxa [%g0] 0x50, %g1 ! %g1 = IMMU_TAG_TARGET
or %g0, 0x50, %g2
ldxa [%g2] 0x54, %g3 ! %g3 = ITSB_PTR_0
trap_0x3e_next_tte:
ldda [%g3] ASI_NUCLEUS_QUAD_LDD, %g6 ! %g6 = TTE_TAG, %g7 = TTE_DATA
cmp %g6, %g1
bne,a %xcc, trap_0x3e_next_tsb_ptr
add %g2, 8, %g2
srlx %g7, 63, %g5
brz %g5, trap_0x3e_next_tsb_ptr
add %g2, 8, %g2
ldxa [%g4] 0x54, %g5 ! %g5 = NZ_TSB_CONFIG
and %g5, 0x80, %g5
brz,a %g5, trap_0x3e_sun4u
or %g0, 0x0400, %g5
trap_0x3e_sun4v:
or %g0, 0x0400, %g5
trap_0x3e_sun4u:
stxa %g7, [%g5] 0x54 ! Write to IMMU_DATA_IN
retry
trap_0x3e_next_tsb_ptr:
add %g4, 8, %g4
cmp %g4, 0x50
bl,a %xcc, trap_0x3e_next_tte
ldxa [%g2] 0x54, %g3 ! %g3 = DTSB_PTR
done
!****************************************************************************************
ext_trap_0x3f_begin:
or %g0, 0x8, %g1
ldxa [%g1] 0x21, %g2 ! %g2 = PRIMARY_CTX
or %g0, 0x30, %g3
ldxa [%g3] 0x58, %g1 ! %g1 = DMMU_TAG_ACCESS
srlx %g1, 13, %g1
sllx %g1, 13, %g1
or %g1, %g2, %g1 ! %g1 = DMMU_TAG_ACCESS with NZ_CTX
stxa %g1, [%g3] 0x58 ! Update DMMU_TAG_ACCESS
ldxa [%g0] 0x58, %g1 ! %g1 = DMMU_TAG_TARGET
or %g0, 0x30, %g4
or %g0, 0x70, %g2
ldxa [%g2] 0x54, %g3 ! %g3 = DTSB_PTR_0
trap_0x3f_next_tte:
ldda [%g3] ASI_NUCLEUS_QUAD_LDD, %g6 ! %g6 = TTE_TAG, %g7 = TTE_DATA
cmp %g6, %g1
bne,a %xcc, trap_0x3f_next_tsb_ptr
add %g2, 8, %g2
srlx %g7, 63, %g5
brz %g5, trap_0x3f_next_tsb_ptr
add %g2, 8, %g2
ldxa [%g4] 0x54, %g5 ! %g5 = NZ_TSB_CONFIG
and %g5, 0x80, %g5
brz,a %g5, trap_0x3f_sun4u
or %g0, 0x0400, %g5
trap_0x3f_sun4v:
or %g0, 0x0400, %g5
trap_0x3f_sun4u:
stxa %g7, [%g5] 0x5c ! Write to DMMU_DATA_IN
retry
trap_0x3f_next_tsb_ptr:
add %g4, 8, %g4
cmp %g4, 0x50
bl,a %xcc, trap_0x3f_next_tte
ldxa [%g2] 0x54, %g3 ! %g3 = DTSB_PTR
done
!****************************************************************************************
ext_trap_0x64_begin:
ldxa [%g0] 0x50, %g1 ! %g1 = IMMU_TAG_TARGET
or %g0, 0x50, %g2 ! %g2 points to ITSB_PTR_0
srlx %g1, 48, %g3 ! %g3 = CTX
brz,a %g3, trap_0x64_load_tsb_config
or %g0, 0x10, %g3
or %g0, 0x30, %g3
trap_0x64_load_tsb_config:
ldxa [%g3] 0x54, %g4 ! %g4 = TSB_CONFIG
stxa %g4, [%g0] 0x4f
and %g4, 0x80, %g4 ! %g4 = SUN4V
brz,a %g4, trap_0x64_sun4u
or %g0, %g0, %g4 ! %g4 = 0x000 -> 4U
or %g0, 0x000, %g4 ! %g4 = 0x400 -> 4V
trap_0x64_sun4u:
ldxa [%g2] 0x54, %g5 ! %g5 = ITSB_PTR
trap_0x64_load_tte:
ldda [%g5] ASI_NUCLEUS_QUAD_LDD, %g6 ! %g6=TTE_TAG, %g7=TTE_DATA
cmp %g6, %g1 ! Compare TAG
bne,a %xcc, trap_0x64_next_ptr
add %g2, 8, %g2
srlx %g7, 63, %g5 ! Check Valid bit
brz,a %g5, trap_0x64_next_ptr
add %g2, 8, %g2
! At this point, we have got the TTE to be loaded into the TLB.
! We just need to figure out what physical offset to use.
! Register %g4 and %g7 are restricted.
setx trap_ra_mask, %g5, %g6
ldxa [%g0] 0x4f, %g5 ! %g5 = TSB_CONFIG
and %g5, 0x100, %g3 ! %g3 has the ranotpa bit
brz,a %g3, trap_0x64_skip_ra
nop
and %g5, 0x70, %g3 ! %g3 = PSIZE
cmp %g3, 0x00
be,a trap_0x64_get_rr_limits
add %g6, 48, %g6
cmp %g3, 0x10
be,a trap_0x64_get_rr_limits
add %g6, 32, %g6
cmp %g3, 0x10
be,a trap_0x64_get_rr_limits
add %g6, 16, %g6
trap_0x64_get_rr_limits:
ldda [%g6] 0x24, %g2 ! %g2 = RA_max mask, %g3 = RA_min mask
sllx %g7, 24, %g5
srlx %g5, 37, %g5
sllx %g5, 13, %g5 ! %g5 = RA
or %g5, %g2, %g2 ! %g2 = RA_max
and %g5, %g3, %g3 ! %g3 = RA_min
or %g0, 0x108, %g1 ! %g1 points to REAL_RANGE_REG
trap_0x64_next_rr:
cmp %g1, 0x128
bl,a %xcc, trap_0x64_get_rr
ldxa [%g1] 0x52, %g5 ! %g5 = REAL_RANGE
done
trap_0x64_get_rr:
srlx %g5, 63, %g6
brz,a %g6, trap_0x64_next_rr
add %g1, 8, %g1
sllx %g5, 10, %g6 ! %g6 = RR left shift by 10
srlx %g6, 37, %g6
sllx %g6, 13, %g6 ! %g6 = RA_hi
cmp %g6, %g2
bl,a %xcc, trap_0x64_next_rr
add %g1, 8, %g1
sllx %g5, 39, %g6
srlx %g6, 24, %g6 ! %g6 = RA_lo
cmp %g6, %g3
bg,a %xcc, trap_0x64_next_rr
add %g1, 8, %g1
add %g1, 0x100, %g1
ldxa [%g1] 0x52, %g1 ! %g1 = physical offset
add %g7, %g1, %g7
trap_0x64_skip_ra:
stxa %g7, [%g4] 0x54
retry
trap_0x64_next_ptr:
cmp %g2, 0x70
bl,a %xcc, trap_0x64_load_tsb_config
add %g3, 8, %g3
done
!****************************************************************************************
ext_trap_0x68_begin:
ldxa [%g0] 0x58, %g1 ! %g1 = DMMU_TAG_TARGET
or %g0, 0x70, %g2 ! %g2 points to DTSB_PTR_0
srlx %g1, 48, %g3 ! %g3 = CTX
brz,a %g3, trap_0x68_load_tsb_config
or %g0, 0x10, %g3
or %g0, 0x30, %g3
trap_0x68_load_tsb_config:
ldxa [%g3] 0x54, %g4 ! %g4 = TSB_CONFIG
stxa %g4, [%g0] 0x4f
and %g4, 0x80, %g4 ! %g4 = SUN4V
brz,a %g4, trap_0x68_sun4u
or %g0, %g0, %g4 ! %g4 = 0x000 -> 4U
or %g0, 0x000, %g4 ! %g4 = 0x400 -> 4V
trap_0x68_sun4u:
ldxa [%g2] 0x54, %g5 ! %g5 = DTSB_PTR
trap_0x68_load_tte:
ldda [%g5] ASI_NUCLEUS_QUAD_LDD, %g6 ! %g6=TTE_TAG, %g7=TTE_DATA
cmp %g6, %g1 ! Compare TAG
bne,a %xcc, trap_0x68_next_ptr
add %g2, 8, %g2
srlx %g7, 63, %g5 ! Check Valid bit
brz,a %g5, trap_0x68_next_ptr
add %g2, 8, %g2
! At this point, we have got the TTE to be loaded into the TLB.
! We just need to figure out what physical offset to use.
! Register %g4 and %g7 are restricted.
setx trap_ra_mask, %g5, %g6
ldxa [%g0] 0x4f, %g5 ! %g5 = TSB_CONFIG
and %g5, 0x100, %g3 ! %g3 has the ranotpa bit
brz,a %g3, trap_0x68_skip_ra
nop
and %g5, 0x70, %g3 ! %g3 = PSIZE
cmp %g3, 0x00
be,a trap_0x68_get_rr_limits
add %g6, 48, %g6
cmp %g3, 0x10
be,a trap_0x68_get_rr_limits
add %g6, 32, %g6
cmp %g3, 0x10
be,a trap_0x68_get_rr_limits
add %g6, 16, %g6
trap_0x68_get_rr_limits:
ldda [%g6] 0x24, %g2 ! %g2 = RA_max mask, %g3 = RA_min mask
sllx %g7, 24, %g5
srlx %g5, 37, %g5
sllx %g5, 13, %g5 ! %g5 = RA
or %g5, %g2, %g2 ! %g2 = RA_max
and %g5, %g3, %g3 ! %g3 = RA_min
or %g0, 0x108, %g1 ! %g1 points to REAL_RANGE_REG
trap_0x68_next_rr:
cmp %g1, 0x128
bl,a %xcc, trap_0x68_get_rr
ldxa [%g1] 0x52, %g5 ! %g5 = REAL_RANGE
done
trap_0x68_get_rr:
srlx %g5, 63, %g6
brz,a %g6, trap_0x68_next_rr
add %g1, 8, %g1
sllx %g5, 10, %g6 ! %g6 = RR left shift by 10
srlx %g6, 37, %g6
sllx %g6, 13, %g6 ! %g6 = RA_hi
cmp %g6, %g2
bl,a %xcc, trap_0x68_next_rr
add %g1, 8, %g1
sllx %g5, 39, %g6
srlx %g6, 24, %g6 ! %g6 = RA_lo
cmp %g6, %g3
bg,a %xcc, trap_0x68_next_rr
add %g1, 8, %g1
add %g1, 0x100, %g1
ldxa [%g1] 0x52, %g1 ! %g1 = physical offset
add %g7, %g1, %g7
trap_0x68_skip_ra:
stxa %g7, [%g4] 0x5c
retry
trap_0x68_next_ptr:
cmp %g2, 0x90
bl,a %xcc, trap_0x68_load_tsb_config
add %g3, 8, %g3
done
/*************************************************************************/
ext_trap_0x9_begin:
/* Get TID */
wr %g0, ASI_CORE_ID, %asi
ldxa [ASI_CORE_ID_VA] %asi, %l7
set 0x7, %g1
and %l7, %g1, %l7 ! %l7 has TID
setx Thr0_trap_occurence_cnt_begin, %g2, %g1
or %g0, NUM_IMPL_TRAPS, %g3
umul %g3, 4, %g2
umul %l7, %g2, %g2 ! %g2 points to thread offset
add %g1, %g2, %g1 ! %g1 points to thread
add %g1, TRAP_0x9_OFFSET, %g1 ! %g1 points to trap 0x9 occurence count
lduw [%g1], %g2
add %g2, 1, %g2
or %g0, MAX_OCCURENCE_CNT, %g4
cmp %g2, %g4
bge %xcc, clear_occurence_cnt
nop
stw %g2, [%g1]
done
ext_trap_0xb_begin:
/* Get TID */
wr %g0, ASI_CORE_ID, %asi
ldxa [ASI_CORE_ID_VA] %asi, %l7
set 0x7, %g1
and %l7, %g1, %l7 ! %l7 has TID
setx Thr0_trap_occurence_cnt_begin, %g2, %g1
or %g0, NUM_IMPL_TRAPS, %g3
umul %g3, 4, %g2
umul %l7, %g2, %g2 ! %g2 points to thread offset
add %g1, %g2, %g1 ! %g1 points to thread
add %g1, TRAP_0xB_OFFSET, %g1 ! %g1 points to trap 0xb occurence count
lduw [%g1], %g2
add %g2, 1, %g2
or %g0, MAX_OCCURENCE_CNT, %g4
cmp %g2, %g4
bge %xcc, clear_occurence_cnt
nop
stw %g2, [%g1]
done
ext_trap_0x1b_begin:
/* Get TID */
wr %g0, ASI_CORE_ID, %asi
ldxa [ASI_CORE_ID_VA] %asi, %l7
set 0x7, %g1
and %l7, %g1, %l7 ! %l7 has TID
setx Thr0_trap_occurence_cnt_begin, %g2, %g1
or %g0, NUM_IMPL_TRAPS, %g3
umul %g3, 4, %g2
umul %l7, %g2, %g2 ! %g2 points to thread offset
add %g1, %g2, %g1 ! %g1 points to thread
add %g1, TRAP_0x1B_OFFSET, %g1 ! %g1 points to trap 0x1b occurence count
lduw [%g1], %g2
add %g2, 1, %g2
or %g0, MAX_OCCURENCE_CNT, %g4
cmp %g2, %g4
bge %xcc, clear_occurence_cnt
nop
stw %g2, [%g1]
done
ext_trap_0x2e_begin:
/* Get TID */
wr %g0, ASI_CORE_ID, %asi
ldxa [ASI_CORE_ID_VA] %asi, %l7
set 0x7, %g1
and %l7, %g1, %l7 ! %l7 has TID
setx Thr0_trap_occurence_cnt_begin, %g2, %g1
or %g0, NUM_IMPL_TRAPS, %g3
umul %g3, 4, %g2
umul %l7, %g2, %g2 ! %g2 points to thread offset
add %g1, %g2, %g1 ! %g1 points to thread
add %g1, TRAP_0x2E_OFFSET, %g1 ! %g1 points to trap 0x2e occurence count
lduw [%g1], %g2
add %g2, 1, %g2
or %g0, MAX_OCCURENCE_CNT, %g4
cmp %g2, %g4
bge %xcc, clear_occurence_cnt
nop
stw %g2, [%g1]
done
ext_trap_0x31_begin:
/* Get TID */
wr %g0, ASI_CORE_ID, %asi
ldxa [ASI_CORE_ID_VA] %asi, %l7
set 0x7, %g1
and %l7, %g1, %l7 ! %l7 has TID
setx Thr0_trap_occurence_cnt_begin, %g2, %g1
or %g0, NUM_IMPL_TRAPS, %g3
umul %g3, 4, %g2
umul %l7, %g2, %g2 ! %g2 points to thread offset
add %g1, %g2, %g1 ! %g1 points to thread
add %g1, TRAP_0x31_OFFSET, %g1 ! %g1 points to trap 0x31 occurence count
lduw [%g1], %g2
add %g2, 1, %g2
or %g0, MAX_OCCURENCE_CNT, %g4
cmp %g2, %g4
bge %xcc, clear_occurence_cnt
nop
stw %g2, [%g1]
done
ext_trap_0x6c_begin:
/* Get TID */
wr %g0, ASI_CORE_ID, %asi
ldxa [ASI_CORE_ID_VA] %asi, %l7
set 0x7, %g1
and %l7, %g1, %l7 ! %l7 has TID
setx Thr0_trap_occurence_cnt_begin, %g2, %g1
or %g0, NUM_IMPL_TRAPS, %g3
umul %g3, 4, %g2
umul %l7, %g2, %g2 ! %g2 points to thread offset
add %g1, %g2, %g1 ! %g1 points to thread
add %g1, TRAP_0x6C_OFFSET, %g1 ! %g1 points to trap 0x6c occurence count
lduw [%g1], %g2
add %g2, 1, %g2
or %g0, MAX_OCCURENCE_CNT, %g4
cmp %g2, %g4
bge %xcc, clear_occurence_cnt
nop
stw %g2, [%g1]
done
clear_occurence_cnt:
stw %g0, [%g1]
add %g1, 4, %g1
sub %g3, 1, %g3
brnz %g3, clear_occurence_cnt
nop
/* %l7 has TID */
setx Thr0_register_initial_values, %i6, %i7
umul %l7, 240, %i6
add %i7, %i6, %i7 ! %i7 points to register values
restore_registers:
wrpr 0, %g0, %gl
ldx [%i7 + 0x10], %g2
ldx [%i7 + 0x00], %g3
ldx [%i7 + 0x08], %g4
ldx [%i7 + 0x10], %g5
ldx [%i7 + 0x18], %g6
ldx [%i7 + 0x20], %g7
ldx [%i7 + 0x28], %o0
ldx [%i7 + 0x30], %o1
ldx [%i7 + 0x38], %o2
ldx [%i7 + 0x40], %o3
ldx [%i7 + 0x48], %o4
ldx [%i7 + 0x50], %o5
ldx [%i7 + 0x58], %o6
ldx [%i7 + 0x60], %o7
ldx [%i7 + 0x68], %l0
ldx [%i7 + 0x70], %l1
ldx [%i7 + 0x78], %l2
ldx [%i7 + 0x80], %l3
ldx [%i7 + 0x88], %l4
ldx [%i7 + 0x90], %l5
ldx [%i7 + 0x98], %l6
ldx [%i7 + 0xa0], %l7
ldx [%i7 + 0xa8], %i0
ldx [%i7 + 0xb0], %i1
ldx [%i7 + 0xb8], %i2
ldx [%i7 + 0xc0], %i3
ldx [%i7 + 0xc8], %i4
ldx [%i7 + 0xd0], %i5
ldx [%i7 + 0xd8], %i6
ldx [%i7 + 0xe0], %i7
done
attr_data {
Name=.HPTRAPS_EXT_SECT,
hypervisor
}
.data
trap_ra_mask:
.xword 0x00000fffe000
.xword 0x00fff0000000
.xword 0x0000003fe000
.xword 0x00ffffc00000
.xword 0x00000000e000
.xword 0x00ffffff0000
.xword 0x000000000000
.xword 0x00ffffffe000
.global sem_data
sem_data:
.xword 0x0fff
.xword 0x0
/* include register_init.out */
Thr0_trap_occurence_cnt_begin:
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
Thr1_trap_occurence_cnt_begin:
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
Thr2_trap_occurence_cnt_begin:
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
Thr3_trap_occurence_cnt_begin:
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
Thr4_trap_occurence_cnt_begin:
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
Thr5_trap_occurence_cnt_begin:
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
Thr6_trap_occurence_cnt_begin:
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
Thr7_trap_occurence_cnt_begin:
.word 0
.word 0
.word 0
.word 0
.word 0
.word 0
.align 32
.global Thr0_register_initial_values
Thr0_register_initial_values:
.xword 0x000000ea4000
.xword 0x000000ea5fc0
.xword 0x000006140000
.xword 0x00000614ffc0
.xword 0x00018ec00000
.xword 0x00018effffc0
.xword 0x000000ec2000
.xword 0x000000ec3fc0
.xword 0x000006b80000
.xword 0x000006b8ffc0
.xword 0x000000e68000
.xword 0x000000e69fc0
.xword 0x000000fb4000
.xword 0x000000fb5fc0
.xword 0x000000e6c000
.xword 0x000000e6dfc0
.xword 0x000000e04000
.xword 0x000000e05fc0
.xword 0x000000e5c000
.xword 0x000000e5dfc0
.xword 0x000000e90000
.xword 0x000000e91fc0
.xword 0x000000e54000
.xword 0x000000e55fc0
.xword 0x0000064b0000
.xword 0x0000064bffc0
.xword 0x000000f4e000
.xword 0x000000f4ffc0
.xword 0x000000f5a000
.xword 0x000000f5bfc0
Thr1_register_initial_values:
.xword 0x000006b00000
.xword 0x000006b0ffc0
.xword 0x000000e34000
.xword 0x000000e35fc0
.xword 0x000000f02000
.xword 0x000000f03fc0
.xword 0x0001ad800000
.xword 0x0001adbfffc0
.xword 0x000006ad0000
.xword 0x000006adffc0
.xword 0x0000067c0000
.xword 0x0000067cffc0
.xword 0x000000e88000
.xword 0x000000e89fc0
.xword 0x000000fea000
.xword 0x000000febfc0
.xword 0x000000f76000
.xword 0x000000f77fc0
.xword 0x000006320000
.xword 0x00000632ffc0
.xword 0x000006010000
.xword 0x00000601ffc0
.xword 0x0001ac400000
.xword 0x0001ac7fffc0
.xword 0x0001a7800000
.xword 0x0001a7bfffc0
.xword 0x000006020000
.xword 0x00000602ffc0
.xword 0x000006510000
.xword 0x00000651ffc0
Thr2_register_initial_values:
.xword 0x000000e84000
.xword 0x000000e85fc0
.xword 0x000189800000
.xword 0x000189bfffc0
.xword 0x000006430000
.xword 0x00000643ffc0
.xword 0x000000e74000
.xword 0x000000e75fc0
.xword 0x000000f40000
.xword 0x000000f41fc0
.xword 0x000000f74000
.xword 0x000000f75fc0
.xword 0x000006410000
.xword 0x00000641ffc0
.xword 0x000006b50000
.xword 0x000006b5ffc0
.xword 0x000000f3c000
.xword 0x000000f3dfc0
.xword 0x000006190000
.xword 0x00000619ffc0
.xword 0x000193000000
.xword 0x0001933fffc0
.xword 0x000000e7e000
.xword 0x000000e7ffc0
.xword 0x000000f86000
.xword 0x000000f87fc0
.xword 0x000006080000
.xword 0x00000608ffc0
.xword 0x000006d50000
.xword 0x000006d5ffc0
Thr3_register_initial_values:
.xword 0x0001bb400000
.xword 0x0001bb7fffc0
.xword 0x0000061d0000
.xword 0x0000061dffc0
.xword 0x0000069e0000
.xword 0x0000069effc0
.xword 0x000006100000
.xword 0x00000610ffc0
.xword 0x000000faa000
.xword 0x000000fabfc0
.xword 0x000006580000
.xword 0x00000658ffc0
.xword 0x000185800000
.xword 0x000185bfffc0
.xword 0x0001b1000000
.xword 0x0001b13fffc0
.xword 0x0001af400000
.xword 0x0001af7fffc0
.xword 0x000c50000000
.xword 0x000c5fffffc0
.xword 0x000006e60000
.xword 0x000006e6ffc0
.xword 0x000000ed8000
.xword 0x000000ed9fc0
.xword 0x000006fa0000
.xword 0x000006faffc0
.xword 0x000000ef4000
.xword 0x000000ef5fc0
.xword 0x000000f5e000
.xword 0x000000f5ffc0
Thr4_register_initial_values:
.xword 0x000000e2c000
.xword 0x000000e2dfc0
.xword 0x000000e98000
.xword 0x000000e99fc0
.xword 0x00019dc00000
.xword 0x00019dffffc0
.xword 0x000000f38000
.xword 0x000000f39fc0
.xword 0x0001b9c00000
.xword 0x0001b9ffffc0
.xword 0x000000f8a000
.xword 0x000000f8bfc0
.xword 0x0001aa000000
.xword 0x0001aa3fffc0
.xword 0x000000eda000
.xword 0x000000edbfc0
.xword 0x000c00000000
.xword 0x000c0fffffc0
.xword 0x000006ca0000
.xword 0x000006caffc0
.xword 0x000006770000
.xword 0x00000677ffc0
.xword 0x000000f96000
.xword 0x000000f97fc0
.xword 0x000006df0000
.xword 0x000006dfffc0
.xword 0x000000eee000
.xword 0x000000eeffc0
.xword 0x000006ab0000
.xword 0x000006abffc0
Thr5_register_initial_values:
.xword 0x000000f2e000
.xword 0x000000f2ffc0
.xword 0x000000f88000
.xword 0x000000f89fc0
.xword 0x000000e6a000
.xword 0x000000e6bfc0
.xword 0x000000e66000
.xword 0x000000e67fc0
.xword 0x000191c00000
.xword 0x000191ffffc0
.xword 0x000000e9c000
.xword 0x000000e9dfc0
.xword 0x00018fc00000
.xword 0x00018fffffc0
.xword 0x000000e38000
.xword 0x000000e39fc0
.xword 0x000000fc2000
.xword 0x000000fc3fc0
.xword 0x000006590000
.xword 0x00000659ffc0
.xword 0x000000eb8000
.xword 0x000000eb9fc0
.xword 0x000000f52000
.xword 0x000000f53fc0
.xword 0x000000ed0000
.xword 0x000000ed1fc0
.xword 0x000000e94000
.xword 0x000000e95fc0
.xword 0x0001a6800000
.xword 0x0001a6bfffc0
Thr6_register_initial_values:
.xword 0x000000fc0000
.xword 0x000000fc1fc0
.xword 0x000006030000
.xword 0x00000603ffc0
.xword 0x000000f36000
.xword 0x000000f37fc0
.xword 0x0000065f0000
.xword 0x0000065fffc0
.xword 0x000000e2a000
.xword 0x000000e2bfc0
.xword 0x000006cd0000
.xword 0x000006cdffc0
.xword 0x000c40000000
.xword 0x000c4fffffc0
.xword 0x000000ede000
.xword 0x000000edffc0
.xword 0x0001bc800000
.xword 0x0001bcbfffc0
.xword 0x0000066c0000
.xword 0x0000066cffc0
.xword 0x000000f30000
.xword 0x000000f31fc0
.xword 0x000006350000
.xword 0x00000635ffc0
.xword 0x000000f58000
.xword 0x000000f59fc0
.xword 0x0000062a0000
.xword 0x0000062affc0
.xword 0x000000ff8000
.xword 0x000000ff9fc0
Thr7_register_initial_values:
.xword 0x000000e02000
.xword 0x000000e03fc0
.xword 0x0001b8000000
.xword 0x0001b83fffc0
.xword 0x000000e3c000
.xword 0x000000e3dfc0
.xword 0x000000f5c000
.xword 0x000000f5dfc0
.xword 0x0001a7400000
.xword 0x0001a77fffc0
.xword 0x000000e28000
.xword 0x000000e29fc0
.xword 0x000006db0000
.xword 0x000006dbffc0
.xword 0x000000f7a000
.xword 0x000000f7bfc0
.xword 0x000195800000
.xword 0x000195bfffc0
.xword 0x000006fc0000
.xword 0x000006fcffc0
.xword 0x000006060000
.xword 0x00000606ffc0
.xword 0x000eb0000000
.xword 0x000ebfffffc0
.xword 0x000006340000
.xword 0x00000634ffc0
.xword 0x00018b400000
.xword 0x00018b7fffc0
.xword 0x000184400000
.xword 0x0001847fffc0
/*********************************************************************/
SECTION .Thr0_User_Text_4u000 TEXT_VA=0x00001b0000
attr_text {
Name = .Thr0_User_Text_4u000 ,
thr0_nz_ctx_tsb_2 ,
VA = 0x0000001b0000 ,/* 0x0000001b1fc0 */
RA = 0x0000c76000 ,
PA = 0x0002c76000 ,
TTE_Context = THR0_PCONTEXT_0 ,/* TEXT_PRIMARY */
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0x0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 0 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr0_User_Text_4u000_text_end ,
compressimage ,
}
.text
.global Thr0_user_code_entry
Thr0_user_code_entry:
.global Thr0_User_Text_4u000_text_begin
Thr0_User_Text_4u000_text_begin:
SEM_LOCK
or %g0, 0, %i7
IDEMAP_NCTX
SEM_RELEASE
EXIT_GOOD
Thr0_User_Text_4u000_text_end:
/*********************************************************************/
SECTION .Thr0_User_Data_4u200 DATA_VA=0x0000170000
attr_data {
Name = .Thr0_User_Data_4u200 ,
VA = 0x000000170000 ,/* 0x000000171fc0 */
RA = 0x0000cca000 ,
PA = 0x0002cca000 ,
TTE_Context = THR0_PCONTEXT_0 ,
thr0_nz_ctx_tsb_2 ,
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0x00 ,
TTE_EP = 0 ,
TTE_L = 0 ,
TTE_CP = 0 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 1 ,
TTE_RSVD1 = 0 ,
end_label = Thr0_User_Data_4u200_data_end ,
compressimage ,
}
.data
.global Thr0_User_Data_4u200_data_begin
Thr0_User_Data_4u200_data_begin:
.xword 0x12345678
Thr0_User_Data_4u200_data_end:
/*********************************************************************/
SECTION .Thr1_User_Text_4u000 TEXT_VA=0x00a6800000
attr_text {
Name = .Thr1_User_Text_4u000 ,
thr1_nz_ctx_tsb_2 ,
VA = 0x0000a6800000 ,/* 0x0000a6bfffc0 */
RA = 0x05fb800000 ,
PA = 0x05fb800000 ,
TTE_Context = THR1_PCONTEXT_0 ,/* TEXT_PRIMARY */
TTE_V = 1 ,
TTE_Size = 3 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0x0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 0 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr1_User_Text_4u000_text_end ,
compressimage ,
}
.text
.global Thr1_user_code_entry
Thr1_user_code_entry:
.global Thr1_User_Text_4u000_text_begin
Thr1_User_Text_4u000_text_begin:
SEM_LOCK
or %g0, 0, %i7
IDEMAP_NCTX
SEM_RELEASE
EXIT_GOOD
Thr1_User_Text_4u000_text_end:
/*********************************************************************/
SECTION .Thr1_User_Data_4u200 DATA_VA=0x0000170000
attr_data {
Name = .Thr1_User_Data_4u200 ,
VA = 0x000000170000 ,
RA = 0x0004c36000 ,
PA = 0x0004c36000 ,
TTE_Context = THR1_PCONTEXT_0 ,
thr1_nz_ctx_tsb_0 ,
TTE_V = 0 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0x0 ,
TTE_EP = 0 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 1 ,
TTE_RSVD1 = 0 ,
end_label = Thr1_User_Data_4u200_data_end ,
compressimage ,
}
.data
.global Thr1_User_Data_4u200_data_begin
Thr1_User_Data_4u200_data_begin:
.xword 0x2345671
Thr1_User_Data_4u200_data_end:
/*********************************************************************/
SECTION .Thr2_User_Text_4v000 TEXT_VA=0x0000100000
attr_text {
Name = .Thr2_User_Text_4v000 ,
thr2_nz_ctx_tsb_1 ,
VA = 0x000000100000 ,/* 0x000000101fc0 */
RA = 0x0000c8c000 ,
PA = 0x0006c8c000 ,
TTE_Context = THR2_PCONTEXT_0 ,/* TEXT_PRIMARY */
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 1 ,
TTE_Soft = 0x0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 0 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 1 ,
TTE_W = 0 ,
TTE_SW1 = 0 ,
TTE_SW0 = 1 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr2_User_Text_4v000_text_end ,
compressimage ,
}
.text
.global Thr2_user_code_entry
Thr2_user_code_entry:
.global Thr2_User_Text_4v000_text_begin
Thr2_User_Text_4v000_text_begin:
SEM_LOCK
or %g0, 0, %i7
IDEMAP_NCTX
SEM_RELEASE
EXIT_GOOD
Thr2_User_Text_4v000_text_end:
/*********************************************************************/
SECTION .Thr2_User_Data_4v100 DATA_VA=0x0000170000
attr_data {
Name = .Thr2_User_Data_4v100 ,
VA = 0x000000170000 ,
RA = 0x0000c5c000 ,
PA = 0x0006c5c000 ,
TTE_Context = THR2_PCONTEXT_0 ,
thr2_nz_ctx_tsb_1 ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0x0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 0 ,
TTE_W = 1 ,
TTE_SW1 = 0 ,
TTE_SW0 = 1 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr2_User_Data_4v100_data_end ,
compressimage ,
}
.data
.global Thr2_User_Data_4v100_data_begin
Thr2_User_Data_4v100_data_begin:
.xword 0x34567812
Thr2_User_Data_4v100_data_end:
/*********************************************************************/
SECTION .Thr3_User_Text_4u000 TEXT_VA=0x00a5000000
attr_text {
Name = .Thr3_User_Text_4u000 ,
thr3_nz_ctx_tsb_3 ,
VA = 0x0000a5000000 ,/* 0x0000a53fffc0 */
RA = 0x09f6800000 ,
PA = 0x09f6800000 ,
TTE_Context = THR3_PCONTEXT_0 ,/* TEXT_PRIMARY */
TTE_V = 1 ,
TTE_Size = 3 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0x0 ,
TTE_EP = 1 ,
TTE_L = 1 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr3_User_Text_4u000_text_end ,
compressimage ,
}
.text
.global Thr3_user_code_entry
Thr3_user_code_entry:
.global Thr3_User_Text_4u000_text_begin
Thr3_User_Text_4u000_text_begin:
SEM_LOCK
or %g0, 0, %i7
IDEMAP_NCTX
SEM_RELEASE
EXIT_GOOD
Thr3_User_Text_4u000_text_end:
/*********************************************************************/
SECTION .Thr3_User_Data_4v300 DATA_VA=0x0000170000
attr_data {
Name = .Thr3_User_Data_4v300 ,
VA = 0x000000170000 ,
RA = 0x0008c72000 ,
PA = 0x0008c72000 ,
TTE_Context = THR3_PCONTEXT_0 ,
thr3_nz_ctx_tsb_1 ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0x0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 0 ,
TTE_W = 1 ,
TTE_SW1 = 1 ,
TTE_SW0 = 1 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr3_User_Data_4v300_data_end ,
compressimage ,
}
.data
.global Thr3_User_Data_4v300_data_begin
Thr3_User_Data_4v300_data_begin:
.xword 0x45678123
Thr3_User_Data_4v300_data_end:
/*********************************************************************/
SECTION .Thr4_User_Text_4v000 TEXT_VA=0x0086000000
attr_text {
Name = .Thr4_User_Text_4v000 ,
thr4_nz_ctx_tsb_3 ,
VA = 0x000086000000 ,/* 0x0000863fffc0 */
RA = 0x01d1c00000 ,
PA = 0x0bd1c00000 ,
TTE_Context = THR4_PCONTEXT_0 ,/* TEXT_PRIMARY */
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0x0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 1 ,
TTE_W = 0 ,
TTE_SW1 = 0 ,
TTE_SW0 = 1 ,
TTE_RSVD1 = 0 ,
TTE_Size = 3 ,
end_label = Thr4_User_Text_4v000_text_end ,
compressimage ,
}
.text
.global Thr4_user_code_entry
Thr4_user_code_entry:
.global Thr4_User_Text_4v000_text_begin
Thr4_User_Text_4v000_text_begin:
SEM_LOCK
or %g0, 0, %i7
IDEMAP_NCTX
SEM_RELEASE
EXIT_GOOD
Thr4_User_Text_4v000_text_end:
/*********************************************************************/
SECTION .Thr4_User_Data_4v100 DATA_VA=0x0000170000
attr_data {
Name = .Thr4_User_Data_4v100 ,
VA = 0x000000170000 ,
RA = 0x000ac34000 ,
PA = 0x000ac34000 ,
TTE_Context = THR4_PCONTEXT_0 ,
thr4_nz_ctx_tsb_1 ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 1 ,
TTE_Soft = 0x0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 0 ,
TTE_W = 1 ,
TTE_SW1 = 0 ,
TTE_SW0 = 1 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr4_User_Data_4v100_data_end ,
compressimage ,
}
.data
.global Thr4_User_Data_4v100_data_begin
Thr4_User_Data_4v100_data_begin:
.xword 0x56781234
Thr4_User_Data_4v100_data_end:
/*********************************************************************/
SECTION .Thr5_User_Text_4u000 TEXT_VA=0x000006c000
attr_text {
Name = .Thr5_User_Text_4u000 ,
thr5_nz_ctx_tsb_0 ,
VA = 0x00000006c000 ,/* 0x00000006dfc0 */
RA = 0x0000c38000 ,
PA = 0x000cc38000 ,
TTE_Context = THR5_PCONTEXT_0 ,/* TEXT_PRIMARY */
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0x00 ,
TTE_EP = 1 ,
TTE_L = 1 ,
TTE_CP = 0 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr5_User_Text_4u000_text_end ,
compressimage ,
}
.text
.global Thr5_user_code_entry
Thr5_user_code_entry:
.global Thr5_User_Text_4u000_text_begin
Thr5_User_Text_4u000_text_begin:
SEM_LOCK
or %g0, 0, %i7
IDEMAP_NCTX
SEM_RELEASE
EXIT_GOOD
Thr5_User_Text_4u000_text_end:
/*********************************************************************/
SECTION .Thr5_User_Data_4u100 DATA_VA=0x0000170000
attr_data {
Name = .Thr5_User_Data_4u100 ,
VA = 0x000000170000 ,
RA = 0x0000da6000 ,
PA = 0x000cda6000 ,
TTE_Context = THR5_PCONTEXT_0 ,
thr5_nz_ctx_tsb_0 ,
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0x0 ,
TTE_EP = 0 ,
TTE_L = 1 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 1 ,
TTE_RSVD1 = 0 ,
end_label = Thr5_User_Data_4u100_data_end ,
compressimage ,
}
.data
.global Thr5_User_Data_4u100_data_begin
Thr5_User_Data_4u100_data_begin:
.xword 0x67812345
Thr5_User_Data_4u100_data_end:
/*********************************************************************/
SECTION .Thr6_User_Text_4u000 TEXT_VA=0x0000038000
attr_text {
Name = .Thr6_User_Text_4u000 ,
thr6_nz_ctx_tsb_2 ,
VA = 0x000000038000 ,/* 0x000000039fc0 */
RA = 0x000ecd4000 ,
PA = 0x000ecd4000 ,
TTE_Context = THR6_PCONTEXT_0 ,/* TEXT_PRIMARY */
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0x0 ,
TTE_EP = 1 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 0 ,
TTE_RSVD1 = 0 ,
end_label = Thr6_User_Text_4u000_text_end ,
compressimage ,
}
.text
.global Thr6_user_code_entry
Thr6_user_code_entry:
.global Thr6_User_Text_4u000_text_begin
Thr6_User_Text_4u000_text_begin:
SEM_LOCK
or %g0, 0, %i7
IDEMAP_NCTX
SEM_RELEASE
EXIT_GOOD
Thr6_User_Text_4u000_text_end:
/*********************************************************************/
SECTION .Thr6_User_Data_4u102 DATA_VA=0x0000170000
attr_data {
Name = .Thr6_User_Data_4u102 ,
VA = 0x000000170000 ,
RA = 0x000edfc000 ,
PA = 0x000edfc000 ,
TTE_Context = THR6_PCONTEXT_0 ,/* DATA_PRIMARY */
thr6_nz_ctx_tsb_2 ,
TTE_V = 1 ,
TTE_Size = 0 ,
TTE_NFO = 0 ,
TTE_IE = 0 ,
TTE_Soft = 0x0 ,
TTE_EP = 0 ,
TTE_L = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_E = 0 ,
TTE_P = 0 ,
TTE_W = 1 ,
TTE_RSVD1 = 0 ,
end_label = Thr6_User_Data_4u102_data_end ,
compressimage ,
}
.data
.global Thr6_User_Data_4u102_data_begin
Thr6_User_Data_4u102_data_begin:
.xword 0x78123456
Thr6_User_Data_4u102_data_end:
/*********************************************************************/
SECTION .Thr7_User_Text_4v000 TEXT_VA=0x000002c000
attr_text {
Name = .Thr7_User_Text_4v000 ,
thr7_nz_ctx_tsb_2 ,
VA = 0x00000002c000 ,/* 0x00000002dfc0 */
RA = 0x0010c04000 ,
PA = 0x0010c04000 ,
TTE_Context = THR7_PCONTEXT_0 ,/* TEXT_PRIMARY */
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 1 ,
TTE_Soft = 0x0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 0 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 1 ,
TTE_W = 0 ,
TTE_SW1 = 1 ,
TTE_SW0 = 0 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr7_User_Text_4v000_text_end ,
compressimage ,
}
.text
.global Thr7_user_code_entry
Thr7_user_code_entry:
.global Thr7_User_Text_4v000_text_begin
Thr7_User_Text_4v000_text_begin:
SEM_LOCK
or %g0, 0, %i7
IDEMAP_NCTX
SEM_RELEASE
EXIT_GOOD
Thr7_User_Text_4v000_text_end:
/*********************************************************************/
SECTION .Thr7_User_Data_4v100 DATA_VA=0x0000170000
attr_data {
Name = .Thr7_User_Data_4v100 ,
VA = 0x000000170000 ,
RA = 0x0010c54000 ,
PA = 0x0010c54000 ,
TTE_Context = THR7_PCONTEXT_0 ,/* DATA_PRIMARY */
thr7_nz_ctx_tsb_2 ,
TTE_V = 1 ,
TTE_NFO = 0 ,
TTE_L = 0 ,
TTE_Soft = 0x0 ,
TTE_IE = 0 ,
TTE_E = 0 ,
TTE_CP = 1 ,
TTE_CV = 0 ,
TTE_P = 0 ,
TTE_EP = 0 ,
TTE_W = 1 ,
TTE_SW1 = 1 ,
TTE_SW0 = 1 ,
TTE_RSVD1 = 0 ,
TTE_Size = 0 ,
end_label = Thr7_User_Data_4v100_data_end ,
compressimage ,
}
.data
.global Thr7_User_Data_4v100_data_begin
Thr7_User_Data_4v100_data_begin:
.xword 0x81234567
Thr7_User_Data_4v100_data_end: