/[gxemul]/upstream/0.3.8/src/include/opcodes_ppc.h
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /upstream/0.3.8/src/include/opcodes_ppc.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 23 - (show annotations)
Mon Oct 8 16:19:43 2007 UTC (16 years, 8 months ago) by dpavlin
File MIME type: text/plain
File size: 7594 byte(s)
0.3.8
1 #ifndef OPCODES_PPC_H
2 #define OPCODES_PPC_H
3
4 /*
5 * Copyright (C) 2005 Anders Gavare. All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions are met:
9 *
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 * 3. The name of the author may not be used to endorse or promote products
16 * derived from this software without specific prior written permission.
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
19 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
22 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28 * SUCH DAMAGE.
29 *
30 *
31 * $Id: opcodes_ppc.h,v 1.45 2005/12/04 02:40:04 debug Exp $
32 *
33 *
34 * PPC and POWER opcodes. These are gathered from various sources.
35 * Note: The define uses the PPC name, not the POWER name, when they differ.
36 */
37
38 #define PPC_HI6_MULLI 0x07
39 #define PPC_HI6_SUBFIC 0x08
40
41 #define PPC_HI6_CMPLI 0x0a
42 #define PPC_HI6_CMPI 0x0b
43 #define PPC_HI6_ADDIC 0x0c
44 #define PPC_HI6_ADDIC_DOT 0x0d
45 #define PPC_HI6_ADDI 0x0e
46 #define PPC_HI6_ADDIS 0x0f
47 #define PPC_HI6_BC 0x10
48 #define PPC_HI6_SC 0x11
49 #define PPC_HI6_B 0x12
50 #define PPC_HI6_19 0x13
51 #define PPC_19_MCRF 0
52 #define PPC_19_BCLR 16
53 #define PPC_19_RFID 18
54 #define PPC_19_CRNOR 33
55 #define PPC_19_RFI 50
56 #define PPC_19_RFSVC 82
57 #define PPC_19_CRANDC 129
58 #define PPC_19_ISYNC 150
59 #define PPC_19_CRXOR 193
60 #define PPC_19_CRNAND 225
61 #define PPC_19_CRAND 257
62 #define PPC_19_CREQV 289
63 #define PPC_19_CRORC 417
64 #define PPC_19_CROR 449
65 #define PPC_19_BCCTR 528
66 #define PPC_HI6_RLWIMI 0x14
67 #define PPC_HI6_RLWINM 0x15
68
69 #define PPC_HI6_RLWNM 0x17
70 #define PPC_HI6_ORI 0x18
71 #define PPC_HI6_ORIS 0x19
72 #define PPC_HI6_XORI 0x1a
73 #define PPC_HI6_XORIS 0x1b
74 #define PPC_HI6_ANDI_DOT 0x1c
75 #define PPC_HI6_ANDIS_DOT 0x1d
76 #define PPC_HI6_30 0x1e
77 #define PPC_30_RLDICL 0x0
78 #define PPC_30_RLDICR 0x1
79 #define PPC_HI6_31 0x1f
80 #define PPC_31_CMP 0
81 #define PPC_31_TW 4
82 #define PPC_31_SUBFC 8
83 #define PPC_31_ADDC 10
84 #define PPC_31_MULHWU 11
85 #define PPC_31_MFCR 19
86 #define PPC_31_LWARX 20
87 #define PPC_31_LWZX 23
88 #define PPC_31_SLW 24
89 #define PPC_31_CNTLZW 26
90 #define PPC_31_AND 28
91 #define PPC_31_CMPL 32
92 #define PPC_31_SUBF 40
93 #define PPC_31_DCBST 54
94 #define PPC_31_LWZUX 55
95 #define PPC_31_ANDC 60
96 #define PPC_31_TD 68
97 #define PPC_31_MULHW 75
98 #define PPC_31_MFMSR 83
99 #define PPC_31_LDARX 84
100 #define PPC_31_DCBF 86
101 #define PPC_31_LBZX 87
102 #define PPC_31_LVX 103
103 #define PPC_31_NEG 104
104 #define PPC_31_CLF 118
105 #define PPC_31_LBZUX 119
106 #define PPC_31_NOR 124
107 #define PPC_31_SUBFE 136
108 #define PPC_31_ADDE 138
109 #define PPC_31_MTCRF 144
110 #define PPC_31_MTMSR 146
111 #define PPC_31_STDX 149
112 #define PPC_31_STWCX_DOT 150
113 #define PPC_31_STWX 151
114 #define PPC_31_WRTEEI 163
115 #define PPC_31_STDUX 181
116 #define PPC_31_STWUX 183
117 #define PPC_31_SUBFZE 200
118 #define PPC_31_ADDZE 202
119 #define PPC_31_MTSR 210
120 #define PPC_31_STDCX_DOT 214
121 #define PPC_31_STBX 215
122 #define PPC_31_STVX 231
123 #define PPC_31_SUBFME 232
124 #define PPC_31_ADDME 234
125 #define PPC_31_MULLW 235
126 #define PPC_31_MTSRIN 242
127 #define PPC_31_DCBTST 246
128 #define PPC_31_STBUX 247
129 #define PPC_31_ADD 266
130 #define PPC_31_DCBT 278
131 #define PPC_31_LHZX 279
132 #define PPC_31_TLBIE 306
133 #define PPC_31_LHZUX 311
134 #define PPC_31_XOR 316
135 #define PPC_31_MFSPR 339
136 #define PPC_31_LHAX 343
137 #define PPC_31_TLBIA 370
138 #define PPC_31_MFTB 371
139 #define PPC_31_LHAUX 375
140 #define PPC_31_STHX 407
141 #define PPC_31_ORC 412
142 #define PPC_31_SLBIE 434
143 #define PPC_31_STHUX 439
144 #define PPC_31_OR 444
145 #define PPC_31_DCCCI 454
146 #define PPC_31_DIVWU 459
147 #define PPC_31_MTSPR 467
148 #define PPC_31_DCBI 470
149 #define PPC_31_NAND 476
150 #define PPC_31_STVXL 487
151 #define PPC_31_DIVW 491
152 #define PPC_31_SLBIA 498
153 #define PPC_31_CLI 502
154 #define PPC_31_SUBFCO 520
155 #define PPC_31_ADDCO 522
156 #define PPC_31_LWBRX 534
157 #define PPC_31_LFSX 535
158 #define PPC_31_SRW 536
159 #define PPC_31_SUBFO 552
160 #define PPC_31_TLBSYNC 566
161 #define PPC_31_MFSR 595
162 #define PPC_31_LSWI 597
163 #define PPC_31_SYNC 598
164 #define PPC_31_LFDX 599
165 #define PPC_31_NEGO 616
166 #define PPC_31_DCLST 630
167 #define PPC_31_SUBFEO 648
168 #define PPC_31_ADDEO 650
169 #define PPC_31_MFSRIN 659
170 #define PPC_31_STWBRX 662
171 #define PPC_31_STFSX 663
172 #define PPC_31_SUBFZEO 712
173 #define PPC_31_ADDZEO 714
174 #define PPC_31_STSWI 725
175 #define PPC_31_STFDX 727
176 #define PPC_31_SUBFMEO 744
177 #define PPC_31_ADDMEO 746
178 #define PPC_31_MULLWO 747
179 #define PPC_31_ADDO 778
180 #define PPC_31_LHBRX 790
181 #define PPC_31_SRAW 792
182 #define PPC_31_SRAWI 824
183 #define PPC_31_EIEIO 854
184 #define PPC_31_TLBSX_DOT 914
185 #define PPC_31_STHBRX 918
186 #define PPC_31_EXTSH 922
187 #define PPC_31_EXTSB 954
188 #define PPC_31_ICCCI 966
189 #define PPC_31_DIVWUO 971
190 #define PPC_31_TLBLD 978
191 #define PPC_31_ICBI 982
192 #define PPC_31_EXTSW 986
193 #define PPC_31_DIVWO 1003
194 #define PPC_31_TLBLI 1010
195 #define PPC_31_DCBZ 1014
196 #define PPC_HI6_LWZ 0x20
197 #define PPC_HI6_LWZU 0x21
198 #define PPC_HI6_LBZ 0x22
199 #define PPC_HI6_LBZU 0x23
200 #define PPC_HI6_STW 0x24
201 #define PPC_HI6_STWU 0x25
202 #define PPC_HI6_STB 0x26
203 #define PPC_HI6_STBU 0x27
204 #define PPC_HI6_LHZ 0x28
205 #define PPC_HI6_LHZU 0x29
206 #define PPC_HI6_LHA 0x2a
207 #define PPC_HI6_LHAU 0x2b
208 #define PPC_HI6_STH 0x2c
209 #define PPC_HI6_STHU 0x2d
210 #define PPC_HI6_LMW 0x2e
211 #define PPC_HI6_STMW 0x2f
212 #define PPC_HI6_LFS 0x30
213
214 #define PPC_HI6_LFD 0x32
215
216 #define PPC_HI6_STFS 0x34
217
218 #define PPC_HI6_STFD 0x36
219
220 #define PPC_HI6_LD 0x3a
221 #define PPC_HI6_59 0x3b
222 #define PPC_59_FDIVS 18
223 #define PPC_59_FSUBS 20
224 #define PPC_59_FADDS 21
225 #define PPC_59_FMULS 25
226 #define PPC_59_FMADDS 29
227
228 #define PPC_HI6_STD 0x3e
229 #define PPC_HI6_63 0x3f
230 #define PPC_63_FCMPU 0
231 #define PPC_63_FRSP 12
232 #define PPC_63_FCTIWZ 15
233 #define PPC_63_FDIV 18
234 #define PPC_63_FSUB 20
235 #define PPC_63_FADD 21
236 #define PPC_63_FMUL 25
237 #define PPC_63_FMSUB 28
238 #define PPC_63_FMADD 29
239 #define PPC_63_FNEG 40
240 #define PPC_63_FMR 72
241 #define PPC_63_FNABS 136
242 #define PPC_63_FABS 264
243 #define PPC_63_MFFS 583
244 #define PPC_63_MTFSF 711
245
246 #endif /* OPCODES_PPC_H */

  ViewVC Help
Powered by ViewVC 1.1.26