1 #define RCSID4 "$Id: mach4.c,v 0.3 1994/06/24 12:55:53 ceriel Exp $"
4 * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
5 * See the copyright notice in the ACK home directory, in the file "Copyright".
10 * Motorola 6805 parsing rules
24 fit((unsigned) $1 <= 7);
36 BBRANCH bitexp ',' expr8 ',' expr
38 branch($1+($2 << 1), $6, $4);
45 newrelo($4.typ, RELO1);
56 newrelo($2.typ, RELO1);
63 if(small($2.val == 0 &&
64 ($2.typ & ~S_DOT) == DOTTYP &&
71 newrelo($2.typ, RELO1);
92 newrelo($3.typ, RELO1);
101 newrelo($3.typ, RELO1);
108 if(small(pass == PASS_2 &&
109 ($2.typ & ~S_DOT) == DOTTYP &&
113 newrelo($2.typ, RELO1);
119 newrelo($2.typ, RELO2|RELBR);
129 newrelo($3.typ, RELO2|RELBR);
138 newrelo($3.typ, RELO2|RELBR);
145 if(small(pass == PASS_2 &&
146 ($2.typ & ~S_DOT) == DOTTYP &&
148 if(small(pass == PASS_2 &&
149 ($2.typ & ~S_DOT) == DOTTYP &&
155 newrelo($2.typ, RELO1);
160 small(0,1); /* dummy */
163 newrelo($2.typ, RELO2|RELBR);
173 newrelo($3.typ, RELO1);
190 serror("bad opcode");