regvar.h 755 B

12345678910111213141516171819202122232425262728293031323334
  1. /*
  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".
  4. */
  5. /* $Id$ */
  6. #ifndef MACH_PROTO_NCG_REGVAR_H
  7. #define MACH_PROTO_NCG_REGVAR_H
  8. struct regvar {
  9. struct regvar *rv_next;
  10. long rv_off;
  11. int rv_size;
  12. int rv_type;
  13. int rv_score;
  14. int rv_reg;
  15. };
  16. struct regassigned {
  17. struct regvar *ra_rv;
  18. int ra_score;
  19. };
  20. extern struct regvar *rvlist;
  21. extern int nregvar[];
  22. extern struct regassigned *regassigned[];
  23. struct regvar *linkreg(long of, int sz, int tp, int sc);
  24. void tryreg(struct regvar *rvlp, int typ);
  25. void fixregvars(int saveall);
  26. int isregvar(long off);
  27. int isregtyp(long off);
  28. void unlinkregs();
  29. #endif /* MACH_PROTO_NCG_REGVAR_H */