]> git.lizzy.rs Git - plan9front.git/blob - sys/src/cmd/8c/8.out.h
import updated compilers from sources
[plan9front.git] / sys / src / cmd / 8c / 8.out.h
1 #define NSYM    50
2 #define NSNAME  8
3 #define NOPROF  (1<<0)
4 #define DUPOK   (1<<1)
5 #define NOSPLIT (1<<2)
6
7 enum    as
8 {
9         AXXX,
10         AAAA,
11         AAAD,
12         AAAM,
13         AAAS,
14         AADCB,
15         AADCL,
16         AADCW,
17         AADDB,
18         AADDL,
19         AADDW,
20         AADJSP,
21         AANDB,
22         AANDL,
23         AANDW,
24         AARPL,
25         ABOUNDL,
26         ABOUNDW,
27         ABSFL,
28         ABSFW,
29         ABSRL,
30         ABSRW,
31         ABTL,
32         ABTW,
33         ABTCL,
34         ABTCW,
35         ABTRL,
36         ABTRW,
37         ABTSL,
38         ABTSW,
39         ABYTE,
40         ACALL,
41         ACLC,
42         ACLD,
43         ACLI,
44         ACLTS,
45         ACMC,
46         ACMPB,
47         ACMPL,
48         ACMPW,
49         ACMPSB,
50         ACMPSL,
51         ACMPSW,
52         ADAA,
53         ADAS,
54         ADATA,
55         ADECB,
56         ADECL,
57         ADECW,
58         ADIVB,
59         ADIVL,
60         ADIVW,
61         AENTER,
62         AGLOBL,
63         AGOK,
64         AHISTORY,
65         AHLT,
66         AIDIVB,
67         AIDIVL,
68         AIDIVW,
69         AIMULB,
70         AIMULL,
71         AIMULW,
72         AINB,
73         AINL,
74         AINW,
75         AINCB,
76         AINCL,
77         AINCW,
78         AINSB,
79         AINSL,
80         AINSW,
81         AINT,
82         AINTO,
83         AIRETL,
84         AIRETW,
85         AJCC,
86         AJCS,
87         AJCXZ,
88         AJEQ,
89         AJGE,
90         AJGT,
91         AJHI,
92         AJLE,
93         AJLS,
94         AJLT,
95         AJMI,
96         AJMP,
97         AJNE,
98         AJOC,
99         AJOS,
100         AJPC,
101         AJPL,
102         AJPS,
103         ALAHF,
104         ALARL,
105         ALARW,
106         ALEAL,
107         ALEAW,
108         ALEAVEL,
109         ALEAVEW,
110         ALOCK,
111         ALODSB,
112         ALODSL,
113         ALODSW,
114         ALONG,
115         ALOOP,
116         ALOOPEQ,
117         ALOOPNE,
118         ALSLL,
119         ALSLW,
120         AMOVB,
121         AMOVL,
122         AMOVW,
123         AMOVBLSX,
124         AMOVBLZX,
125         AMOVBWSX,
126         AMOVBWZX,
127         AMOVWLSX,
128         AMOVWLZX,
129         AMOVSB,
130         AMOVSL,
131         AMOVSW,
132         AMULB,
133         AMULL,
134         AMULW,
135         ANAME,
136         ANEGB,
137         ANEGL,
138         ANEGW,
139         ANOP,
140         ANOTB,
141         ANOTL,
142         ANOTW,
143         AORB,
144         AORL,
145         AORW,
146         AOUTB,
147         AOUTL,
148         AOUTW,
149         AOUTSB,
150         AOUTSL,
151         AOUTSW,
152         APOPAL,
153         APOPAW,
154         APOPFL,
155         APOPFW,
156         APOPL,
157         APOPW,
158         APUSHAL,
159         APUSHAW,
160         APUSHFL,
161         APUSHFW,
162         APUSHL,
163         APUSHW,
164         ARCLB,
165         ARCLL,
166         ARCLW,
167         ARCRB,
168         ARCRL,
169         ARCRW,
170         AREP,
171         AREPN,
172         ARET,
173         AROLB,
174         AROLL,
175         AROLW,
176         ARORB,
177         ARORL,
178         ARORW,
179         ASAHF,
180         ASALB,
181         ASALL,
182         ASALW,
183         ASARB,
184         ASARL,
185         ASARW,
186         ASBBB,
187         ASBBL,
188         ASBBW,
189         ASCASB,
190         ASCASL,
191         ASCASW,
192         ASETCC,
193         ASETCS,
194         ASETEQ,
195         ASETGE,
196         ASETGT,
197         ASETHI,
198         ASETLE,
199         ASETLS,
200         ASETLT,
201         ASETMI,
202         ASETNE,
203         ASETOC,
204         ASETOS,
205         ASETPC,
206         ASETPL,
207         ASETPS,
208         ACDQ,
209         ACWD,
210         ASHLB,
211         ASHLL,
212         ASHLW,
213         ASHRB,
214         ASHRL,
215         ASHRW,
216         ASTC,
217         ASTD,
218         ASTI,
219         ASTOSB,
220         ASTOSL,
221         ASTOSW,
222         ASUBB,
223         ASUBL,
224         ASUBW,
225         ASYSCALL,
226         ATESTB,
227         ATESTL,
228         ATESTW,
229         ATEXT,
230         AVERR,
231         AVERW,
232         AWAIT,
233         AWORD,
234         AXCHGB,
235         AXCHGL,
236         AXCHGW,
237         AXLAT,
238         AXORB,
239         AXORL,
240         AXORW,
241
242         AFMOVB,
243         AFMOVBP,
244         AFMOVD,
245         AFMOVDP,
246         AFMOVF,
247         AFMOVFP,
248         AFMOVL,
249         AFMOVLP,
250         AFMOVV,
251         AFMOVVP,
252         AFMOVW,
253         AFMOVWP,
254         AFMOVX,
255         AFMOVXP,
256
257         AFCOMB,
258         AFCOMBP,
259         AFCOMD,
260         AFCOMDP,
261         AFCOMDPP,
262         AFCOMF,
263         AFCOMFP,
264         AFCOML,
265         AFCOMLP,
266         AFCOMW,
267         AFCOMWP,
268         AFUCOM,
269         AFUCOMP,
270         AFUCOMPP,
271
272         AFADDDP,
273         AFADDW,
274         AFADDL,
275         AFADDF,
276         AFADDD,
277
278         AFMULDP,
279         AFMULW,
280         AFMULL,
281         AFMULF,
282         AFMULD,
283
284         AFSUBDP,
285         AFSUBW,
286         AFSUBL,
287         AFSUBF,
288         AFSUBD,
289
290         AFSUBRDP,
291         AFSUBRW,
292         AFSUBRL,
293         AFSUBRF,
294         AFSUBRD,
295
296         AFDIVDP,
297         AFDIVW,
298         AFDIVL,
299         AFDIVF,
300         AFDIVD,
301
302         AFDIVRDP,
303         AFDIVRW,
304         AFDIVRL,
305         AFDIVRF,
306         AFDIVRD,
307
308         AFXCHD,
309         AFFREE,
310
311         AFLDCW,
312         AFLDENV,
313         AFRSTOR,
314         AFSAVE,
315         AFSTCW,
316         AFSTENV,
317         AFSTSW,
318
319         AF2XM1,
320         AFABS,
321         AFCHS,
322         AFCLEX,
323         AFCOS,
324         AFDECSTP,
325         AFINCSTP,
326         AFINIT,
327         AFLD1,
328         AFLDL2E,
329         AFLDL2T,
330         AFLDLG2,
331         AFLDLN2,
332         AFLDPI,
333         AFLDZ,
334         AFNOP,
335         AFPATAN,
336         AFPREM,
337         AFPREM1,
338         AFPTAN,
339         AFRNDINT,
340         AFSCALE,
341         AFSIN,
342         AFSINCOS,
343         AFSQRT,
344         AFTST,
345         AFXAM,
346         AFXTRACT,
347         AFYL2X,
348         AFYL2XP1,
349
350         AEND,
351
352         ADYNT,
353         AINIT,
354
355         ASIGNAME,
356
357         AFCOMI,
358         AFCOMIP,
359         AFUCOMI,
360         AFUCOMIP,
361         ACMPXCHGB,
362         ACMPXCHGL,
363         ACMPXCHGW,
364
365         /* conditional move */
366         ACMOVLCC,
367         ACMOVLCS,
368         ACMOVLEQ,
369         ACMOVLGE,
370         ACMOVLGT,
371         ACMOVLHI,
372         ACMOVLLE,
373         ACMOVLLS,
374         ACMOVLLT,
375         ACMOVLMI,
376         ACMOVLNE,
377         ACMOVLOC,
378         ACMOVLOS,
379         ACMOVLPC,
380         ACMOVLPL,
381         ACMOVLPS,
382         ACMOVWCC,
383         ACMOVWCS,
384         ACMOVWEQ,
385         ACMOVWGE,
386         ACMOVWGT,
387         ACMOVWHI,
388         ACMOVWLE,
389         ACMOVWLS,
390         ACMOVWLT,
391         ACMOVWMI,
392         ACMOVWNE,
393         ACMOVWOC,
394         ACMOVWOS,
395         ACMOVWPC,
396         ACMOVWPL,
397         ACMOVWPS,
398
399         AFCMOVCC,
400         AFCMOVCS,
401         AFCMOVEQ,
402         AFCMOVHI,
403         AFCMOVLS,
404         AFCMOVNE,
405         AFCMOVNU,
406         AFCMOVUN,
407
408         /* add new operations here. nowhere else. here. */
409         ALAST
410 };
411
412 enum
413 {
414         D_AL            = 0,
415         D_CL,
416         D_DL,
417         D_BL,
418
419         D_AH            = 4,
420         D_CH,
421         D_DH,
422         D_BH,
423
424         D_AX            = 8,
425         D_CX,
426         D_DX,
427         D_BX,
428         D_SP,
429         D_BP,
430         D_SI,
431         D_DI,
432
433         D_F0            = 16,
434         D_F7            = D_F0 + 7,
435
436         D_CS            = 24,
437         D_SS,
438         D_DS,
439         D_ES,
440         D_FS,
441         D_GS,
442
443         D_GDTR,         /* global descriptor table register */
444         D_IDTR,         /* interrupt descriptor table register */
445         D_LDTR,         /* local descriptor table register */
446         D_MSW,          /* machine status word */
447         D_TASK,         /* task register */
448
449         D_CR            = 35,
450         D_DR            = 43,
451         D_TR            = 51,
452
453         D_NONE          = 59,
454
455         D_BRANCH        = 60,
456         D_EXTERN        = 61,
457         D_STATIC        = 62,
458         D_AUTO          = 63,
459         D_PARAM         = 64,
460         D_CONST         = 65,
461         D_FCONST        = 66,
462         D_SCONST        = 67,
463         D_ADDR          = 68,
464
465         D_FILE,
466         D_FILE1,
467
468         D_INDIR,        /* additive */
469
470         D_CONST2 = D_INDIR+D_INDIR,
471
472         D_SIZE, /* 8l internal */
473
474         T_TYPE          = 1<<0,
475         T_INDEX         = 1<<1,
476         T_OFFSET        = 1<<2,
477         T_FCONST        = 1<<3,
478         T_SYM           = 1<<4,
479         T_SCONST        = 1<<5,
480         T_OFFSET2       = 1<<6,
481         T_GOTYPE        = 1<<7,
482
483         REGARG          = -1,
484         REGRET          = D_AX,
485         FREGRET         = D_F0,
486         REGSP           = D_SP,
487         REGTMP          = D_DI,
488 };
489
490 /*
491  * this is the ranlib header
492  */
493 #define SYMDEF  "__.SYMDEF"
494
495 /*
496  * this is the simulated IEEE floating point
497  */
498 typedef struct  ieee    Ieee;
499 struct  ieee
500 {
501         long    l;      /* contains ls-man      0xffffffff */
502         long    h;      /* contains sign        0x80000000
503                                     exp         0x7ff00000
504                                     ms-man      0x000fffff */
505 };