git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@2284
4a8a32a2-be11-0410-ad9d-
d568d2c75423
MOVA (aopGet (AOP (left), size - 1, FALSE, FALSE, TRUE));
}
addSign (result, LSB, sign);
MOVA (aopGet (AOP (left), size - 1, FALSE, FALSE, TRUE));
}
addSign (result, LSB, sign);
+ freeAsmop (left, NULL, ic, TRUE);
+ freeAsmop (result, NULL, ic, TRUE);
else if (shCount >= (size * 8))
{
else if (shCount >= (size * 8))
{
/* get sign in acc.7 */
MOVA (aopGet (AOP (left), size - 1, FALSE, FALSE));
/* get sign in acc.7 */
MOVA (aopGet (AOP (left), size - 1, FALSE, FALSE));
addSign (result, LSB, sign);
addSign (result, LSB, sign);
+ freeAsmop (left, NULL, ic, TRUE);
+ freeAsmop (result, NULL, ic, TRUE);
right = IC_RIGHT (ic);
/* if they are the same */
right = IC_RIGHT (ic);
/* if they are the same */
- if (operandsEqu (IC_RESULT (ic), IC_RIGHT (ic)))
+ if (operandsEqu (result, right)) {
aopOp (right, ic, FALSE);
aopOp (right, ic, FALSE);