* src/pic16/main.c (_hasNativeMulFor): fixed bug #1444425
authortecodev <tecodev@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Wed, 8 Mar 2006 09:53:55 +0000 (09:53 +0000)
committertecodev <tecodev@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Wed, 8 Mar 2006 09:53:55 +0000 (09:53 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@4056 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
src/pic16/main.c

index dd69bc630ff822e60e2aac29cd127b995d715303..6e10aecfcabf7859dafa80fe9141a8db5b388cd0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2006-03-08 Raphael Neider <rneider AT web.de>
+
+       * src/pic16/main.c (_hasNativeMulFor): fixed bug #1444425
+
 2006-03-07 Maarten Brock <sourceforge.brock AT dse.nl>
 
        * device/include/mcs51/c8051f410.h: new SiLabs mcu
index 7f799cfea9553e2ac82f9c2267c31a754cbb26e7..217fdd371e9e92dd4eba7e4fdd21b6eb300e0ab7 100644 (file)
@@ -920,13 +920,17 @@ static bool _hasNativeMulFor (iCode *ic, sym_link *left, sym_link *right)
        /* 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;