projects
/
fw
/
sdcc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
create/append dumpfiles on a per session base
[fw/sdcc]
/
src
/
SDCCcse.c
diff --git
a/src/SDCCcse.c
b/src/SDCCcse.c
index b02adc0e708917510a9424c6d523ec99fc410ac5..5345f49e03cd2c39eb9d17b6105f8d3751f9f2cd 100644
(file)
--- a/
src/SDCCcse.c
+++ b/
src/SDCCcse.c
@@
-300,7
+300,10
@@
DEFSETFUNC (findCheaperOp)
IS_ITEMP (IC_RESULT (cdp->diCode)))
*opp = IC_RESULT (cdp->diCode);
IS_ITEMP (IC_RESULT (cdp->diCode)))
*opp = IC_RESULT (cdp->diCode);
- if ((*opp)&&(SPEC_USIGN(operandType (cop))==SPEC_USIGN(operandType (*opp))))
+ if ((*opp) &&
+ (SPEC_USIGN(operandType (cop))==SPEC_USIGN(operandType (*opp))) &&
+ (SPEC_SHORT(operandType (cop))==SPEC_SHORT(operandType (*opp))) &&
+ (SPEC_LONG(operandType (cop))==SPEC_LONG(operandType (*opp))))
{
if ((isGlobalInNearSpace (cop) &&
{
if ((isGlobalInNearSpace (cop) &&
@@
-1159,9
+1162,9
@@
deleteGetPointers (set ** cseSet, set ** pss, operand * op, eBBlock * ebb)
iTemp1 = iTemp0 + 8;
iTemp2 = iTemp1 + 8; */
if (isinSetWith (compItems, (void*)IC_LEFT (cdp->diCode),
iTemp1 = iTemp0 + 8;
iTemp2 = iTemp1 + 8; */
if (isinSetWith (compItems, (void*)IC_LEFT (cdp->diCode),
- (
void*
)isOperandEqual) ||
+ (
insetwithFunc
)isOperandEqual) ||
isinSetWith (compItems, (void*)IC_RIGHT (cdp->diCode),
isinSetWith (compItems, (void*)IC_RIGHT (cdp->diCode),
- (
void*
)isOperandEqual))
+ (
insetwithFunc
)isOperandEqual))
{
addSet (&compItems, IC_RESULT (cdp->diCode));
}
{
addSet (&compItems, IC_RESULT (cdp->diCode));
}