coerc.h 1014 B

123456789101112131415161718192021222324252627
  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. #ifndef LANG_NCGG_COERC_H
  6. #define LANG_NCGG_COERC_H
  7. #include "iocc.h"
  8. #include "varinfo.h"
  9. /* util/ncgg/coerc.c */
  10. void n_move(int s1, int e1, int s2, int e2, struct varinfo *vi);
  11. int existmove(iocc_t from, short *sp);
  12. int existalmove(iocc_t from, int prpno);
  13. struct varinfo *gen_move(iocc_t from, iocc_t to);
  14. void n_test(int s, int e, struct varinfo *vi);
  15. struct varinfo *gen_test(iocc_t from);
  16. struct varinfo *gen_label(int arg);
  17. struct varinfo *gen_preturn(void);
  18. struct varinfo *gen_tlab(int n);
  19. void n_stack(int s, int e, int p, struct varinfo *vi);
  20. void checkstacking(short *sp);
  21. void n_coerc(int ti, int be, struct varinfo *al, struct varinfo *ge, struct varinfo *rp, iocc_t in);
  22. void checkunstacking(int setno);
  23. void n_split(int ti, int be, struct varinfo *al, struct varinfo *ge, struct varinfo *rp, int n);
  24. #endif /* LANG_NCGG_COERC_H */