| /* | |
| * Copyright (c) 2003-2005 The Regents of The University of Michigan | |
| * All rights reserved. | |
| * | |
| * Redistribution and use in source and binary forms, with or without | |
| * modification, are permitted provided that the following conditions are | |
| * met: redistributions of source code must retain the above copyright | |
| * notice, this list of conditions and the following disclaimer; | |
| * redistributions in binary form must reproduce the above copyright | |
| * notice, this list of conditions and the following disclaimer in the | |
| * documentation and/or other materials provided with the distribution; | |
| * neither the name of the copyright holders nor the names of its | |
| * contributors may be used to endorse or promote products derived from | |
| * this software without specific prior written permission. | |
| * | |
| * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | |
| * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | |
| * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | |
| * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | |
| * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
| * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | |
| * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
| * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
| * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |
| * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
| * | |
| * Authors: Nathan Binkert | |
| */ | |
| #include "arch/alpha/osfpal.hh" | |
| const char * | |
| PAL::name(int index) | |
| { | |
| static const char *strings[PAL::NumCodes] = { | |
| // Priviledged PAL instructions | |
| "halt", // 0x00 | |
| "cflush", // 0x01 | |
| "draina", // 0x02 | |
| 0, // 0x03 | |
| 0, // 0x04 | |
| 0, // 0x05 | |
| 0, // 0x06 | |
| 0, // 0x07 | |
| 0, // 0x08 | |
| "cserve", // 0x09 | |
| "swppal", // 0x0a | |
| 0, // 0x0b | |
| 0, // 0x0c | |
| "wripir", // 0x0d | |
| 0, // 0x0e | |
| 0, // 0x0f | |
| "rdmces", // 0x10 | |
| "wrmces", // 0x11 | |
| 0, // 0x12 | |
| 0, // 0x13 | |
| 0, // 0x14 | |
| 0, // 0x15 | |
| 0, // 0x16 | |
| 0, // 0x17 | |
| 0, // 0x18 | |
| 0, // 0x19 | |
| 0, // 0x1a | |
| 0, // 0x1b | |
| 0, // 0x1c | |
| 0, // 0x1d | |
| 0, // 0x1e | |
| 0, // 0x1f | |
| 0, // 0x20 | |
| 0, // 0x21 | |
| 0, // 0x22 | |
| 0, // 0x23 | |
| 0, // 0x24 | |
| 0, // 0x25 | |
| 0, // 0x26 | |
| 0, // 0x27 | |
| 0, // 0x28 | |
| 0, // 0x29 | |
| 0, // 0x2a | |
| "wrfen", // 0x2b | |
| 0, // 0x2c | |
| "wrvptptr", // 0x2d | |
| 0, // 0x2e | |
| 0, // 0x2f | |
| "swpctx", // 0x30 | |
| "wrval", // 0x31 | |
| "rdval", // 0x32 | |
| "tbi", // 0x33 | |
| "wrent", // 0x34 | |
| "swpipl", // 0x35 | |
| "rdps", // 0x36 | |
| "wrkgp", // 0x37 | |
| "wrusp", // 0x38 | |
| "wrperfmon", // 0x39 | |
| "rdusp", // 0x3a | |
| 0, // 0x3b | |
| "whami", // 0x3c | |
| "retsys", // 0x3d | |
| "wtint", // 0x3e | |
| "rti", // 0x3f | |
| 0, // 0x40 | |
| 0, // 0x41 | |
| 0, // 0x42 | |
| 0, // 0x43 | |
| 0, // 0x44 | |
| 0, // 0x45 | |
| 0, // 0x46 | |
| 0, // 0x47 | |
| 0, // 0x48 | |
| 0, // 0x49 | |
| 0, // 0x4a | |
| 0, // 0x4b | |
| 0, // 0x4c | |
| 0, // 0x4d | |
| 0, // 0x4e | |
| 0, // 0x4f | |
| 0, // 0x50 | |
| 0, // 0x51 | |
| 0, // 0x52 | |
| 0, // 0x53 | |
| 0, // 0x54 | |
| 0, // 0x55 | |
| 0, // 0x56 | |
| 0, // 0x57 | |
| 0, // 0x58 | |
| 0, // 0x59 | |
| 0, // 0x5a | |
| 0, // 0x5b | |
| 0, // 0x5c | |
| 0, // 0x5d | |
| 0, // 0x5e | |
| 0, // 0x5f | |
| 0, // 0x60 | |
| 0, // 0x61 | |
| 0, // 0x62 | |
| 0, // 0x63 | |
| 0, // 0x64 | |
| 0, // 0x65 | |
| 0, // 0x66 | |
| 0, // 0x67 | |
| 0, // 0x68 | |
| 0, // 0x69 | |
| 0, // 0x6a | |
| 0, // 0x6b | |
| 0, // 0x6c | |
| 0, // 0x6d | |
| 0, // 0x6e | |
| 0, // 0x6f | |
| 0, // 0x70 | |
| 0, // 0x71 | |
| 0, // 0x72 | |
| 0, // 0x73 | |
| 0, // 0x74 | |
| 0, // 0x75 | |
| 0, // 0x76 | |
| 0, // 0x77 | |
| 0, // 0x78 | |
| 0, // 0x79 | |
| 0, // 0x7a | |
| 0, // 0x7b | |
| 0, // 0x7c | |
| 0, // 0x7d | |
| 0, // 0x7e | |
| 0, // 0x7f | |
| // Unpriviledged PAL instructions | |
| "bpt", // 0x80 | |
| "bugchk", // 0x81 | |
| 0, // 0x82 | |
| "callsys", // 0x83 | |
| 0, // 0x84 | |
| 0, // 0x85 | |
| "imb", // 0x86 | |
| 0, // 0x87 | |
| 0, // 0x88 | |
| 0, // 0x89 | |
| 0, // 0x8a | |
| 0, // 0x8b | |
| 0, // 0x8c | |
| 0, // 0x8d | |
| 0, // 0x8e | |
| 0, // 0x8f | |
| 0, // 0x90 | |
| 0, // 0x91 | |
| "urti", // 0x92 | |
| 0, // 0x93 | |
| 0, // 0x94 | |
| 0, // 0x95 | |
| 0, // 0x96 | |
| 0, // 0x97 | |
| 0, // 0x98 | |
| 0, // 0x99 | |
| 0, // 0x9a | |
| 0, // 0x9b | |
| 0, // 0x9c | |
| 0, // 0x9d | |
| "rdunique", // 0x9e | |
| "wrunique", // 0x9f | |
| 0, // 0xa0 | |
| 0, // 0xa1 | |
| 0, // 0xa2 | |
| 0, // 0xa3 | |
| 0, // 0xa4 | |
| 0, // 0xa5 | |
| 0, // 0xa6 | |
| 0, // 0xa7 | |
| 0, // 0xa8 | |
| 0, // 0xa9 | |
| "gentrap", // 0xaa | |
| 0, // 0xab | |
| 0, // 0xac | |
| 0, // 0xad | |
| "clrfen", // 0xae | |
| 0, // 0xaf | |
| 0, // 0xb0 | |
| 0, // 0xb1 | |
| 0, // 0xb2 | |
| 0, // 0xb3 | |
| 0, // 0xb4 | |
| 0, // 0xb5 | |
| 0, // 0xb6 | |
| 0, // 0xb7 | |
| 0, // 0xb8 | |
| 0, // 0xb9 | |
| 0, // 0xba | |
| 0, // 0xbb | |
| 0, // 0xbc | |
| 0, // 0xbd | |
| "nphalt", // 0xbe | |
| "copypal", // 0xbf | |
| #if 0 | |
| 0, // 0xc0 | |
| 0, // 0xc1 | |
| 0, // 0xc2 | |
| 0, // 0xc3 | |
| 0, // 0xc4 | |
| 0, // 0xc5 | |
| 0, // 0xc6 | |
| 0, // 0xc7 | |
| 0, // 0xc8 | |
| 0, // 0xc9 | |
| 0, // 0xca | |
| 0, // 0xcb | |
| 0, // 0xcc | |
| 0, // 0xcd | |
| 0, // 0xce | |
| 0, // 0xcf | |
| 0, // 0xd0 | |
| 0, // 0xd1 | |
| 0, // 0xd2 | |
| 0, // 0xd3 | |
| 0, // 0xd4 | |
| 0, // 0xd5 | |
| 0, // 0xd6 | |
| 0, // 0xd7 | |
| 0, // 0xd8 | |
| 0, // 0xd9 | |
| 0, // 0xda | |
| 0, // 0xdb | |
| 0, // 0xdc | |
| 0, // 0xdd | |
| 0, // 0xde | |
| 0, // 0xdf | |
| 0, // 0xe0 | |
| 0, // 0xe1 | |
| 0, // 0xe2 | |
| 0, // 0xe3 | |
| 0, // 0xe4 | |
| 0, // 0xe5 | |
| 0, // 0xe6 | |
| 0, // 0xe7 | |
| 0, // 0xe8 | |
| 0, // 0xe9 | |
| 0, // 0xea | |
| 0, // 0xeb | |
| 0, // 0xec | |
| 0, // 0xed | |
| 0, // 0xee | |
| 0, // 0xef | |
| 0, // 0xf0 | |
| 0, // 0xf1 | |
| 0, // 0xf2 | |
| 0, // 0xf3 | |
| 0, // 0xf4 | |
| 0, // 0xf5 | |
| 0, // 0xf6 | |
| 0, // 0xf7 | |
| 0, // 0xf8 | |
| 0, // 0xf9 | |
| 0, // 0xfa | |
| 0, // 0xfb | |
| 0, // 0xfc | |
| 0, // 0xfd | |
| 0, // 0xfe | |
| 0 // 0xff | |
| #endif | |
| }; | |
| if (index > NumCodes || index < 0) | |
| return 0; | |
| return strings[index]; | |
| } |