#include "SDCCicode.h"
#include "SDCCargs.h"
#include "SDCCpeeph.h"
+#include "dbuf.h"
+#include "mcs51/peep.h"
#define TARGET_ID_MCS51 1
#define TARGET_ID_GBZ80 2
*/
#define TARGET_IS_MCS51 (port->id==TARGET_ID_MCS51)
#define TARGET_IS_GBZ80 (port->id==TARGET_ID_GBZ80)
-#define TARGET_IS_Z80 (port->id==TARGET_ID_Z80)
-#define TARGET_IS_AVR (port->id==TARGET_ID_AVR)
+#define TARGET_IS_Z80 (port->id==TARGET_ID_Z80)
+#define TARGET_Z80_LIKE ((port->id==TARGET_ID_Z80) || (port->id==TARGET_ID_GBZ80))
+#define TARGET_IS_AVR (port->id==TARGET_ID_AVR)
#define TARGET_IS_DS390 (port->id==TARGET_ID_DS390)
#define TARGET_IS_DS400 (port->id==TARGET_ID_DS400)
#define TARGET_IS_PIC (port->id==TARGET_ID_PIC)
#define TARGET_IS_PIC16 (port->id==TARGET_ID_PIC16)
-#define TARGET_IS_XA51 (port->id==TARGET_ID_XA51)
-#define TARGET_IS_HC08 (port->id==TARGET_ID_HC08)
+#define TARGET_IS_XA51 (port->id==TARGET_ID_XA51)
+#define TARGET_IS_HC08 (port->id==TARGET_ID_HC08)
#define MAX_BUILTIN_ARGS 16
/* definition of builtin functions */
int (*getSize)(lineNode *line);
bitVect * (*getRegsRead)(lineNode *line);
bitVect * (*getRegsWritten)(lineNode *line);
+ bool (*deadMove) (const char *reg, lineNode *currPl, lineNode *head);
}
peep;
* it returns zero, default (8051) IVT generation code
* will be used.
*/
- int (*genIVT) (FILE * of, symbol ** intTable, int intCount);
+ int (*genIVT) (struct dbuf_s *oBuf, symbol ** intTable, int intCount);
void (*genXINIT) (FILE * of);