hltype.cpp 384 B

12345678910111213141516171819202122232425
  1. #include "icode.h"
  2. #include "ast.h"
  3. void HLTYPE::replaceExpr(Expr *e)
  4. {
  5. assert(e);
  6. delete exp.v;
  7. exp.v=e;
  8. }
  9. HlTypeSupport *HLTYPE::get()
  10. {
  11. switch(opcode)
  12. {
  13. case HLI_ASSIGN: return &asgn;
  14. case HLI_RET:
  15. case HLI_POP:
  16. case HLI_JCOND:
  17. case HLI_PUSH: return &exp;
  18. case HLI_CALL: return &call;
  19. default:
  20. return nullptr;
  21. }
  22. }