projects
/
fw
/
sdcc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
* as/hc08/lkaomf51.c (OutputName),
[fw/sdcc]
/
src
/
hc08
/
ralloc.c
diff --git
a/src/hc08/ralloc.c
b/src/hc08/ralloc.c
index 97a6cdafbb8caa16ec4cac53daa3ac7451a5c2b7..995b78763b3f8a0353d4d2b566ee7da231868015 100644
(file)
--- a/
src/hc08/ralloc.c
+++ b/
src/hc08/ralloc.c
@@
-1953,7
+1953,6
@@
packRegsForAssign (iCode * ic, eBBlock * ebp)
return 0;
}
return 0;
}
-
/* if the true symbol is defined in far space or on stack
then we should not since this will increase register pressure */
#if 0
/* if the true symbol is defined in far space or on stack
then we should not since this will increase register pressure */
#if 0
@@
-2028,16
+2027,18
@@
packRegsForAssign (iCode * ic, eBBlock * ebp)
return 0; /* did not find */
/* if assignment then check that right is not a bit */
return 0; /* did not find */
/* if assignment then check that right is not a bit */
- if (ASSIGNMENT (
dic) && !POINTER_SET (d
ic))
+ if (ASSIGNMENT (
ic) && !POINTER_SET (
ic))
{
{
- sym_link *etype = operandType (IC_R
IGH
T (dic));
+ sym_link *etype = operandType (IC_R
ESUL
T (dic));
if (IS_BITFIELD (etype))
{
/* if result is a bit too then it's ok */
if (IS_BITFIELD (etype))
{
/* if result is a bit too then it's ok */
-
etype = operandType (IC_RESULT (d
ic));
+
etype = operandType (IC_RESULT (
ic));
if (!IS_BITFIELD (etype))
if (!IS_BITFIELD (etype))
- return 0;
- }
+ {
+ return 0;
+ }
+ }
}
/* if the result is on stack or iaccess then it must be
the same atleast one of the operands */
}
/* if the result is on stack or iaccess then it must be
the same atleast one of the operands */
@@
-3055,8
+3056,10
@@
packRegisters (eBBlock ** ebpp, int blockno)
/* assignRegisters - assigns registers to each live range as need */
/*-----------------------------------------------------------------*/
void
/* assignRegisters - assigns registers to each live range as need */
/*-----------------------------------------------------------------*/
void
-hc08_assignRegisters (e
BBlock ** ebbs, int count
)
+hc08_assignRegisters (e
bbIndex * ebbi
)
{
{
+ eBBlock ** ebbs = ebbi->bbOrder;
+ int count = ebbi->count;
iCode *ic;
int i;
iCode *ic;
int i;
@@
-3083,7
+3086,7
@@
hc08_assignRegisters (eBBlock ** ebbs, int count)
recomputeLiveRanges (ebbs, count);
if (options.dump_pack)
recomputeLiveRanges (ebbs, count);
if (options.dump_pack)
- dumpEbbsToFileExt (DUMP_PACK, ebb
s, count
);
+ dumpEbbsToFileExt (DUMP_PACK, ebb
i
);
/* first determine for each live range the number of
registers & the type of registers required for each */
/* first determine for each live range the number of
registers & the type of registers required for each */
@@
-3123,7
+3126,7
@@
hc08_assignRegisters (eBBlock ** ebbs, int count)
if (options.dump_rassgn)
{
if (options.dump_rassgn)
{
- dumpEbbsToFileExt (DUMP_RASSGN, ebb
s, count
);
+ dumpEbbsToFileExt (DUMP_RASSGN, ebb
i
);
dumpLiveRanges (DUMP_LRANGE, liveRanges);
}
dumpLiveRanges (DUMP_LRANGE, liveRanges);
}
@@
-3138,8
+3141,8
@@
hc08_assignRegisters (eBBlock ** ebbs, int count)
/* free up any _G.stackSpil locations allocated */
applyToSet (_G.stackSpil, deallocStackSpil);
_G.slocNum = 0;
/* free up any _G.stackSpil locations allocated */
applyToSet (_G.stackSpil, deallocStackSpil);
_G.slocNum = 0;
- setToNull ((void *
*
) &_G.stackSpil);
- setToNull ((void *
*
) &_G.spiltSet);
+ setToNull ((void *) &_G.stackSpil);
+ setToNull ((void *) &_G.spiltSet);
/* mark all registers as free */
freeAllRegs ();
/* mark all registers as free */
freeAllRegs ();