update copyright dates
[deliverable/binutils-gdb.git] / gas / config / tc-m68851.h
CommitLineData
252b5132
RH
1/* This file is tc-m68851.h
2
aa820537 3 Copyright 1987, 1988, 1989, 1990, 1991, 1992, 2000, 2005, 2007
f7e42eb4 4 Free Software Foundation, Inc.
82efde3a 5
252b5132 6 This file is part of GAS, the GNU Assembler.
82efde3a 7
252b5132
RH
8 GAS is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
ec2655a6 10 the Free Software Foundation; either version 3, or (at your option)
252b5132 11 any later version.
82efde3a 12
ec2655a6
NC
13 GAS is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
16 License for more details.
82efde3a 17
252b5132 18 You should have received a copy of the GNU General Public License
82efde3a 19 along with GAS; see the file COPYING. If not, write to the Free
4b4da160
NC
20 Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
21 02110-1301, USA. */
252b5132 22
252b5132
RH
23#ifdef m68851
24
25/*
82efde3a 26 I didn't use much imagination in choosing the
252b5132
RH
27 following codes, so many of them aren't very
28 mnemonic. -rab
82efde3a 29
252b5132
RH
30 P pmmu register
31 Possible values:
32 000 TC Translation Control reg
33 100 CAL Current Access Level
34 101 VAL Validate Access Level
35 110 SCC Stack Change Control
36 111 AC Access Control
82efde3a 37
252b5132
RH
38 W wide pmmu registers
39 Possible values:
40 001 DRP Dma Root Pointer
41 010 SRP Supervisor Root Pointer
42 011 CRP Cpu Root Pointer
82efde3a 43
252b5132
RH
44 f function code register
45 0 SFC
46 1 DFC
82efde3a 47
252b5132 48 V VAL register only
82efde3a 49
252b5132
RH
50 X BADx, BACx
51 100 BAD Breakpoint Acknowledge Data
52 101 BAC Breakpoint Acknowledge Control
82efde3a 53
252b5132
RH
54 Y PSR
55 Z PCSR
82efde3a 56
252b5132 57 | memory (modes 2-6, 7.*)
82efde3a 58
252b5132
RH
59 */
60
61/*
62 * these defines should be in m68k.c but
63 * i put them here to keep all the m68851 stuff
64 * together -rab
65 * JF--Make sure these #s don't clash with the ones in m68k.c
66 * That would be BAD.
67 */
68#define TC (FPS+1) /* 48 */
69#define DRP (TC+1) /* 49 */
70#define SRP (DRP+1) /* 50 */
71#define CRP (SRP+1) /* 51 */
72#define CAL (CRP+1) /* 52 */
73#define VAL (CAL+1) /* 53 */
74#define SCC (VAL+1) /* 54 */
75#define AC (SCC+1) /* 55 */
76#define BAD (AC+1) /* 56,57,58,59, 60,61,62,63 */
77#define BAC (BAD+8) /* 64,65,66,67, 68,69,70,71 */
78#define PSR (BAC+8) /* 72 */
79#define PCSR (PSR+1) /* 73 */
80
81/* name */ /* opcode */ /* match */ /* args */
82
83{"pbac", one(0xf0c7), one(0xffbf), "Bc"},
84{"pbacw", one(0xf087), one(0xffbf), "Bc"},
85{"pbas", one(0xf0c6), one(0xffbf), "Bc"},
86{"pbasw", one(0xf086), one(0xffbf), "Bc"},
87{"pbbc", one(0xf0c1), one(0xffbf), "Bc"},
88{"pbbcw", one(0xf081), one(0xffbf), "Bc"},
89{"pbbs", one(0xf0c0), one(0xffbf), "Bc"},
90{"pbbsw", one(0xf080), one(0xffbf), "Bc"},
91{"pbcc", one(0xf0cf), one(0xffbf), "Bc"},
92{"pbccw", one(0xf08f), one(0xffbf), "Bc"},
93{"pbcs", one(0xf0ce), one(0xffbf), "Bc"},
94{"pbcsw", one(0xf08e), one(0xffbf), "Bc"},
95{"pbgc", one(0xf0cd), one(0xffbf), "Bc"},
96{"pbgcw", one(0xf08d), one(0xffbf), "Bc"},
97{"pbgs", one(0xf0cc), one(0xffbf), "Bc"},
98{"pbgsw", one(0xf08c), one(0xffbf), "Bc"},
99{"pbic", one(0xf0cb), one(0xffbf), "Bc"},
100{"pbicw", one(0xf08b), one(0xffbf), "Bc"},
101{"pbis", one(0xf0ca), one(0xffbf), "Bc"},
102{"pbisw", one(0xf08a), one(0xffbf), "Bc"},
103{"pblc", one(0xf0c3), one(0xffbf), "Bc"},
104{"pblcw", one(0xf083), one(0xffbf), "Bc"},
105{"pbls", one(0xf0c2), one(0xffbf), "Bc"},
106{"pblsw", one(0xf082), one(0xffbf), "Bc"},
107{"pbsc", one(0xf0c5), one(0xffbf), "Bc"},
108{"pbscw", one(0xf085), one(0xffbf), "Bc"},
109{"pbss", one(0xf0c4), one(0xffbf), "Bc"},
110{"pbssw", one(0xf084), one(0xffbf), "Bc"},
111{"pbwc", one(0xf0c9), one(0xffbf), "Bc"},
112{"pbwcw", one(0xf089), one(0xffbf), "Bc"},
113{"pbws", one(0xf0c8), one(0xffbf), "Bc"},
114{"pbwsw", one(0xf088), one(0xffbf), "Bc"},
82efde3a 115
252b5132
RH
116{"pdbac", two(0xf048, 0x0007), two(0xfff8, 0xffff), "DsBw"},
117{"pdbas", two(0xf048, 0x0006), two(0xfff8, 0xffff), "DsBw"},
118{"pdbbc", two(0xf048, 0x0001), two(0xfff8, 0xffff), "DsBw"},
119{"pdbbs", two(0xf048, 0x0000), two(0xfff8, 0xffff), "DsBw"},
120{"pdbcc", two(0xf048, 0x000f), two(0xfff8, 0xffff), "DsBw"},
121{"pdbcs", two(0xf048, 0x000e), two(0xfff8, 0xffff), "DsBw"},
122{"pdbgc", two(0xf048, 0x000d), two(0xfff8, 0xffff), "DsBw"},
123{"pdbgs", two(0xf048, 0x000c), two(0xfff8, 0xffff), "DsBw"},
124{"pdbic", two(0xf048, 0x000b), two(0xfff8, 0xffff), "DsBw"},
125{"pdbis", two(0xf048, 0x000a), two(0xfff8, 0xffff), "DsBw"},
126{"pdblc", two(0xf048, 0x0003), two(0xfff8, 0xffff), "DsBw"},
127{"pdbls", two(0xf048, 0x0002), two(0xfff8, 0xffff), "DsBw"},
128{"pdbsc", two(0xf048, 0x0005), two(0xfff8, 0xffff), "DsBw"},
129{"pdbss", two(0xf048, 0x0004), two(0xfff8, 0xffff), "DsBw"},
130{"pdbwc", two(0xf048, 0x0009), two(0xfff8, 0xffff), "DsBw"},
131{"pdbws", two(0xf048, 0x0008), two(0xfff8, 0xffff), "DsBw"},
82efde3a 132
252b5132 133{"pflusha", two(0xf000, 0x2400), two(0xffff, 0xffff), "" },
82efde3a 134
252b5132
RH
135{"pflush", two(0xf000, 0x3010), two(0xffc0, 0xfe10), "T3T9" },
136{"pflush", two(0xf000, 0x3810), two(0xffc0, 0xfe10), "T3T9&s" },
137{"pflush", two(0xf000, 0x3008), two(0xffc0, 0xfe18), "D3T9" },
138{"pflush", two(0xf000, 0x3808), two(0xffc0, 0xfe18), "D3T9&s" },
139{"pflush", two(0xf000, 0x3000), two(0xffc0, 0xfe1e), "f3T9" },
140{"pflush", two(0xf000, 0x3800), two(0xffc0, 0xfe1e), "f3T9&s" },
82efde3a 141
252b5132
RH
142{"pflushs", two(0xf000, 0x3410), two(0xfff8, 0xfe10), "T3T9" },
143{"pflushs", two(0xf000, 0x3c00), two(0xfff8, 0xfe00), "T3T9&s" },
144{"pflushs", two(0xf000, 0x3408), two(0xfff8, 0xfe18), "D3T9" },
145{"pflushs", two(0xf000, 0x3c08), two(0xfff8, 0xfe18), "D3T9&s" },
146{"pflushs", two(0xf000, 0x3400), two(0xfff8, 0xfe1e), "f3T9" },
147{"pflushs", two(0xf000, 0x3c00), two(0xfff8, 0xfe1e), "f3T9&s"},
82efde3a 148
252b5132 149{"pflushr", two(0xf000, 0xa000), two(0xffc0, 0xffff), "|s" },
82efde3a 150
252b5132
RH
151{"ploadr", two(0xf000, 0x2210), two(0xffc0, 0xfff0), "T3&s" },
152{"ploadr", two(0xf000, 0x2208), two(0xffc0, 0xfff8), "D3&s" },
153{"ploadr", two(0xf000, 0x2200), two(0xffc0, 0xfffe), "f3&s" },
154{"ploadw", two(0xf000, 0x2010), two(0xffc0, 0xfff0), "T3&s" },
155{"ploadw", two(0xf000, 0x2008), two(0xffc0, 0xfff8), "D3&s" },
156{"ploadw", two(0xf000, 0x2000), two(0xffc0, 0xfffe), "f3&s" },
82efde3a 157
252b5132
RH
158 /* TC, CRP, DRP, SRP, CAL, VAL, SCC, AC */
159{"pmove", two(0xf000, 0x4000), two(0xffc0, 0xe3ff), "*sP8" },
160{"pmove", two(0xf000, 0x4200), two(0xffc0, 0xe3ff), "P8%s" },
161{"pmove", two(0xf000, 0x4000), two(0xffc0, 0xe3ff), "|sW8" },
162{"pmove", two(0xf000, 0x4200), two(0xffc0, 0xe3ff), "W8~s" },
82efde3a 163
252b5132
RH
164 /* BADx, BACx */
165{"pmove", two(0xf000, 0x6200), two(0xffc0, 0xe3e3), "*sX3" },
166{"pmove", two(0xf000, 0x6000), two(0xffc0, 0xe3e3), "X3%s" },
82efde3a 167
252b5132
RH
168 /* PSR, PCSR */
169 /* {"pmove", two(0xf000, 0x6100), two(oxffc0, oxffff), "*sZ8" }, */
170{"pmove", two(0xf000, 0x6000), two(0xffc0, 0xffff), "*sY8" },
171{"pmove", two(0xf000, 0x6200), two(0xffc0, 0xffff), "Y8%s" },
172{"pmove", two(0xf000, 0x6600), two(0xffc0, 0xffff), "Z8%s" },
82efde3a 173
252b5132
RH
174{"prestore", one(0xf140), one(0xffc0), "&s"},
175{"prestore", one(0xf158), one(0xfff8), "+s"},
176{"psave", one(0xf100), one(0xffc0), "&s"},
177{"psave", one(0xf100), one(0xffc0), "+s"},
82efde3a 178
252b5132
RH
179{"psac", two(0xf040, 0x0007), two(0xffc0, 0xffff), "@s"},
180{"psas", two(0xf040, 0x0006), two(0xffc0, 0xffff), "@s"},
181{"psbc", two(0xf040, 0x0001), two(0xffc0, 0xffff), "@s"},
182{"psbs", two(0xf040, 0x0000), two(0xffc0, 0xffff), "@s"},
183{"pscc", two(0xf040, 0x000f), two(0xffc0, 0xffff), "@s"},
184{"pscs", two(0xf040, 0x000e), two(0xffc0, 0xffff), "@s"},
185{"psgc", two(0xf040, 0x000d), two(0xffc0, 0xffff), "@s"},
186{"psgs", two(0xf040, 0x000c), two(0xffc0, 0xffff), "@s"},
187{"psic", two(0xf040, 0x000b), two(0xffc0, 0xffff), "@s"},
188{"psis", two(0xf040, 0x000a), two(0xffc0, 0xffff), "@s"},
189{"pslc", two(0xf040, 0x0003), two(0xffc0, 0xffff), "@s"},
190{"psls", two(0xf040, 0x0002), two(0xffc0, 0xffff), "@s"},
191{"pssc", two(0xf040, 0x0005), two(0xffc0, 0xffff), "@s"},
192{"psss", two(0xf040, 0x0004), two(0xffc0, 0xffff), "@s"},
193{"pswc", two(0xf040, 0x0009), two(0xffc0, 0xffff), "@s"},
194{"psws", two(0xf040, 0x0008), two(0xffc0, 0xffff), "@s"},
82efde3a 195
252b5132
RH
196{"ptestr", two(0xf000, 0x8210), two(0xffc0, 0xe3f0), "T3&sQ8" },
197{"ptestr", two(0xf000, 0x8310), two(0xffc0, 0xe310), "T3&sQ8A9" },
198{"ptestr", two(0xf000, 0x8208), two(0xffc0, 0xe3f8), "D3&sQ8" },
199{"ptestr", two(0xf000, 0x8308), two(0xffc0, 0xe318), "D3&sQ8A9" },
200{"ptestr", two(0xf000, 0x8200), two(0xffc0, 0xe3fe), "f3&sQ8" },
201{"ptestr", two(0xf000, 0x8300), two(0xffc0, 0xe31e), "f3&sQ8A9" },
82efde3a 202
252b5132
RH
203{"ptestw", two(0xf000, 0x8010), two(0xffc0, 0xe3f0), "T3&sQ8" },
204{"ptestw", two(0xf000, 0x8110), two(0xffc0, 0xe310), "T3&sQ8A9" },
205{"ptestw", two(0xf000, 0x8008), two(0xffc0, 0xe3f8), "D3&sQ8" },
206{"ptestw", two(0xf000, 0x8108), two(0xffc0, 0xe318), "D3&sQ8A9" },
207{"ptestw", two(0xf000, 0x8000), two(0xffc0, 0xe3fe), "f3&sQ8" },
208{"ptestw", two(0xf000, 0x8100), two(0xffc0, 0xe31e), "f3&sQ8A9" },
82efde3a 209
252b5132
RH
210{"ptrapacw", two(0xf07a, 0x0007), two(0xffff, 0xffff), "#w"},
211{"ptrapacl", two(0xf07b, 0x0007), two(0xffff, 0xffff), "#l"},
212{"ptrapac", two(0xf07c, 0x0007), two(0xffff, 0xffff), ""},
82efde3a 213
252b5132
RH
214{"ptrapasw", two(0xf07a, 0x0006), two(0xffff, 0xffff), "#w"},
215{"ptrapasl", two(0xf07b, 0x0006), two(0xffff, 0xffff), "#l"},
216{"ptrapas", two(0xf07c, 0x0006), two(0xffff, 0xffff), ""},
82efde3a 217
252b5132
RH
218{"ptrapbcw", two(0xf07a, 0x0001), two(0xffff, 0xffff), "#w"},
219{"ptrapbcl", two(0xf07b, 0x0001), two(0xffff, 0xffff), "#l"},
220{"ptrapbc", two(0xf07c, 0x0001), two(0xffff, 0xffff), ""},
82efde3a 221
252b5132
RH
222{"ptrapbsw", two(0xf07a, 0x0000), two(0xffff, 0xffff), "#w"},
223{"ptrapbsl", two(0xf07b, 0x0000), two(0xffff, 0xffff), "#l"},
224{"ptrapbs", two(0xf07c, 0x0000), two(0xffff, 0xffff), ""},
82efde3a 225
252b5132
RH
226{"ptrapccw", two(0xf07a, 0x000f), two(0xffff, 0xffff), "#w"},
227{"ptrapccl", two(0xf07b, 0x000f), two(0xffff, 0xffff), "#l"},
228{"ptrapcc", two(0xf07c, 0x000f), two(0xffff, 0xffff), ""},
82efde3a 229
252b5132
RH
230{"ptrapcsw", two(0xf07a, 0x000e), two(0xffff, 0xffff), "#w"},
231{"ptrapcsl", two(0xf07b, 0x000e), two(0xffff, 0xffff), "#l"},
232{"ptrapcs", two(0xf07c, 0x000e), two(0xffff, 0xffff), ""},
82efde3a 233
252b5132
RH
234{"ptrapgcw", two(0xf07a, 0x000d), two(0xffff, 0xffff), "#w"},
235{"ptrapgcl", two(0xf07b, 0x000d), two(0xffff, 0xffff), "#l"},
236{"ptrapgc", two(0xf07c, 0x000d), two(0xffff, 0xffff), ""},
82efde3a 237
252b5132
RH
238{"ptrapgsw", two(0xf07a, 0x000c), two(0xffff, 0xffff), "#w"},
239{"ptrapgsl", two(0xf07b, 0x000c), two(0xffff, 0xffff), "#l"},
240{"ptrapgs", two(0xf07c, 0x000c), two(0xffff, 0xffff), ""},
82efde3a 241
252b5132
RH
242{"ptrapicw", two(0xf07a, 0x000b), two(0xffff, 0xffff), "#w"},
243{"ptrapicl", two(0xf07b, 0x000b), two(0xffff, 0xffff), "#l"},
244{"ptrapic", two(0xf07c, 0x000b), two(0xffff, 0xffff), ""},
82efde3a 245
252b5132
RH
246{"ptrapisw", two(0xf07a, 0x000a), two(0xffff, 0xffff), "#w"},
247{"ptrapisl", two(0xf07b, 0x000a), two(0xffff, 0xffff), "#l"},
248{"ptrapis", two(0xf07c, 0x000a), two(0xffff, 0xffff), ""},
82efde3a 249
252b5132
RH
250{"ptraplcw", two(0xf07a, 0x0003), two(0xffff, 0xffff), "#w"},
251{"ptraplcl", two(0xf07b, 0x0003), two(0xffff, 0xffff), "#l"},
252{"ptraplc", two(0xf07c, 0x0003), two(0xffff, 0xffff), ""},
82efde3a 253
252b5132
RH
254{"ptraplsw", two(0xf07a, 0x0002), two(0xffff, 0xffff), "#w"},
255{"ptraplsl", two(0xf07b, 0x0002), two(0xffff, 0xffff), "#l"},
256{"ptrapls", two(0xf07c, 0x0002), two(0xffff, 0xffff), ""},
82efde3a 257
252b5132
RH
258{"ptrapscw", two(0xf07a, 0x0005), two(0xffff, 0xffff), "#w"},
259{"ptrapscl", two(0xf07b, 0x0005), two(0xffff, 0xffff), "#l"},
260{"ptrapsc", two(0xf07c, 0x0005), two(0xffff, 0xffff), ""},
82efde3a 261
252b5132
RH
262{"ptrapssw", two(0xf07a, 0x0004), two(0xffff, 0xffff), "#w"},
263{"ptrapssl", two(0xf07b, 0x0004), two(0xffff, 0xffff), "#l"},
264{"ptrapss", two(0xf07c, 0x0004), two(0xffff, 0xffff), ""},
82efde3a 265
252b5132
RH
266{"ptrapwcw", two(0xf07a, 0x0009), two(0xffff, 0xffff), "#w"},
267{"ptrapwcl", two(0xf07b, 0x0009), two(0xffff, 0xffff), "#l"},
268{"ptrapwc", two(0xf07c, 0x0009), two(0xffff, 0xffff), ""},
82efde3a 269
252b5132
RH
270{"ptrapwsw", two(0xf07a, 0x0008), two(0xffff, 0xffff), "#w"},
271{"ptrapwsl", two(0xf07b, 0x0008), two(0xffff, 0xffff), "#l"},
272{"ptrapws", two(0xf07c, 0x0008), two(0xffff, 0xffff), ""},
82efde3a 273
252b5132
RH
274{"pvalid", two(0xf000, 0x2800), two(0xffc0, 0xffff), "Vs&s"},
275{"pvalid", two(0xf000, 0x2c00), two(0xffc0, 0xfff8), "A3&s" },
252b5132 276
82efde3a 277#endif /* m68851 */
This page took 0.515423 seconds and 4 git commands to generate.