Correct comment on first line of file.
[platform/upstream/binutils.git] / opcodes / rce-opc.h
1 typedef enum {
2         O0, OT, O1, OC, O2, X1, OI, OB, SI, I7, LS, BR, LI, LR, LJ, OM, OQ, JSR
3 } rce_opclass;
4
5 typedef struct inst
6 {       char *name;
7         unsigned short opclass;
8         unsigned short inst;
9 } rce_opcode_info;
10
11 #ifdef DEFINE_TABLE
12 rce_opcode_info rce_table[]={
13 { "bkpt",       O0,     0x0000 },
14 { "sync",       O0,     0x0001 },
15 { "rte",        O0,     0x0002 },
16 { "rfi",        O0,     0x0003 },
17 { "stop",       O0,     0x0004 },
18 { "wait",       O0,     0x0005 },
19
20 { "trap",       OT,     0x0010 },
21 { "mvc",        O1,     0x0020 },
22 { "mvcv",       O1,     0x0030 },
23 { "jmp",        O1,     0x0040 },
24 { "jsr",        JSR,    0x0050 },
25 /*****
26 { "jmpt",       O1,     0x0060 },
27 { "jmpf",       O1,     0x0070 },
28 *****/
29 { "tstne",      O1,     0x0080 },
30 { "tstgt",      O1,     0x0090 },
31 { "tstnbz",     O1,     0x00B0 },
32 { "inct",       O1,     0x00C0 },
33 { "incf",       O1,     0x00D0 },
34 { "dect",       O1,     0x00E0 },
35 { "decf",       O1,     0x00F0 },
36 { "zextb",      O1,     0x0100 },
37 { "sextb",      O1,     0x0110 },
38 { "zexth",      O1,     0x0120 },
39 { "sexth",      O1,     0x0130 },
40 { "xtrb3",      X1,     0x0140 },
41 { "xtrb2",      X1,     0x0150 },
42 { "xtrb1",      X1,     0x0160 },
43 { "xtrb0",      X1,     0x0170 },
44
45 { "decgt",      O1,     0x01C0 },
46 { "declt",      O1,     0x01D0 },
47 { "brev",       O1,     0x01E0 },
48 { "not",        O1,     0x01F0 },
49 { "mfcr",       OC,     0x0400 },
50 { "mtcr",       OC,     0x0600 },
51 { "mov",        O2,     0x0200 },
52 { "movnc",      O2,     0x0C00 },
53 { "tst",        O2,     0x0B00 },
54 { "cmpne",      O2,     0x0800 },
55 { "cmplt",      O2,     0x0900 },
56 { "cmphs",      O2,     0x0A00 },
57 { "bgenr",      O2,     0x0D00 },
58 { "movt",       O2,     0x0E00 },
59 { "movf",       O2,     0x0F00 },
60 { "and",        O2,     0x1000 },
61 { "andn",       O2,     0x1100 },
62 { "xor",        O2,     0x1200 },
63 { "xnor",       O2,     0x1300 },
64 { "or",         O2,     0x1400 },
65 { "rsub",       O2,     0x1500 },
66 { "addu",       O2,     0x1600 },
67 { "subu",       O2,     0x1700 },
68 { "ixh",        O2,     0x1800 },
69 { "ixw",        O2,     0x1900 },
70 { "addc",       O2,     0x1A00 },
71 { "subc",       O2,     0x1B00 },
72 { "lsr",        O2,     0x1C00 },
73 { "asr",        O2,     0x1D00 },
74 { "lsl",        O2,     0x1E00 },
75 /*****
76 { "rotl",       O2,     0x1F00 },
77 *****/
78
79 { "movi",       I7,     0x6800 },
80
81 { "andi",       OB,     0x2200 },
82 { "movit",      OB,     0x2400 },
83 { "movif",      OB,     0x2600 },
84 { "btsti",      OB,     0x2800 },
85 { "bclri",      OB,     0x2A00 },
86 { "bseti",      OB,     0x2C00 },
87 { "bmaski",     OB,     0x2E00 },
88 { "bgeni",      OB,     0x3000 },
89 { "rsubi",      OB,     0x3200 },
90 { "addi",       OI,     0x3400 },
91 { "subi",       OI,     0x3600 },
92 { "lsri",       SI,     0x3800 },
93 { "lsrc",       O1,     0x3800 },
94 { "asri",       SI,     0x3A00 },
95 { "asrc",       O1,     0x3A00 },
96 { "lsli",       SI,     0x3C00 },
97 { "lslc",       O1,     0x3C00 },
98 { "rotli",      SI,     0x3E00 },
99 { "xsr",        O1,     0x3E00 },
100
101 { "ldm",        OM,     0x6000 },
102 { "stm",        OM,     0x6010 },
103 { "ldq",        OQ,     0x6000 },
104 { "stq",        OQ,     0x6010 },
105 { "mult",       O2,     0x6100 },
106
107 /* { "mvir1",   LI,     0x6800 }, */
108 { "lrw",        LR,     0x7000 },
109 { "jmpi",       LJ,     0x7000 },
110 { "jsri",       LJ,     0x7F00 },
111
112 { "ld",         LS,     0x8000 },
113 { "st",         LS,     0x9000 },
114 { "ld.w",       LS,     0x8000 },
115 { "st.w",       LS,     0x9000 },
116 { "ld.b",       LS,     0xA000 },
117 { "st.b",       LS,     0xB000 },
118 { "ld.h",       LS,     0xC000 },
119 { "st.h",       LS,     0xD000 },
120 { "br",         BR,     0xE000 },
121 { "bsr",        BR,     0xE800 },
122 { "bt",         BR,     0xF000 },
123 { "bf",         BR,     0xF800 },
124 { 0,            0,      0 }
125 };
126 #endif