> > When I wrote : > > > > i++; > > > > It compiled it into : > > > > movf i, W > > incf i, F > > Now, any optimizing compiler and even many merely opportunistic ones, > might notice that the value of the expression "i++" isn't used in the > case you mentioned, and would thus treat it less generally. But a less > evolved C compiler - and from what I've seen, C compilers for embedded > processors are usually rather primitive - might very well choose to leave > it up to the programmer to write instead "++i" when the more efficent > code generated for that form will suffice. You mean: incf i,F movf i,W or somesuch? I don't know if the CCS compiler would generate that but it would seem the logical counterpart to i++; the movf is superfluous in this case, of course, but how is the compiler to know that if it can't figure it out in the former case?