impemented #1914251, #1914245, #1922090, #1921382, #1918323, use 16-bit addition...
[fw/sdcc] / src / ds390 / ralloc.c
index 3db3a8483279d9b17e34550f993e015ce7c4dc09..f166a647fb3cca1e62c3708363db33077df0e18a 100644 (file)
@@ -2475,8 +2475,6 @@ right:
   return change;
 }
 
-#define IS_OP_RUONLY(x) (x && IS_SYMOP(x) && OP_SYMBOL(x)->ruonly)
-
 
 /*-----------------------------------------------------------------*/
 /* packRegsDPTRnuse - color live ranges that can go into extra DPTRS */
@@ -3069,6 +3067,7 @@ packRegisters (eBBlock ** ebpp, int blockno)
           IS_SYMOP (IC_RIGHT (ic)) &&
           OP_SYMBOL (IC_RIGHT (ic))->remat &&
           !IS_CAST_ICODE(OP_SYMBOL (IC_RIGHT (ic))->rematiCode) &&
+          !isOperandGlobal(IC_RESULT(ic)) &&          /* due to bug 1618050 */
           bitVectnBitsOn (OP_SYMBOL (IC_RESULT (ic))->defs) <= 1)
         {
           OP_SYMBOL (IC_RESULT (ic))->remat =