void *alloc(unsigned int);
char *allocstring(char *);
void replacestring(char **, char *, char *);
void createmove(int, char *, char *, struct assemline *);
void assignlabel(struct bblk *, char *);
struct bblk *newblk(char *);
void freeblk(struct bblk *);
int inblist(struct blist *, struct bblk *);
void freeblist(struct blist *);
struct assemline *newline(char *);
void hookupline(struct bblk *, struct assemline *, struct assemline *);
void unhookline(struct assemline *);
struct assemline *insline(struct bblk *, struct assemline *, char *);
void delline(struct assemline *);
void freeline(struct assemline *);
void addtoblist(struct blist **, struct bblk *);
void deleteblk(struct bblk *);
void unlinkblk(struct bblk *);
void delfrompreds_succs(struct bblk *);
void delfromsuccs_preds(struct bblk *);
struct bblk *delfromblist(struct blist **, struct bblk *);
struct loopnode *newloop();
void freeloops();
void dumploops(FILE *);
void dumploop(FILE *, struct loopnode *);
void quit(int);
