Hi Gordon,

> Saw this posting recently which made me think... Especially as I'm doing a
> lot of floating pint work which would no-doubt be accellerated by the
> hardware multiply, however I've just had a look at some of the code in my
> project... Although it has that warning, it is using the MUL instructions.

Since I posted this message, I've much modified my code and now in the .asm I 
see some "MULLW" as well, so indeed sddc uses the HW multiplier appropriately.

Looks like in my original code there was a constant multiplication by 2, and 
the compiler probably figured out that it was less expensive to perform it 
using registers shifts than MUL*...?

It was both the "FIXME" comment and absence of MUL* that draw my attention. 
Now I get the MULLW and still the "FIXME".

Still don't know if the FIXME is something I should worry about, but anyway  
program execution apparently behaves as expected.

BTW now that I'm using the PIC18 (16-bit) port, I seem to encounter much less 
compiler trouble than I had when previously using the PIC16 (14-bit) port.

My project is now 2000+ lines of C code, and all the errors I fell upon were 
mine, not compiler's ;-)

-- 
Michel Bouissou (OpenPGP ID 0xEB04D09C)

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to