2 * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
3 * See the copyright notice in the ACK home directory, in the file "Copyright".
5 #define RCSID5 "$Id: mach5.c,v 3.4 1994/06/24 13:54:57 ceriel Exp $"
8 * Zilog Z80 special routines
18 serror("register error");
27 RELOMOVE(relonami, rel_ind);
28 newrelo(exp_ind.typ, RELO1);
34 branch(opc,exp) register opc; expr_t exp; {
37 dist = exp.val - (DOTVAL + 2);
38 if (pass == PASS_2 && dist > 0 && !(exp.typ & S_DOT))
41 if ((exp.typ & ~S_DOT) != DOTTYP)
43 if (opc == 020) { /* DJNZ must be short */
46 } else if ((sm = small(sm,1)) == 0) {
47 if (opc == 030) /* 'JR exp' */
48 opc = 0303; /* replace by 'JP exp' */
49 else /* 'JR CC,exp' */
50 opc ^= 0342; /* replace by 'JP CC,exp' */
55 newrelo(exp.typ, RELO2);