#include "common.h"
#include "main.h"
#include "ralloc.h"
-#include "gen.h"
+//#include "gen.h"
+
static char _defaultRules[] =
{
NULL
};
+void pCodeInitRegisters(void);
void pic14_assignRegisters (eBBlock ** ebbs, int count);
_pic14_init (void)
{
asm_addTree (&asm_asxxxx_mapping);
+ pCodeInitRegisters();
}
static void
static void
_pic14_genAssemblerPreamble (FILE * of)
{
- fprintf (of, "\tlist\tp=16c84\n");
+ fprintf (of, "\tlist\tp=16f877\n");
fprintf (of, "\t__config _wdt_off\n");
- fprintf (of, "\ninclude \"p16c84.inc\"\n");
+ fprintf (of, "\ninclude \"p16f877.inc\"\n");
}
/* Generate interrupt vector table. */
{
_asmCmd,
NULL,
+ NULL,
NULL,
//"-plosgffc", /* Options with debug */
//"-plosgff", /* Options without debug */
- 0
+ 0,
+ ".asm"
},
{
_linkCmd,
NULL,
+ NULL,
".rel"
},
{
},
{
/* Sizes: char, short, int, long, ptr, fptr, gptr, bit, float, max */
- 1, 1, 2, 4, 1, 2, 1, 1, 4, 4
+ 1, 2, 2, 4, 1, 2, 1, 1, 4, 4
/* TSD - I changed the size of gptr from 3 to 1. However, it should be
2 so that we can accomodate the PIC's with 4 register banks (like the
16f877)
},
/* pic14 has an 8 bit mul */
{
- 1, 0
+ 1, -1
},
"_",
_pic14_init,
_pic14_reset_regparm,
_pic14_regparm,
NULL,
+ NULL,
+ NULL,
FALSE,
0, /* leave lt */
0, /* leave gt */
1, /* transform >= to ! < */
1, /* transform != to !(a == b) */
0, /* leave == */
+ FALSE, /* No array initializer support. */
PORT_MAGIC
};