12SN/A/*
21762SN/A * Copyright (c) 2003-2005 The Regents of The University of Michigan
32SN/A * All rights reserved.
42SN/A *
52SN/A * Redistribution and use in source and binary forms, with or without
62SN/A * modification, are permitted provided that the following conditions are
72SN/A * met: redistributions of source code must retain the above copyright
82SN/A * notice, this list of conditions and the following disclaimer;
92SN/A * redistributions in binary form must reproduce the above copyright
102SN/A * notice, this list of conditions and the following disclaimer in the
112SN/A * documentation and/or other materials provided with the distribution;
122SN/A * neither the name of the copyright holders nor the names of its
132SN/A * contributors may be used to endorse or promote products derived from
142SN/A * this software without specific prior written permission.
152SN/A *
162SN/A * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
172SN/A * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
182SN/A * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
192SN/A * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
202SN/A * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
212SN/A * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
222SN/A * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
232SN/A * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
242SN/A * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
252SN/A * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
262SN/A * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
272665Ssaidi@eecs.umich.edu *
282665Ssaidi@eecs.umich.edu * Authors: Nathan Binkert
292SN/A */
302SN/A
311110SN/A#include "arch/alpha/osfpal.hh"
322SN/A
335569Snate@binkert.orgconst char *
345569Snate@binkert.orgPAL::name(int index)
355569Snate@binkert.org{
365569Snate@binkert.org    static const char *strings[PAL::NumCodes] = {
372SN/A        // Priviledged PAL instructions
385543Ssaidi@eecs.umich.edu        "halt",         // 0x00
395543Ssaidi@eecs.umich.edu        "cflush",       // 0x01
405543Ssaidi@eecs.umich.edu        "draina",       // 0x02
415543Ssaidi@eecs.umich.edu        0,              // 0x03
425543Ssaidi@eecs.umich.edu        0,              // 0x04
435543Ssaidi@eecs.umich.edu        0,              // 0x05
445543Ssaidi@eecs.umich.edu        0,              // 0x06
455543Ssaidi@eecs.umich.edu        0,              // 0x07
465543Ssaidi@eecs.umich.edu        0,              // 0x08
475543Ssaidi@eecs.umich.edu        "cserve",       // 0x09
485543Ssaidi@eecs.umich.edu        "swppal",       // 0x0a
495543Ssaidi@eecs.umich.edu        0,              // 0x0b
505543Ssaidi@eecs.umich.edu        0,              // 0x0c
515543Ssaidi@eecs.umich.edu        "wripir",       // 0x0d
525543Ssaidi@eecs.umich.edu        0,              // 0x0e
535543Ssaidi@eecs.umich.edu        0,              // 0x0f
545543Ssaidi@eecs.umich.edu        "rdmces",       // 0x10
555543Ssaidi@eecs.umich.edu        "wrmces",       // 0x11
565543Ssaidi@eecs.umich.edu        0,              // 0x12
575543Ssaidi@eecs.umich.edu        0,              // 0x13
585543Ssaidi@eecs.umich.edu        0,              // 0x14
595543Ssaidi@eecs.umich.edu        0,              // 0x15
605543Ssaidi@eecs.umich.edu        0,              // 0x16
615543Ssaidi@eecs.umich.edu        0,              // 0x17
625543Ssaidi@eecs.umich.edu        0,              // 0x18
635543Ssaidi@eecs.umich.edu        0,              // 0x19
645543Ssaidi@eecs.umich.edu        0,              // 0x1a
655543Ssaidi@eecs.umich.edu        0,              // 0x1b
665543Ssaidi@eecs.umich.edu        0,              // 0x1c
675543Ssaidi@eecs.umich.edu        0,              // 0x1d
685543Ssaidi@eecs.umich.edu        0,              // 0x1e
695543Ssaidi@eecs.umich.edu        0,              // 0x1f
705543Ssaidi@eecs.umich.edu        0,              // 0x20
715543Ssaidi@eecs.umich.edu        0,              // 0x21
725543Ssaidi@eecs.umich.edu        0,              // 0x22
735543Ssaidi@eecs.umich.edu        0,              // 0x23
745543Ssaidi@eecs.umich.edu        0,              // 0x24
755543Ssaidi@eecs.umich.edu        0,              // 0x25
765543Ssaidi@eecs.umich.edu        0,              // 0x26
775543Ssaidi@eecs.umich.edu        0,              // 0x27
785543Ssaidi@eecs.umich.edu        0,              // 0x28
795543Ssaidi@eecs.umich.edu        0,              // 0x29
805543Ssaidi@eecs.umich.edu        0,              // 0x2a
815543Ssaidi@eecs.umich.edu        "wrfen",        // 0x2b
825543Ssaidi@eecs.umich.edu        0,              // 0x2c
835543Ssaidi@eecs.umich.edu        "wrvptptr",     // 0x2d
845543Ssaidi@eecs.umich.edu        0,              // 0x2e
855543Ssaidi@eecs.umich.edu        0,              // 0x2f
865543Ssaidi@eecs.umich.edu        "swpctx",       // 0x30
875543Ssaidi@eecs.umich.edu        "wrval",        // 0x31
885543Ssaidi@eecs.umich.edu        "rdval",        // 0x32
895543Ssaidi@eecs.umich.edu        "tbi",          // 0x33
905543Ssaidi@eecs.umich.edu        "wrent",        // 0x34
915543Ssaidi@eecs.umich.edu        "swpipl",       // 0x35
925543Ssaidi@eecs.umich.edu        "rdps",         // 0x36
935543Ssaidi@eecs.umich.edu        "wrkgp",        // 0x37
945543Ssaidi@eecs.umich.edu        "wrusp",        // 0x38
955543Ssaidi@eecs.umich.edu        "wrperfmon",    // 0x39
965543Ssaidi@eecs.umich.edu        "rdusp",        // 0x3a
975543Ssaidi@eecs.umich.edu        0,              // 0x3b
985543Ssaidi@eecs.umich.edu        "whami",        // 0x3c
995543Ssaidi@eecs.umich.edu        "retsys",       // 0x3d
1005543Ssaidi@eecs.umich.edu        "wtint",        // 0x3e
1015543Ssaidi@eecs.umich.edu        "rti",          // 0x3f
1025543Ssaidi@eecs.umich.edu        0,              // 0x40
1035543Ssaidi@eecs.umich.edu        0,              // 0x41
1045543Ssaidi@eecs.umich.edu        0,              // 0x42
1055543Ssaidi@eecs.umich.edu        0,              // 0x43
1065543Ssaidi@eecs.umich.edu        0,              // 0x44
1075543Ssaidi@eecs.umich.edu        0,              // 0x45
1085543Ssaidi@eecs.umich.edu        0,              // 0x46
1095543Ssaidi@eecs.umich.edu        0,              // 0x47
1105543Ssaidi@eecs.umich.edu        0,              // 0x48
1115543Ssaidi@eecs.umich.edu        0,              // 0x49
1125543Ssaidi@eecs.umich.edu        0,              // 0x4a
1135543Ssaidi@eecs.umich.edu        0,              // 0x4b
1145543Ssaidi@eecs.umich.edu        0,              // 0x4c
1155543Ssaidi@eecs.umich.edu        0,              // 0x4d
1165543Ssaidi@eecs.umich.edu        0,              // 0x4e
1175543Ssaidi@eecs.umich.edu        0,              // 0x4f
1185543Ssaidi@eecs.umich.edu        0,              // 0x50
1195543Ssaidi@eecs.umich.edu        0,              // 0x51
1205543Ssaidi@eecs.umich.edu        0,              // 0x52
1215543Ssaidi@eecs.umich.edu        0,              // 0x53
1225543Ssaidi@eecs.umich.edu        0,              // 0x54
1235543Ssaidi@eecs.umich.edu        0,              // 0x55
1245543Ssaidi@eecs.umich.edu        0,              // 0x56
1255543Ssaidi@eecs.umich.edu        0,              // 0x57
1265543Ssaidi@eecs.umich.edu        0,              // 0x58
1275543Ssaidi@eecs.umich.edu        0,              // 0x59
1285543Ssaidi@eecs.umich.edu        0,              // 0x5a
1295543Ssaidi@eecs.umich.edu        0,              // 0x5b
1305543Ssaidi@eecs.umich.edu        0,              // 0x5c
1315543Ssaidi@eecs.umich.edu        0,              // 0x5d
1325543Ssaidi@eecs.umich.edu        0,              // 0x5e
1335543Ssaidi@eecs.umich.edu        0,              // 0x5f
1345543Ssaidi@eecs.umich.edu        0,              // 0x60
1355543Ssaidi@eecs.umich.edu        0,              // 0x61
1365543Ssaidi@eecs.umich.edu        0,              // 0x62
1375543Ssaidi@eecs.umich.edu        0,              // 0x63
1385543Ssaidi@eecs.umich.edu        0,              // 0x64
1395543Ssaidi@eecs.umich.edu        0,              // 0x65
1405543Ssaidi@eecs.umich.edu        0,              // 0x66
1415543Ssaidi@eecs.umich.edu        0,              // 0x67
1425543Ssaidi@eecs.umich.edu        0,              // 0x68
1435543Ssaidi@eecs.umich.edu        0,              // 0x69
1445543Ssaidi@eecs.umich.edu        0,              // 0x6a
1455543Ssaidi@eecs.umich.edu        0,              // 0x6b
1465543Ssaidi@eecs.umich.edu        0,              // 0x6c
1475543Ssaidi@eecs.umich.edu        0,              // 0x6d
1485543Ssaidi@eecs.umich.edu        0,              // 0x6e
1495543Ssaidi@eecs.umich.edu        0,              // 0x6f
1505543Ssaidi@eecs.umich.edu        0,              // 0x70
1515543Ssaidi@eecs.umich.edu        0,              // 0x71
1525543Ssaidi@eecs.umich.edu        0,              // 0x72
1535543Ssaidi@eecs.umich.edu        0,              // 0x73
1545543Ssaidi@eecs.umich.edu        0,              // 0x74
1555543Ssaidi@eecs.umich.edu        0,              // 0x75
1565543Ssaidi@eecs.umich.edu        0,              // 0x76
1575543Ssaidi@eecs.umich.edu        0,              // 0x77
1585543Ssaidi@eecs.umich.edu        0,              // 0x78
1595543Ssaidi@eecs.umich.edu        0,              // 0x79
1605543Ssaidi@eecs.umich.edu        0,              // 0x7a
1615543Ssaidi@eecs.umich.edu        0,              // 0x7b
1625543Ssaidi@eecs.umich.edu        0,              // 0x7c
1635543Ssaidi@eecs.umich.edu        0,              // 0x7d
1645543Ssaidi@eecs.umich.edu        0,              // 0x7e
1655543Ssaidi@eecs.umich.edu        0,              // 0x7f
1662SN/A
1672SN/A        // Unpriviledged PAL instructions
1685543Ssaidi@eecs.umich.edu        "bpt",          // 0x80
1695543Ssaidi@eecs.umich.edu        "bugchk",       // 0x81
1705543Ssaidi@eecs.umich.edu        0,              // 0x82
1715543Ssaidi@eecs.umich.edu        "callsys",      // 0x83
1725543Ssaidi@eecs.umich.edu        0,              // 0x84
1735543Ssaidi@eecs.umich.edu        0,              // 0x85
1745543Ssaidi@eecs.umich.edu        "imb",          // 0x86
1755543Ssaidi@eecs.umich.edu        0,              // 0x87
1765543Ssaidi@eecs.umich.edu        0,              // 0x88
1775543Ssaidi@eecs.umich.edu        0,              // 0x89
1785543Ssaidi@eecs.umich.edu        0,              // 0x8a
1795543Ssaidi@eecs.umich.edu        0,              // 0x8b
1805543Ssaidi@eecs.umich.edu        0,              // 0x8c
1815543Ssaidi@eecs.umich.edu        0,              // 0x8d
1825543Ssaidi@eecs.umich.edu        0,              // 0x8e
1835543Ssaidi@eecs.umich.edu        0,              // 0x8f
1845543Ssaidi@eecs.umich.edu        0,              // 0x90
1855543Ssaidi@eecs.umich.edu        0,              // 0x91
1865543Ssaidi@eecs.umich.edu        "urti",         // 0x92
1875543Ssaidi@eecs.umich.edu        0,              // 0x93
1885543Ssaidi@eecs.umich.edu        0,              // 0x94
1895543Ssaidi@eecs.umich.edu        0,              // 0x95
1905543Ssaidi@eecs.umich.edu        0,              // 0x96
1915543Ssaidi@eecs.umich.edu        0,              // 0x97
1925543Ssaidi@eecs.umich.edu        0,              // 0x98
1935543Ssaidi@eecs.umich.edu        0,              // 0x99
1945543Ssaidi@eecs.umich.edu        0,              // 0x9a
1955543Ssaidi@eecs.umich.edu        0,              // 0x9b
1965543Ssaidi@eecs.umich.edu        0,              // 0x9c
1975543Ssaidi@eecs.umich.edu        0,              // 0x9d
1985543Ssaidi@eecs.umich.edu        "rdunique",     // 0x9e
1995543Ssaidi@eecs.umich.edu        "wrunique",     // 0x9f
2005543Ssaidi@eecs.umich.edu        0,              // 0xa0
2015543Ssaidi@eecs.umich.edu        0,              // 0xa1
2025543Ssaidi@eecs.umich.edu        0,              // 0xa2
2035543Ssaidi@eecs.umich.edu        0,              // 0xa3
2045543Ssaidi@eecs.umich.edu        0,              // 0xa4
2055543Ssaidi@eecs.umich.edu        0,              // 0xa5
2065543Ssaidi@eecs.umich.edu        0,              // 0xa6
2075543Ssaidi@eecs.umich.edu        0,              // 0xa7
2085543Ssaidi@eecs.umich.edu        0,              // 0xa8
2095543Ssaidi@eecs.umich.edu        0,              // 0xa9
2105543Ssaidi@eecs.umich.edu        "gentrap",      // 0xaa
2115543Ssaidi@eecs.umich.edu        0,              // 0xab
2125543Ssaidi@eecs.umich.edu        0,              // 0xac
2135543Ssaidi@eecs.umich.edu        0,              // 0xad
2145543Ssaidi@eecs.umich.edu        "clrfen",       // 0xae
2155543Ssaidi@eecs.umich.edu        0,              // 0xaf
2165543Ssaidi@eecs.umich.edu        0,              // 0xb0
2175543Ssaidi@eecs.umich.edu        0,              // 0xb1
2185543Ssaidi@eecs.umich.edu        0,              // 0xb2
2195543Ssaidi@eecs.umich.edu        0,              // 0xb3
2205543Ssaidi@eecs.umich.edu        0,              // 0xb4
2215543Ssaidi@eecs.umich.edu        0,              // 0xb5
2225543Ssaidi@eecs.umich.edu        0,              // 0xb6
2235543Ssaidi@eecs.umich.edu        0,              // 0xb7
2245543Ssaidi@eecs.umich.edu        0,              // 0xb8
2255543Ssaidi@eecs.umich.edu        0,              // 0xb9
2265543Ssaidi@eecs.umich.edu        0,              // 0xba
2275543Ssaidi@eecs.umich.edu        0,              // 0xbb
2285543Ssaidi@eecs.umich.edu        0,              // 0xbc
2295543Ssaidi@eecs.umich.edu        0,              // 0xbd
2305543Ssaidi@eecs.umich.edu        "nphalt",       // 0xbe
2315543Ssaidi@eecs.umich.edu        "copypal",      // 0xbf
2322SN/A    };
2332SN/A
2342SN/A    if (index > NumCodes || index < 0)
2352SN/A        return 0;
2362SN/A
2372SN/A    return strings[index];
2382SN/A}
239