/* for an unknowned reason. - EEP */
void pic16_emitDebuggerSymbol (char *);
-extern regs* newReg(short type, short pc_type, int rIdx, char *name, int size, int alias, operand *refop);
extern void pic16_emitConfigRegs(FILE *of);
extern void pic16_emitIDRegs(FILE *of);
/* multiplication is fixed */
/* support mul for char/int/long */
if((ic->op == '*')
- && (getSize(OP_SYMBOL(IC_LEFT(ic))->type ) < 2))return TRUE;
+ && (IS_SYMOP(IC_LEFT(ic)))
+ && (getSize(OP_SYMBOL(IC_LEFT(ic))->type ) < 2))
+ return TRUE;
#endif
#if 0
/* support div for char/int/long */
- if((getSize(OP_SYMBOL(IC_LEFT(ic))->type ) < 0)
- && (ic->op == '/'))return TRUE;
+ if((ic->op == '/')
+ && (IS_SYMOP(IC_LEFT(ic)))
+ && (getSize(OP_SYMBOL(IC_LEFT(ic))->type ) < 0))
+ return TRUE;
#endif
return FALSE;