Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
03/10/08 23:46
Read: times


 
#152105 - Not so fantastic?
Responding to: ???'s previous message
David Prentice said:
We are all agreed that a compiler is free to do lots of optimisations.

Again, it's not just about optimisation - the compiler is free to implement the source code in any way it sees fit

We agree that a software delay requires careful cycle counting whether in assembly or HLL.

Yes.

A different compiler, version or flag invocation can produce different code.

Definitely.

To state that the compiler will generate different code on each identical invocation is something that I would like to see.

Yes, it's probably pretty unlikely in practice.
However, Keil's "register colouring" optimisation can give interesting effects of one build on the next...

I am assuming that we are talking about a function block being compiled differently due to unrelated source code change in other function blocks.

Yes - I gave the specifc example of where aparently "unrelated" code can chage the compiler's choice of what to put into registers.

Optimisations like Keil's "register colouring" and Linker code packing also take a general overview of the code - so must introduce more possibilities for this...






List of 32 messages in thread
TopicAuthorDate
One RS232 port and two devices            01/01/70 00:00      
   Almost certainly not!            01/01/70 00:00      
      neither one talks back            01/01/70 00:00      
         Soft-UART ?            01/01/70 00:00      
         Simplex            01/01/70 00:00      
            responses            01/01/70 00:00      
               The beaty of the 8051            01/01/70 00:00      
                  why all this about bit-banging            01/01/70 00:00      
               Bit banging UART TX.            01/01/70 00:00      
                  Easy to get wrong.            01/01/70 00:00      
                     Point taken, but you can calculate delay.            01/01/70 00:00      
                        Depends on compiler/etc...            01/01/70 00:00      
                           Don't use HLL!            01/01/70 00:00      
                              Cycle counting.            01/01/70 00:00      
                                 Fundamental flaw            01/01/70 00:00      
                              Not an Absolute....            01/01/70 00:00      
                                 RE: Never is a strong word            01/01/70 00:00      
                                    ... and            01/01/70 00:00      
                              assembly verses HLL            01/01/70 00:00      
                           Use a Timer IRQ to set the soft baudrate            01/01/70 00:00      
                              Surprise.            01/01/70 00:00      
                                 High risk            01/01/70 00:00      
                                    Straying into fantasy.            01/01/70 00:00      
                                       Not so fantastic?            01/01/70 00:00      
                  Resistance is too high            01/01/70 00:00      
                  Another reason why this is not so easy...            01/01/70 00:00      
               Timescales            01/01/70 00:00      
      message formatting            01/01/70 00:00      
         Try it now            01/01/70 00:00      
            It's OK now, thanks.            01/01/70 00:00      
   Two RS232 devices            01/01/70 00:00      
      the LCD display            01/01/70 00:00      

Back to Subject List