as.h 638 B

123456789101112131415161718192021222324252627282930
  1. /* When generating assembly : */
  2. #define ARITH_FMT "%ld"
  3. #define INT_FMT "%d"
  4. /* When generating object code : */
  5. #define CONST 0
  6. #define REGISTER 1
  7. #define AUTO_DEC 2
  8. #define AUTO_INC 3
  9. #define REG_DEF 4
  10. #define IND_REG 5
  11. #define LABEL 6
  12. #define L_ILB 7
  13. #define TRUE 1
  14. #define FALSE 0
  15. #define PC_REL 1
  16. struct t_operand {
  17. int type, num;
  18. char *lab, *indx, *cst, *offset;
  19. /* Changed names of identifiers "index" and "const" */
  20. };
  21. #define fit_6bits(val) ((unsigned long)(val) < 64)
  22. #define fit_byte(val) ((unsigned long)((val)+128) < 256)
  23. #define fit_word(val) ((unsigned long)((val)+32768L) < 65536L)