Commit | Line | Data |
---|---|---|
354ce2a2 TL |
1 | # |
2 | char AS3[] = "@(#)as3.c 1.10 79/03/21 22:27:36"; /* sccs ident */ | |
3 | #include <stdio.h> | |
4 | #include "as.h" | |
5 | #include "as.yh" | |
6 | ||
7 | #define OP(a,b,c,d,e,f,g,h,i) {a,b,(c==0 ? INST0-256:INSTn-256),c,d,e,f,g,h,i} | |
8 | ||
9 | readonly struct instab instab[] = { | |
10 | {".space", 0, ISPACE-256}, | |
11 | {".byte", 0, IBYTE-256}, | |
12 | {".word", 0, IWORD-256}, | |
13 | {".long", 0, ILONG-256}, | |
14 | {".int", 0, IINT-256}, | |
15 | {".data", 0, IDATA-256}, | |
16 | {".globl", 0, IGLOBAL-256}, | |
17 | {".set", 0, ISET-256}, | |
18 | {".text", 0, ITEXT-256}, | |
19 | {".comm", 0, ICOMM-256}, | |
20 | {".lcomm", 0, ILCOMM-256}, | |
21 | {".lsym", 0, ILSYM-256}, | |
22 | {".align", 0, IALIGN-256}, | |
23 | {".float", 0, IFLOAT-256}, | |
24 | {".double", 0, IDOUBLE-256}, | |
25 | {".org", 0, IORG-256}, | |
26 | {".stab", 0, ISTAB-256}, | |
27 | {"r0",0,REG-256}, | |
28 | {"r1",1,REG-256}, | |
29 | {"r2",2,REG-256}, | |
30 | {"r3",3,REG-256}, | |
31 | {"r4",4,REG-256}, | |
32 | {"r5",5,REG-256}, | |
33 | {"r6",6,REG-256}, | |
34 | {"r7",7,REG-256}, | |
35 | {"r8",8,REG-256}, | |
36 | {"r9",9,REG-256}, | |
37 | {"r10",10,REG-256}, | |
38 | {"r11",11,REG-256}, | |
39 | {"r12",12,REG-256}, | |
40 | {"r13",13,REG-256}, | |
41 | {"r14",14,REG-256}, | |
42 | {"r15",15,REG-256}, | |
43 | {"ap",12,REG-256}, | |
44 | {"fp",13,REG-256}, | |
45 | {"sp",14,REG-256}, | |
46 | {"pc",15,REG-256}, | |
47 | {"jcc",0x1e,IJXXX-256}, | |
48 | {"jcs",0x1f,IJXXX-256}, | |
49 | {"jeql",0x13,IJXXX-256}, | |
50 | {"jeqlu",0x13,IJXXX-256}, | |
51 | {"jgeq",0x18,IJXXX-256}, | |
52 | {"jgequ",0x1e,IJXXX-256}, | |
53 | {"jgtr",0x14,IJXXX-256}, | |
54 | {"jgtru",0x1a,IJXXX-256}, | |
55 | {"jleq",0x15,IJXXX-256}, | |
56 | {"jlequ",0x1b,IJXXX-256}, | |
57 | {"jlss",0x19,IJXXX-256}, | |
58 | {"jlssu",0x1f,IJXXX-256}, | |
59 | {"jneq",0x12,IJXXX-256}, | |
60 | {"jnequ",0x12,IJXXX-256}, | |
61 | {"jvc",0x1c,IJXXX-256}, | |
62 | {"jvs",0x1d,IJXXX-256}, | |
63 | {"jbr",0x11,IJXXX-256}, | |
64 | {"jbc",0xe1,IJXXX-256}, | |
65 | {"jbs",0xe0,IJXXX-256}, | |
66 | {"jbcc",0xe5,IJXXX-256}, | |
67 | {"jbsc",0xe4,IJXXX-256}, | |
68 | {"jbcs",0xe3,IJXXX-256}, | |
69 | {"jbss",0xe2,IJXXX-256}, | |
70 | {"jlbc",0xe9,IJXXX-256}, | |
71 | {"jlbs",0xe8,IJXXX-256}, | |
72 | #include "instrs" | |
73 | 0 | |
74 | }; |