| 1 | /* Instruction opcode header for frv.
 | 
|---|
| 2 | 
 | 
|---|
| 3 | THIS FILE IS MACHINE GENERATED WITH CGEN.
 | 
|---|
| 4 | 
 | 
|---|
| 5 | Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
 | 
|---|
| 6 | 
 | 
|---|
| 7 | This file is part of the GNU Binutils and/or GDB, the GNU debugger.
 | 
|---|
| 8 | 
 | 
|---|
| 9 | This program is free software; you can redistribute it and/or modify
 | 
|---|
| 10 | it under the terms of the GNU General Public License as published by
 | 
|---|
| 11 | the Free Software Foundation; either version 2, or (at your option)
 | 
|---|
| 12 | any later version.
 | 
|---|
| 13 | 
 | 
|---|
| 14 | This program is distributed in the hope that it will be useful,
 | 
|---|
| 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
|---|
| 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
|---|
| 17 | GNU General Public License for more details.
 | 
|---|
| 18 | 
 | 
|---|
| 19 | You should have received a copy of the GNU General Public License along
 | 
|---|
| 20 | with this program; if not, write to the Free Software Foundation, Inc.,
 | 
|---|
| 21 | 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 | 
|---|
| 22 | 
 | 
|---|
| 23 | */
 | 
|---|
| 24 | 
 | 
|---|
| 25 | #ifndef FRV_OPC_H
 | 
|---|
| 26 | #define FRV_OPC_H
 | 
|---|
| 27 | 
 | 
|---|
| 28 | /* -- opc.h */
 | 
|---|
| 29 | 
 | 
|---|
| 30 | #undef CGEN_DIS_HASH_SIZE
 | 
|---|
| 31 | #define CGEN_DIS_HASH_SIZE 128
 | 
|---|
| 32 | #undef CGEN_DIS_HASH
 | 
|---|
| 33 | #define CGEN_DIS_HASH(buffer, value) (((value) >> 18) & 127)
 | 
|---|
| 34 | 
 | 
|---|
| 35 | /* Vliw support.  */
 | 
|---|
| 36 | #define FRV_VLIW_SIZE 4 /* fr500 has largest vliw size of 4.  */
 | 
|---|
| 37 | typedef CGEN_ATTR_VALUE_TYPE VLIW_COMBO[FRV_VLIW_SIZE];
 | 
|---|
| 38 | 
 | 
|---|
| 39 | typedef struct
 | 
|---|
| 40 | {
 | 
|---|
| 41 |   int                   next_slot;
 | 
|---|
| 42 |   int                   constraint_violation;
 | 
|---|
| 43 |   unsigned long         mach;
 | 
|---|
| 44 |   unsigned long         elf_flags;
 | 
|---|
| 45 |   CGEN_ATTR_VALUE_TYPE *unit_mapping;
 | 
|---|
| 46 |   VLIW_COMBO           *current_vliw;
 | 
|---|
| 47 |   CGEN_ATTR_VALUE_TYPE  major[FRV_VLIW_SIZE];
 | 
|---|
| 48 | } FRV_VLIW;
 | 
|---|
| 49 | 
 | 
|---|
| 50 | int frv_is_branch_major PARAMS ((CGEN_ATTR_VALUE_TYPE, unsigned long));
 | 
|---|
| 51 | int frv_is_float_major  PARAMS ((CGEN_ATTR_VALUE_TYPE, unsigned long));
 | 
|---|
| 52 | int frv_is_media_major  PARAMS ((CGEN_ATTR_VALUE_TYPE, unsigned long));
 | 
|---|
| 53 | int frv_is_branch_insn  PARAMS ((const CGEN_INSN *));
 | 
|---|
| 54 | int frv_is_float_insn   PARAMS ((const CGEN_INSN *));
 | 
|---|
| 55 | int frv_is_media_insn   PARAMS ((const CGEN_INSN *));
 | 
|---|
| 56 | void frv_vliw_reset     PARAMS ((FRV_VLIW *, unsigned long mach, unsigned long elf_flags));
 | 
|---|
| 57 | int frv_vliw_add_insn   PARAMS ((FRV_VLIW *, const CGEN_INSN *));
 | 
|---|
| 58 | int spr_valid           PARAMS ((long));
 | 
|---|
| 59 | /* -- */
 | 
|---|
| 60 | /* Enum declaration for frv instruction types.  */
 | 
|---|
| 61 | typedef enum cgen_insn_type {
 | 
|---|
| 62 |   FRV_INSN_INVALID, FRV_INSN_ADD, FRV_INSN_SUB, FRV_INSN_AND
 | 
|---|
| 63 |  , FRV_INSN_OR, FRV_INSN_XOR, FRV_INSN_NOT, FRV_INSN_SDIV
 | 
|---|
| 64 |  , FRV_INSN_NSDIV, FRV_INSN_UDIV, FRV_INSN_NUDIV, FRV_INSN_SMUL
 | 
|---|
| 65 |  , FRV_INSN_UMUL, FRV_INSN_SLL, FRV_INSN_SRL, FRV_INSN_SRA
 | 
|---|
| 66 |  , FRV_INSN_SCAN, FRV_INSN_CADD, FRV_INSN_CSUB, FRV_INSN_CAND
 | 
|---|
| 67 |  , FRV_INSN_COR, FRV_INSN_CXOR, FRV_INSN_CNOT, FRV_INSN_CSMUL
 | 
|---|
| 68 |  , FRV_INSN_CSDIV, FRV_INSN_CUDIV, FRV_INSN_CSLL, FRV_INSN_CSRL
 | 
|---|
| 69 |  , FRV_INSN_CSRA, FRV_INSN_CSCAN, FRV_INSN_ADDCC, FRV_INSN_SUBCC
 | 
|---|
| 70 |  , FRV_INSN_ANDCC, FRV_INSN_ORCC, FRV_INSN_XORCC, FRV_INSN_SLLCC
 | 
|---|
| 71 |  , FRV_INSN_SRLCC, FRV_INSN_SRACC, FRV_INSN_SMULCC, FRV_INSN_UMULCC
 | 
|---|
| 72 |  , FRV_INSN_CADDCC, FRV_INSN_CSUBCC, FRV_INSN_CSMULCC, FRV_INSN_CANDCC
 | 
|---|
| 73 |  , FRV_INSN_CORCC, FRV_INSN_CXORCC, FRV_INSN_CSLLCC, FRV_INSN_CSRLCC
 | 
|---|
| 74 |  , FRV_INSN_CSRACC, FRV_INSN_ADDX, FRV_INSN_SUBX, FRV_INSN_ADDXCC
 | 
|---|
| 75 |  , FRV_INSN_SUBXCC, FRV_INSN_ADDI, FRV_INSN_SUBI, FRV_INSN_ANDI
 | 
|---|
| 76 |  , FRV_INSN_ORI, FRV_INSN_XORI, FRV_INSN_SDIVI, FRV_INSN_NSDIVI
 | 
|---|
| 77 |  , FRV_INSN_UDIVI, FRV_INSN_NUDIVI, FRV_INSN_SMULI, FRV_INSN_UMULI
 | 
|---|
| 78 |  , FRV_INSN_SLLI, FRV_INSN_SRLI, FRV_INSN_SRAI, FRV_INSN_SCANI
 | 
|---|
| 79 |  , FRV_INSN_ADDICC, FRV_INSN_SUBICC, FRV_INSN_ANDICC, FRV_INSN_ORICC
 | 
|---|
| 80 |  , FRV_INSN_XORICC, FRV_INSN_SMULICC, FRV_INSN_UMULICC, FRV_INSN_SLLICC
 | 
|---|
| 81 |  , FRV_INSN_SRLICC, FRV_INSN_SRAICC, FRV_INSN_ADDXI, FRV_INSN_SUBXI
 | 
|---|
| 82 |  , FRV_INSN_ADDXICC, FRV_INSN_SUBXICC, FRV_INSN_CMPB, FRV_INSN_CMPBA
 | 
|---|
| 83 |  , FRV_INSN_SETLO, FRV_INSN_SETHI, FRV_INSN_SETLOS, FRV_INSN_LDSB
 | 
|---|
| 84 |  , FRV_INSN_LDUB, FRV_INSN_LDSH, FRV_INSN_LDUH, FRV_INSN_LD
 | 
|---|
| 85 |  , FRV_INSN_LDBF, FRV_INSN_LDHF, FRV_INSN_LDF, FRV_INSN_LDC
 | 
|---|
| 86 |  , FRV_INSN_NLDSB, FRV_INSN_NLDUB, FRV_INSN_NLDSH, FRV_INSN_NLDUH
 | 
|---|
| 87 |  , FRV_INSN_NLD, FRV_INSN_NLDBF, FRV_INSN_NLDHF, FRV_INSN_NLDF
 | 
|---|
| 88 |  , FRV_INSN_LDD, FRV_INSN_LDDF, FRV_INSN_LDDC, FRV_INSN_NLDD
 | 
|---|
| 89 |  , FRV_INSN_NLDDF, FRV_INSN_LDQ, FRV_INSN_LDQF, FRV_INSN_LDQC
 | 
|---|
| 90 |  , FRV_INSN_NLDQ, FRV_INSN_NLDQF, FRV_INSN_LDSBU, FRV_INSN_LDUBU
 | 
|---|
| 91 |  , FRV_INSN_LDSHU, FRV_INSN_LDUHU, FRV_INSN_LDU, FRV_INSN_NLDSBU
 | 
|---|
| 92 |  , FRV_INSN_NLDUBU, FRV_INSN_NLDSHU, FRV_INSN_NLDUHU, FRV_INSN_NLDU
 | 
|---|
| 93 |  , FRV_INSN_LDBFU, FRV_INSN_LDHFU, FRV_INSN_LDFU, FRV_INSN_LDCU
 | 
|---|
| 94 |  , FRV_INSN_NLDBFU, FRV_INSN_NLDHFU, FRV_INSN_NLDFU, FRV_INSN_LDDU
 | 
|---|
| 95 |  , FRV_INSN_NLDDU, FRV_INSN_LDDFU, FRV_INSN_LDDCU, FRV_INSN_NLDDFU
 | 
|---|
| 96 |  , FRV_INSN_LDQU, FRV_INSN_NLDQU, FRV_INSN_LDQFU, FRV_INSN_LDQCU
 | 
|---|
| 97 |  , FRV_INSN_NLDQFU, FRV_INSN_LDSBI, FRV_INSN_LDSHI, FRV_INSN_LDI
 | 
|---|
| 98 |  , FRV_INSN_LDUBI, FRV_INSN_LDUHI, FRV_INSN_LDBFI, FRV_INSN_LDHFI
 | 
|---|
| 99 |  , FRV_INSN_LDFI, FRV_INSN_NLDSBI, FRV_INSN_NLDUBI, FRV_INSN_NLDSHI
 | 
|---|
| 100 |  , FRV_INSN_NLDUHI, FRV_INSN_NLDI, FRV_INSN_NLDBFI, FRV_INSN_NLDHFI
 | 
|---|
| 101 |  , FRV_INSN_NLDFI, FRV_INSN_LDDI, FRV_INSN_LDDFI, FRV_INSN_NLDDI
 | 
|---|
| 102 |  , FRV_INSN_NLDDFI, FRV_INSN_LDQI, FRV_INSN_LDQFI, FRV_INSN_NLDQI
 | 
|---|
| 103 |  , FRV_INSN_NLDQFI, FRV_INSN_STB, FRV_INSN_STH, FRV_INSN_ST
 | 
|---|
| 104 |  , FRV_INSN_STBF, FRV_INSN_STHF, FRV_INSN_STF, FRV_INSN_STC
 | 
|---|
| 105 |  , FRV_INSN_RSTB, FRV_INSN_RSTH, FRV_INSN_RST, FRV_INSN_RSTBF
 | 
|---|
| 106 |  , FRV_INSN_RSTHF, FRV_INSN_RSTF, FRV_INSN_STD, FRV_INSN_STDF
 | 
|---|
| 107 |  , FRV_INSN_STDC, FRV_INSN_RSTD, FRV_INSN_RSTDF, FRV_INSN_STQ
 | 
|---|
| 108 |  , FRV_INSN_STQF, FRV_INSN_STQC, FRV_INSN_RSTQ, FRV_INSN_RSTQF
 | 
|---|
| 109 |  , FRV_INSN_STBU, FRV_INSN_STHU, FRV_INSN_STU, FRV_INSN_STBFU
 | 
|---|
| 110 |  , FRV_INSN_STHFU, FRV_INSN_STFU, FRV_INSN_STCU, FRV_INSN_STDU
 | 
|---|
| 111 |  , FRV_INSN_STDFU, FRV_INSN_STDCU, FRV_INSN_STQU, FRV_INSN_STQFU
 | 
|---|
| 112 |  , FRV_INSN_STQCU, FRV_INSN_CLDSB, FRV_INSN_CLDUB, FRV_INSN_CLDSH
 | 
|---|
| 113 |  , FRV_INSN_CLDUH, FRV_INSN_CLD, FRV_INSN_CLDBF, FRV_INSN_CLDHF
 | 
|---|
| 114 |  , FRV_INSN_CLDF, FRV_INSN_CLDD, FRV_INSN_CLDDF, FRV_INSN_CLDQ
 | 
|---|
| 115 |  , FRV_INSN_CLDSBU, FRV_INSN_CLDUBU, FRV_INSN_CLDSHU, FRV_INSN_CLDUHU
 | 
|---|
| 116 |  , FRV_INSN_CLDU, FRV_INSN_CLDBFU, FRV_INSN_CLDHFU, FRV_INSN_CLDFU
 | 
|---|
| 117 |  , FRV_INSN_CLDDU, FRV_INSN_CLDDFU, FRV_INSN_CLDQU, FRV_INSN_CSTB
 | 
|---|
| 118 |  , FRV_INSN_CSTH, FRV_INSN_CST, FRV_INSN_CSTBF, FRV_INSN_CSTHF
 | 
|---|
| 119 |  , FRV_INSN_CSTF, FRV_INSN_CSTD, FRV_INSN_CSTDF, FRV_INSN_CSTQ
 | 
|---|
| 120 |  , FRV_INSN_CSTBU, FRV_INSN_CSTHU, FRV_INSN_CSTU, FRV_INSN_CSTBFU
 | 
|---|
| 121 |  , FRV_INSN_CSTHFU, FRV_INSN_CSTFU, FRV_INSN_CSTDU, FRV_INSN_CSTDFU
 | 
|---|
| 122 |  , FRV_INSN_STBI, FRV_INSN_STHI, FRV_INSN_STI, FRV_INSN_STBFI
 | 
|---|
| 123 |  , FRV_INSN_STHFI, FRV_INSN_STFI, FRV_INSN_STDI, FRV_INSN_STDFI
 | 
|---|
| 124 |  , FRV_INSN_STQI, FRV_INSN_STQFI, FRV_INSN_SWAP, FRV_INSN_SWAPI
 | 
|---|
| 125 |  , FRV_INSN_CSWAP, FRV_INSN_MOVGF, FRV_INSN_MOVFG, FRV_INSN_MOVGFD
 | 
|---|
| 126 |  , FRV_INSN_MOVFGD, FRV_INSN_MOVGFQ, FRV_INSN_MOVFGQ, FRV_INSN_CMOVGF
 | 
|---|
| 127 |  , FRV_INSN_CMOVFG, FRV_INSN_CMOVGFD, FRV_INSN_CMOVFGD, FRV_INSN_MOVGS
 | 
|---|
| 128 |  , FRV_INSN_MOVSG, FRV_INSN_BRA, FRV_INSN_BNO, FRV_INSN_BEQ
 | 
|---|
| 129 |  , FRV_INSN_BNE, FRV_INSN_BLE, FRV_INSN_BGT, FRV_INSN_BLT
 | 
|---|
| 130 |  , FRV_INSN_BGE, FRV_INSN_BLS, FRV_INSN_BHI, FRV_INSN_BC
 | 
|---|
| 131 |  , FRV_INSN_BNC, FRV_INSN_BN, FRV_INSN_BP, FRV_INSN_BV
 | 
|---|
| 132 |  , FRV_INSN_BNV, FRV_INSN_FBRA, FRV_INSN_FBNO, FRV_INSN_FBNE
 | 
|---|
| 133 |  , FRV_INSN_FBEQ, FRV_INSN_FBLG, FRV_INSN_FBUE, FRV_INSN_FBUL
 | 
|---|
| 134 |  , FRV_INSN_FBGE, FRV_INSN_FBLT, FRV_INSN_FBUGE, FRV_INSN_FBUG
 | 
|---|
| 135 |  , FRV_INSN_FBLE, FRV_INSN_FBGT, FRV_INSN_FBULE, FRV_INSN_FBU
 | 
|---|
| 136 |  , FRV_INSN_FBO, FRV_INSN_BCTRLR, FRV_INSN_BRALR, FRV_INSN_BNOLR
 | 
|---|
| 137 |  , FRV_INSN_BEQLR, FRV_INSN_BNELR, FRV_INSN_BLELR, FRV_INSN_BGTLR
 | 
|---|
| 138 |  , FRV_INSN_BLTLR, FRV_INSN_BGELR, FRV_INSN_BLSLR, FRV_INSN_BHILR
 | 
|---|
| 139 |  , FRV_INSN_BCLR, FRV_INSN_BNCLR, FRV_INSN_BNLR, FRV_INSN_BPLR
 | 
|---|
| 140 |  , FRV_INSN_BVLR, FRV_INSN_BNVLR, FRV_INSN_FBRALR, FRV_INSN_FBNOLR
 | 
|---|
| 141 |  , FRV_INSN_FBEQLR, FRV_INSN_FBNELR, FRV_INSN_FBLGLR, FRV_INSN_FBUELR
 | 
|---|
| 142 |  , FRV_INSN_FBULLR, FRV_INSN_FBGELR, FRV_INSN_FBLTLR, FRV_INSN_FBUGELR
 | 
|---|
| 143 |  , FRV_INSN_FBUGLR, FRV_INSN_FBLELR, FRV_INSN_FBGTLR, FRV_INSN_FBULELR
 | 
|---|
| 144 |  , FRV_INSN_FBULR, FRV_INSN_FBOLR, FRV_INSN_BCRALR, FRV_INSN_BCNOLR
 | 
|---|
| 145 |  , FRV_INSN_BCEQLR, FRV_INSN_BCNELR, FRV_INSN_BCLELR, FRV_INSN_BCGTLR
 | 
|---|
| 146 |  , FRV_INSN_BCLTLR, FRV_INSN_BCGELR, FRV_INSN_BCLSLR, FRV_INSN_BCHILR
 | 
|---|
| 147 |  , FRV_INSN_BCCLR, FRV_INSN_BCNCLR, FRV_INSN_BCNLR, FRV_INSN_BCPLR
 | 
|---|
| 148 |  , FRV_INSN_BCVLR, FRV_INSN_BCNVLR, FRV_INSN_FCBRALR, FRV_INSN_FCBNOLR
 | 
|---|
| 149 |  , FRV_INSN_FCBEQLR, FRV_INSN_FCBNELR, FRV_INSN_FCBLGLR, FRV_INSN_FCBUELR
 | 
|---|
| 150 |  , FRV_INSN_FCBULLR, FRV_INSN_FCBGELR, FRV_INSN_FCBLTLR, FRV_INSN_FCBUGELR
 | 
|---|
| 151 |  , FRV_INSN_FCBUGLR, FRV_INSN_FCBLELR, FRV_INSN_FCBGTLR, FRV_INSN_FCBULELR
 | 
|---|
| 152 |  , FRV_INSN_FCBULR, FRV_INSN_FCBOLR, FRV_INSN_JMPL, FRV_INSN_CALLL
 | 
|---|
| 153 |  , FRV_INSN_JMPIL, FRV_INSN_CALLIL, FRV_INSN_CALL, FRV_INSN_RETT
 | 
|---|
| 154 |  , FRV_INSN_REI, FRV_INSN_TRA, FRV_INSN_TNO, FRV_INSN_TEQ
 | 
|---|
| 155 |  , FRV_INSN_TNE, FRV_INSN_TLE, FRV_INSN_TGT, FRV_INSN_TLT
 | 
|---|
| 156 |  , FRV_INSN_TGE, FRV_INSN_TLS, FRV_INSN_THI, FRV_INSN_TC
 | 
|---|
| 157 |  , FRV_INSN_TNC, FRV_INSN_TN, FRV_INSN_TP, FRV_INSN_TV
 | 
|---|
| 158 |  , FRV_INSN_TNV, FRV_INSN_FTRA, FRV_INSN_FTNO, FRV_INSN_FTNE
 | 
|---|
| 159 |  , FRV_INSN_FTEQ, FRV_INSN_FTLG, FRV_INSN_FTUE, FRV_INSN_FTUL
 | 
|---|
| 160 |  , FRV_INSN_FTGE, FRV_INSN_FTLT, FRV_INSN_FTUGE, FRV_INSN_FTUG
 | 
|---|
| 161 |  , FRV_INSN_FTLE, FRV_INSN_FTGT, FRV_INSN_FTULE, FRV_INSN_FTU
 | 
|---|
| 162 |  , FRV_INSN_FTO, FRV_INSN_TIRA, FRV_INSN_TINO, FRV_INSN_TIEQ
 | 
|---|
| 163 |  , FRV_INSN_TINE, FRV_INSN_TILE, FRV_INSN_TIGT, FRV_INSN_TILT
 | 
|---|
| 164 |  , FRV_INSN_TIGE, FRV_INSN_TILS, FRV_INSN_TIHI, FRV_INSN_TIC
 | 
|---|
| 165 |  , FRV_INSN_TINC, FRV_INSN_TIN, FRV_INSN_TIP, FRV_INSN_TIV
 | 
|---|
| 166 |  , FRV_INSN_TINV, FRV_INSN_FTIRA, FRV_INSN_FTINO, FRV_INSN_FTINE
 | 
|---|
| 167 |  , FRV_INSN_FTIEQ, FRV_INSN_FTILG, FRV_INSN_FTIUE, FRV_INSN_FTIUL
 | 
|---|
| 168 |  , FRV_INSN_FTIGE, FRV_INSN_FTILT, FRV_INSN_FTIUGE, FRV_INSN_FTIUG
 | 
|---|
| 169 |  , FRV_INSN_FTILE, FRV_INSN_FTIGT, FRV_INSN_FTIULE, FRV_INSN_FTIU
 | 
|---|
| 170 |  , FRV_INSN_FTIO, FRV_INSN_BREAK, FRV_INSN_MTRAP, FRV_INSN_ANDCR
 | 
|---|
| 171 |  , FRV_INSN_ORCR, FRV_INSN_XORCR, FRV_INSN_NANDCR, FRV_INSN_NORCR
 | 
|---|
| 172 |  , FRV_INSN_ANDNCR, FRV_INSN_ORNCR, FRV_INSN_NANDNCR, FRV_INSN_NORNCR
 | 
|---|
| 173 |  , FRV_INSN_NOTCR, FRV_INSN_CKRA, FRV_INSN_CKNO, FRV_INSN_CKEQ
 | 
|---|
| 174 |  , FRV_INSN_CKNE, FRV_INSN_CKLE, FRV_INSN_CKGT, FRV_INSN_CKLT
 | 
|---|
| 175 |  , FRV_INSN_CKGE, FRV_INSN_CKLS, FRV_INSN_CKHI, FRV_INSN_CKC
 | 
|---|
| 176 |  , FRV_INSN_CKNC, FRV_INSN_CKN, FRV_INSN_CKP, FRV_INSN_CKV
 | 
|---|
| 177 |  , FRV_INSN_CKNV, FRV_INSN_FCKRA, FRV_INSN_FCKNO, FRV_INSN_FCKNE
 | 
|---|
| 178 |  , FRV_INSN_FCKEQ, FRV_INSN_FCKLG, FRV_INSN_FCKUE, FRV_INSN_FCKUL
 | 
|---|
| 179 |  , FRV_INSN_FCKGE, FRV_INSN_FCKLT, FRV_INSN_FCKUGE, FRV_INSN_FCKUG
 | 
|---|
| 180 |  , FRV_INSN_FCKLE, FRV_INSN_FCKGT, FRV_INSN_FCKULE, FRV_INSN_FCKU
 | 
|---|
| 181 |  , FRV_INSN_FCKO, FRV_INSN_CCKRA, FRV_INSN_CCKNO, FRV_INSN_CCKEQ
 | 
|---|
| 182 |  , FRV_INSN_CCKNE, FRV_INSN_CCKLE, FRV_INSN_CCKGT, FRV_INSN_CCKLT
 | 
|---|
| 183 |  , FRV_INSN_CCKGE, FRV_INSN_CCKLS, FRV_INSN_CCKHI, FRV_INSN_CCKC
 | 
|---|
| 184 |  , FRV_INSN_CCKNC, FRV_INSN_CCKN, FRV_INSN_CCKP, FRV_INSN_CCKV
 | 
|---|
| 185 |  , FRV_INSN_CCKNV, FRV_INSN_CFCKRA, FRV_INSN_CFCKNO, FRV_INSN_CFCKNE
 | 
|---|
| 186 |  , FRV_INSN_CFCKEQ, FRV_INSN_CFCKLG, FRV_INSN_CFCKUE, FRV_INSN_CFCKUL
 | 
|---|
| 187 |  , FRV_INSN_CFCKGE, FRV_INSN_CFCKLT, FRV_INSN_CFCKUGE, FRV_INSN_CFCKUG
 | 
|---|
| 188 |  , FRV_INSN_CFCKLE, FRV_INSN_CFCKGT, FRV_INSN_CFCKULE, FRV_INSN_CFCKU
 | 
|---|
| 189 |  , FRV_INSN_CFCKO, FRV_INSN_CJMPL, FRV_INSN_CCALLL, FRV_INSN_ICI
 | 
|---|
| 190 |  , FRV_INSN_DCI, FRV_INSN_ICEI, FRV_INSN_DCEI, FRV_INSN_DCF
 | 
|---|
| 191 |  , FRV_INSN_DCEF, FRV_INSN_WITLB, FRV_INSN_WDTLB, FRV_INSN_ITLBI
 | 
|---|
| 192 |  , FRV_INSN_DTLBI, FRV_INSN_ICPL, FRV_INSN_DCPL, FRV_INSN_ICUL
 | 
|---|
| 193 |  , FRV_INSN_DCUL, FRV_INSN_BAR, FRV_INSN_MEMBAR, FRV_INSN_COP1
 | 
|---|
| 194 |  , FRV_INSN_COP2, FRV_INSN_CLRGR, FRV_INSN_CLRFR, FRV_INSN_CLRGA
 | 
|---|
| 195 |  , FRV_INSN_CLRFA, FRV_INSN_COMMITGR, FRV_INSN_COMMITFR, FRV_INSN_COMMITGA
 | 
|---|
| 196 |  , FRV_INSN_COMMITFA, FRV_INSN_FITOS, FRV_INSN_FSTOI, FRV_INSN_FITOD
 | 
|---|
| 197 |  , FRV_INSN_FDTOI, FRV_INSN_FDITOS, FRV_INSN_FDSTOI, FRV_INSN_NFDITOS
 | 
|---|
| 198 |  , FRV_INSN_NFDSTOI, FRV_INSN_CFITOS, FRV_INSN_CFSTOI, FRV_INSN_NFITOS
 | 
|---|
| 199 |  , FRV_INSN_NFSTOI, FRV_INSN_FMOVS, FRV_INSN_FMOVD, FRV_INSN_FDMOVS
 | 
|---|
| 200 |  , FRV_INSN_CFMOVS, FRV_INSN_FNEGS, FRV_INSN_FNEGD, FRV_INSN_FDNEGS
 | 
|---|
| 201 |  , FRV_INSN_CFNEGS, FRV_INSN_FABSS, FRV_INSN_FABSD, FRV_INSN_FDABSS
 | 
|---|
| 202 |  , FRV_INSN_CFABSS, FRV_INSN_FSQRTS, FRV_INSN_FDSQRTS, FRV_INSN_NFDSQRTS
 | 
|---|
| 203 |  , FRV_INSN_FSQRTD, FRV_INSN_CFSQRTS, FRV_INSN_NFSQRTS, FRV_INSN_FADDS
 | 
|---|
| 204 |  , FRV_INSN_FSUBS, FRV_INSN_FMULS, FRV_INSN_FDIVS, FRV_INSN_FADDD
 | 
|---|
| 205 |  , FRV_INSN_FSUBD, FRV_INSN_FMULD, FRV_INSN_FDIVD, FRV_INSN_CFADDS
 | 
|---|
| 206 |  , FRV_INSN_CFSUBS, FRV_INSN_CFMULS, FRV_INSN_CFDIVS, FRV_INSN_NFADDS
 | 
|---|
| 207 |  , FRV_INSN_NFSUBS, FRV_INSN_NFMULS, FRV_INSN_NFDIVS, FRV_INSN_FCMPS
 | 
|---|
| 208 |  , FRV_INSN_FCMPD, FRV_INSN_CFCMPS, FRV_INSN_FDCMPS, FRV_INSN_FMADDS
 | 
|---|
| 209 |  , FRV_INSN_FMSUBS, FRV_INSN_FMADDD, FRV_INSN_FMSUBD, FRV_INSN_FDMADDS
 | 
|---|
| 210 |  , FRV_INSN_NFDMADDS, FRV_INSN_CFMADDS, FRV_INSN_CFMSUBS, FRV_INSN_NFMADDS
 | 
|---|
| 211 |  , FRV_INSN_NFMSUBS, FRV_INSN_FMAS, FRV_INSN_FMSS, FRV_INSN_FDMAS
 | 
|---|
| 212 |  , FRV_INSN_FDMSS, FRV_INSN_NFDMAS, FRV_INSN_NFDMSS, FRV_INSN_CFMAS
 | 
|---|
| 213 |  , FRV_INSN_CFMSS, FRV_INSN_FMAD, FRV_INSN_FMSD, FRV_INSN_NFMAS
 | 
|---|
| 214 |  , FRV_INSN_NFMSS, FRV_INSN_FDADDS, FRV_INSN_FDSUBS, FRV_INSN_FDMULS
 | 
|---|
| 215 |  , FRV_INSN_FDDIVS, FRV_INSN_FDSADS, FRV_INSN_FDMULCS, FRV_INSN_NFDMULCS
 | 
|---|
| 216 |  , FRV_INSN_NFDADDS, FRV_INSN_NFDSUBS, FRV_INSN_NFDMULS, FRV_INSN_NFDDIVS
 | 
|---|
| 217 |  , FRV_INSN_NFDSADS, FRV_INSN_NFDCMPS, FRV_INSN_MHSETLOS, FRV_INSN_MHSETHIS
 | 
|---|
| 218 |  , FRV_INSN_MHDSETS, FRV_INSN_MHSETLOH, FRV_INSN_MHSETHIH, FRV_INSN_MHDSETH
 | 
|---|
| 219 |  , FRV_INSN_MAND, FRV_INSN_MOR, FRV_INSN_MXOR, FRV_INSN_CMAND
 | 
|---|
| 220 |  , FRV_INSN_CMOR, FRV_INSN_CMXOR, FRV_INSN_MNOT, FRV_INSN_CMNOT
 | 
|---|
| 221 |  , FRV_INSN_MROTLI, FRV_INSN_MROTRI, FRV_INSN_MWCUT, FRV_INSN_MWCUTI
 | 
|---|
| 222 |  , FRV_INSN_MCUT, FRV_INSN_MCUTI, FRV_INSN_MCUTSS, FRV_INSN_MCUTSSI
 | 
|---|
| 223 |  , FRV_INSN_MDCUTSSI, FRV_INSN_MAVEH, FRV_INSN_MSLLHI, FRV_INSN_MSRLHI
 | 
|---|
| 224 |  , FRV_INSN_MSRAHI, FRV_INSN_MDROTLI, FRV_INSN_MCPLHI, FRV_INSN_MCPLI
 | 
|---|
| 225 |  , FRV_INSN_MSATHS, FRV_INSN_MQSATHS, FRV_INSN_MSATHU, FRV_INSN_MCMPSH
 | 
|---|
| 226 |  , FRV_INSN_MCMPUH, FRV_INSN_MABSHS, FRV_INSN_MADDHSS, FRV_INSN_MADDHUS
 | 
|---|
| 227 |  , FRV_INSN_MSUBHSS, FRV_INSN_MSUBHUS, FRV_INSN_CMADDHSS, FRV_INSN_CMADDHUS
 | 
|---|
| 228 |  , FRV_INSN_CMSUBHSS, FRV_INSN_CMSUBHUS, FRV_INSN_MQADDHSS, FRV_INSN_MQADDHUS
 | 
|---|
| 229 |  , FRV_INSN_MQSUBHSS, FRV_INSN_MQSUBHUS, FRV_INSN_CMQADDHSS, FRV_INSN_CMQADDHUS
 | 
|---|
| 230 |  , FRV_INSN_CMQSUBHSS, FRV_INSN_CMQSUBHUS, FRV_INSN_MADDACCS, FRV_INSN_MSUBACCS
 | 
|---|
| 231 |  , FRV_INSN_MDADDACCS, FRV_INSN_MDSUBACCS, FRV_INSN_MASACCS, FRV_INSN_MDASACCS
 | 
|---|
| 232 |  , FRV_INSN_MMULHS, FRV_INSN_MMULHU, FRV_INSN_MMULXHS, FRV_INSN_MMULXHU
 | 
|---|
| 233 |  , FRV_INSN_CMMULHS, FRV_INSN_CMMULHU, FRV_INSN_MQMULHS, FRV_INSN_MQMULHU
 | 
|---|
| 234 |  , FRV_INSN_MQMULXHS, FRV_INSN_MQMULXHU, FRV_INSN_CMQMULHS, FRV_INSN_CMQMULHU
 | 
|---|
| 235 |  , FRV_INSN_MMACHS, FRV_INSN_MMACHU, FRV_INSN_MMRDHS, FRV_INSN_MMRDHU
 | 
|---|
| 236 |  , FRV_INSN_CMMACHS, FRV_INSN_CMMACHU, FRV_INSN_MQMACHS, FRV_INSN_MQMACHU
 | 
|---|
| 237 |  , FRV_INSN_CMQMACHS, FRV_INSN_CMQMACHU, FRV_INSN_MQXMACHS, FRV_INSN_MQXMACXHS
 | 
|---|
| 238 |  , FRV_INSN_MQMACXHS, FRV_INSN_MCPXRS, FRV_INSN_MCPXRU, FRV_INSN_MCPXIS
 | 
|---|
| 239 |  , FRV_INSN_MCPXIU, FRV_INSN_CMCPXRS, FRV_INSN_CMCPXRU, FRV_INSN_CMCPXIS
 | 
|---|
| 240 |  , FRV_INSN_CMCPXIU, FRV_INSN_MQCPXRS, FRV_INSN_MQCPXRU, FRV_INSN_MQCPXIS
 | 
|---|
| 241 |  , FRV_INSN_MQCPXIU, FRV_INSN_MEXPDHW, FRV_INSN_CMEXPDHW, FRV_INSN_MEXPDHD
 | 
|---|
| 242 |  , FRV_INSN_CMEXPDHD, FRV_INSN_MPACKH, FRV_INSN_MDPACKH, FRV_INSN_MUNPACKH
 | 
|---|
| 243 |  , FRV_INSN_MDUNPACKH, FRV_INSN_MBTOH, FRV_INSN_CMBTOH, FRV_INSN_MHTOB
 | 
|---|
| 244 |  , FRV_INSN_CMHTOB, FRV_INSN_MBTOHE, FRV_INSN_CMBTOHE, FRV_INSN_MCLRACC
 | 
|---|
| 245 |  , FRV_INSN_MRDACC, FRV_INSN_MRDACCG, FRV_INSN_MWTACC, FRV_INSN_MWTACCG
 | 
|---|
| 246 |  , FRV_INSN_MCOP1, FRV_INSN_MCOP2, FRV_INSN_FNOP
 | 
|---|
| 247 | } CGEN_INSN_TYPE;
 | 
|---|
| 248 | 
 | 
|---|
| 249 | /* Index of `invalid' insn place holder.  */
 | 
|---|
| 250 | #define CGEN_INSN_INVALID FRV_INSN_INVALID
 | 
|---|
| 251 | 
 | 
|---|
| 252 | /* Total number of insns in table.  */
 | 
|---|
| 253 | #define MAX_INSNS ((int) FRV_INSN_FNOP + 1)
 | 
|---|
| 254 | 
 | 
|---|
| 255 | /* This struct records data prior to insertion or after extraction.  */
 | 
|---|
| 256 | struct cgen_fields
 | 
|---|
| 257 | {
 | 
|---|
| 258 |   int length;
 | 
|---|
| 259 |   long f_nil;
 | 
|---|
| 260 |   long f_anyof;
 | 
|---|
| 261 |   long f_pack;
 | 
|---|
| 262 |   long f_op;
 | 
|---|
| 263 |   long f_ope1;
 | 
|---|
| 264 |   long f_ope2;
 | 
|---|
| 265 |   long f_ope3;
 | 
|---|
| 266 |   long f_ope4;
 | 
|---|
| 267 |   long f_GRi;
 | 
|---|
| 268 |   long f_GRj;
 | 
|---|
| 269 |   long f_GRk;
 | 
|---|
| 270 |   long f_FRi;
 | 
|---|
| 271 |   long f_FRj;
 | 
|---|
| 272 |   long f_FRk;
 | 
|---|
| 273 |   long f_CPRi;
 | 
|---|
| 274 |   long f_CPRj;
 | 
|---|
| 275 |   long f_CPRk;
 | 
|---|
| 276 |   long f_ACCGi;
 | 
|---|
| 277 |   long f_ACCGk;
 | 
|---|
| 278 |   long f_ACC40Si;
 | 
|---|
| 279 |   long f_ACC40Ui;
 | 
|---|
| 280 |   long f_ACC40Sk;
 | 
|---|
| 281 |   long f_ACC40Uk;
 | 
|---|
| 282 |   long f_CRi;
 | 
|---|
| 283 |   long f_CRj;
 | 
|---|
| 284 |   long f_CRk;
 | 
|---|
| 285 |   long f_CCi;
 | 
|---|
| 286 |   long f_CRj_int;
 | 
|---|
| 287 |   long f_CRj_float;
 | 
|---|
| 288 |   long f_ICCi_1;
 | 
|---|
| 289 |   long f_ICCi_2;
 | 
|---|
| 290 |   long f_ICCi_3;
 | 
|---|
| 291 |   long f_FCCi_1;
 | 
|---|
| 292 |   long f_FCCi_2;
 | 
|---|
| 293 |   long f_FCCi_3;
 | 
|---|
| 294 |   long f_FCCk;
 | 
|---|
| 295 |   long f_eir;
 | 
|---|
| 296 |   long f_s10;
 | 
|---|
| 297 |   long f_s12;
 | 
|---|
| 298 |   long f_d12;
 | 
|---|
| 299 |   long f_u16;
 | 
|---|
| 300 |   long f_s16;
 | 
|---|
| 301 |   long f_s6;
 | 
|---|
| 302 |   long f_s6_1;
 | 
|---|
| 303 |   long f_u6;
 | 
|---|
| 304 |   long f_s5;
 | 
|---|
| 305 |   long f_u12_h;
 | 
|---|
| 306 |   long f_u12_l;
 | 
|---|
| 307 |   long f_u12;
 | 
|---|
| 308 |   long f_int_cc;
 | 
|---|
| 309 |   long f_flt_cc;
 | 
|---|
| 310 |   long f_cond;
 | 
|---|
| 311 |   long f_ccond;
 | 
|---|
| 312 |   long f_hint;
 | 
|---|
| 313 |   long f_LI;
 | 
|---|
| 314 |   long f_lock;
 | 
|---|
| 315 |   long f_debug;
 | 
|---|
| 316 |   long f_A;
 | 
|---|
| 317 |   long f_ae;
 | 
|---|
| 318 |   long f_spr_h;
 | 
|---|
| 319 |   long f_spr_l;
 | 
|---|
| 320 |   long f_spr;
 | 
|---|
| 321 |   long f_label16;
 | 
|---|
| 322 |   long f_labelH6;
 | 
|---|
| 323 |   long f_labelL18;
 | 
|---|
| 324 |   long f_label24;
 | 
|---|
| 325 |   long f_ICCi_1_null;
 | 
|---|
| 326 |   long f_ICCi_2_null;
 | 
|---|
| 327 |   long f_ICCi_3_null;
 | 
|---|
| 328 |   long f_FCCi_1_null;
 | 
|---|
| 329 |   long f_FCCi_2_null;
 | 
|---|
| 330 |   long f_FCCi_3_null;
 | 
|---|
| 331 |   long f_rs_null;
 | 
|---|
| 332 |   long f_GRi_null;
 | 
|---|
| 333 |   long f_GRj_null;
 | 
|---|
| 334 |   long f_GRk_null;
 | 
|---|
| 335 |   long f_FRi_null;
 | 
|---|
| 336 |   long f_FRj_null;
 | 
|---|
| 337 |   long f_ACCj_null;
 | 
|---|
| 338 |   long f_rd_null;
 | 
|---|
| 339 |   long f_cond_null;
 | 
|---|
| 340 |   long f_ccond_null;
 | 
|---|
| 341 |   long f_s12_null;
 | 
|---|
| 342 |   long f_label16_null;
 | 
|---|
| 343 |   long f_misc_null_1;
 | 
|---|
| 344 |   long f_misc_null_2;
 | 
|---|
| 345 |   long f_misc_null_3;
 | 
|---|
| 346 |   long f_misc_null_4;
 | 
|---|
| 347 |   long f_misc_null_5;
 | 
|---|
| 348 |   long f_misc_null_6;
 | 
|---|
| 349 |   long f_misc_null_7;
 | 
|---|
| 350 |   long f_misc_null_8;
 | 
|---|
| 351 |   long f_misc_null_9;
 | 
|---|
| 352 |   long f_misc_null_10;
 | 
|---|
| 353 |   long f_misc_null_11;
 | 
|---|
| 354 |   long f_LI_off;
 | 
|---|
| 355 |   long f_LI_on;
 | 
|---|
| 356 | };
 | 
|---|
| 357 | 
 | 
|---|
| 358 | #define CGEN_INIT_PARSE(od) \
 | 
|---|
| 359 | {\
 | 
|---|
| 360 | }
 | 
|---|
| 361 | #define CGEN_INIT_INSERT(od) \
 | 
|---|
| 362 | {\
 | 
|---|
| 363 | }
 | 
|---|
| 364 | #define CGEN_INIT_EXTRACT(od) \
 | 
|---|
| 365 | {\
 | 
|---|
| 366 | }
 | 
|---|
| 367 | #define CGEN_INIT_PRINT(od) \
 | 
|---|
| 368 | {\
 | 
|---|
| 369 | }
 | 
|---|
| 370 | 
 | 
|---|
| 371 | 
 | 
|---|
| 372 | #endif /* FRV_OPC_H */
 | 
|---|