fixed bug #480645
authorjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Sun, 11 Nov 2001 20:29:57 +0000 (20:29 +0000)
committerjohanknol <johanknol@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Sun, 11 Nov 2001 20:29:57 +0000 (20:29 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@1569 4a8a32a2-be11-0410-ad9d-d568d2c75423

src/SDCCcse.c

index 1f444374f4af883a9bd4fd54bf50da733f6b2c36..01f5ed656b84234a2a93b2b647646bde9aac4b92 100644 (file)
@@ -303,9 +303,13 @@ DEFSETFUNC (findCheaperOp)
 
   if ((*opp) && 
       (isOperandLiteral(*opp) || 
 
   if ((*opp) && 
       (isOperandLiteral(*opp) || 
+#if 0 // jwk: because of bug #480645, this is clumsy anyway. E.g.
        getSize(operandType(*opp)) == getSize(operandType(cop)) ||
        (SPEC_USIGN(operandType (cop))==SPEC_USIGN(operandType (*opp)) &&
        (SPEC_LONG(operandType (cop))==SPEC_LONG(operandType (*opp))))))
        getSize(operandType(*opp)) == getSize(operandType(cop)) ||
        (SPEC_USIGN(operandType (cop))==SPEC_USIGN(operandType (*opp)) &&
        (SPEC_LONG(operandType (cop))==SPEC_LONG(operandType (*opp))))))
+#else
+       compareType(operandType(*opp), operandType(cop))==1))
+#endif
     {
 
       if ((isGlobalInNearSpace (cop) &&
     {
 
       if ((isGlobalInNearSpace (cop) &&