/*-------------------------------------------------------------------------
- gen.c - source file for code generation for 8051
+ gen.c - source file for code generation for DS80C390
Written By - Sandeep Dutta . sandeep.dutta@usa.net (1998)
and - Jean-Louis VERN.jlvern@writeme.com (1999)
In other words, you are welcome to use, share and improve this program.
You are forbidden to forbid anyone else to use, share and improve
what you give them. Help stamp out software-hoarding!
-
- Notes:
- 000123 mlh Moved aopLiteral to SDCCglue.c to help the split
- Made everything static
-------------------------------------------------------------------------*/
#include <stdio.h>
#endif
char *aopLiteral (value * val, int offset);
-#if 0
-//REMOVE ME!!!
-extern int allocInfo;
-#endif
/* this is the down and dirty file with all kinds of
kludgy & hacky stuff. This is what it is all about
static void
reAdjustPreg (asmop * aop)
{
- emitcode (";jwk","reAdjustPreg: %d", aop->coff);
if ((aop->coff==0) || (aop->size <= 1)) {
return;
}
static void
reAdjustPreg (asmop * aop)
{
- int size;
-
aop->coff = 0;
- if ((size = aop->size) <= 1)
+ if ((aop->coff==0) || aop->size <= 1)
return;
- size--;
+
switch (aop->type)
{
case AOP_R0:
case AOP_R1:
- while (size--)
+ while (aop->coff--)
emitcode ("dec", "%s", aop->aopu.aop_ptr->name);
break;
case AOP_DPTR:
{
genSetDPTR (1);
}
- while (size--)
+ while (aop->coff--)
{
emitcode ("lcall", "__decdptr");
}
if (options.dump_rassgn)
{
dumpEbbsToFileExt (".dumprassgn", ebbs, count);
- dumpLiveRanges (".lrange", liveRanges);
+ dumpLiveRanges (".dumplrange", liveRanges);
}
/* do the overlaysegment stuff SDCCmem.c */