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

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
06/17/07 23:43
Read: times


 
#140916 - procedural abstraction?
Responding to: ???'s previous message
Erik Malund said:
1) for instance have you gotten rid of every function taking a jump to the end and back to the beginning?.

In our older compilers you would only see this if the optimizer was turned off. It was needed because it was output at function entry and the code generator had not fully seen the function ahead. Newer OCG based compilers don't do this at all because it has the entire program in memory and can see everything.

2) for those that do not care about debug version and production version being equal have a flag that makes code sharing take place (I would never use it)

By "sharing" do you mean procedural abstraction optimizations? This is where common sequences of instruction are abstracted out to form a new function thus reducing code size. If so, then this type of optimization comes at a cost (speed) and is typically provided as a speed vs space option. As for debugging when this type of optimization is in use; if the debug file format is good enough, then it should not matter what type of optimization has occurred. The problem is that many debugging file formats can't deal with it. Formats such as ELF/Dwarf can, but one also has to look at what formats existing debugging tools use (many people would not wish to have to replace there tools). These are some of the challenges we (well, Ryan :-) are facing.

Matt
HI-TECH Software.


List of 80 messages in thread
TopicAuthorDate
What\'s more important optimisations or debugging?            01/01/70 00:00      
   as Ive said before,you have two versions            01/01/70 00:00      
      Fly what you debug; Debug what you fly            01/01/70 00:00      
         Yes and No            01/01/70 00:00      
            and no...            01/01/70 00:00      
               You can not see what is not there            01/01/70 00:00      
                  Yes, that's the challenge            01/01/70 00:00      
               incorrct            01/01/70 00:00      
                  read the whole post            01/01/70 00:00      
                     comments            01/01/70 00:00      
                        I said: Ideally            01/01/70 00:00      
                           That's exactly the problem!            01/01/70 00:00      
                  Correct - but maybe mis-stated            01/01/70 00:00      
                     still not the same            01/01/70 00:00      
                        it would require some modifications elsewhere            01/01/70 00:00      
                           the catch            01/01/70 00:00      
                              sure            01/01/70 00:00      
      Buggy compilers.            01/01/70 00:00      
         not the most common reason            01/01/70 00:00      
            Probability.            01/01/70 00:00      
   Avoid problems            01/01/70 00:00      
   debugger not useful            01/01/70 00:00      
      'debuggers' ....            01/01/70 00:00      
         Re: Bullshit            01/01/70 00:00      
            why are you so determined on using ONE method            01/01/70 00:00      
               my silabs experince            01/01/70 00:00      
                  you must have your 'experience' from a VERY early            01/01/70 00:00      
   Make it right, then make it fast            01/01/70 00:00      
   Optimization misapplied - editorial            01/01/70 00:00      
      what is the difference...            01/01/70 00:00      
         this is the difference            01/01/70 00:00      
            I see, thanks.            01/01/70 00:00      
               with compiler optimizing ...            01/01/70 00:00      
   profile            01/01/70 00:00      
      So he should be able to sort it to give us BOTH!            01/01/70 00:00      
         on further analysis            01/01/70 00:00      
            PIG?            01/01/70 00:00      
               I got used to that misspell ....            01/01/70 00:00      
                  OT: PIC assembly language            01/01/70 00:00      
                     errata            01/01/70 00:00      
                        which you often can not get by with            01/01/70 00:00      
                           Takes the sting out            01/01/70 00:00      
                        PIC assembler is fun!            01/01/70 00:00      
                           well it does make more clones of me            01/01/70 00:00      
                           matter of personal preference, I think            01/01/70 00:00      
                              HT 8051 C too            01/01/70 00:00      
                                 Did you miss...            01/01/70 00:00      
         No hidden agenda            01/01/70 00:00      
            make it "Keil compatible"            01/01/70 00:00      
            "omniscient code generation"            01/01/70 00:00      
               OCG looks interesting            01/01/70 00:00      
               omniscient code generation            01/01/70 00:00      
                  Recursive Calls            01/01/70 00:00      
                     need recursive calls? use a chip that can take it            01/01/70 00:00      
                        RE: Recursive Calls            01/01/70 00:00      
                     RE: Recursive Calls            01/01/70 00:00      
                  Ryan, as I said above...            01/01/70 00:00      
                     optimization 1) and 2)            01/01/70 00:00      
                        procedural abstraction?            01/01/70 00:00      
                           debugging tools            01/01/70 00:00      
                              support for other tools and our own tool offering            01/01/70 00:00      
                                 tools etc.            01/01/70 00:00      
                                    beta testers?            01/01/70 00:00      
                                       advertisement?            01/01/70 00:00      
                                       Link is fine            01/01/70 00:00      
                                          silabs?            01/01/70 00:00      
                                             chips            01/01/70 00:00      
                                                Future direction            01/01/70 00:00      
                                                   do not forget the 'economy ones'            01/01/70 00:00      
                                                      "economy" ICE...            01/01/70 00:00      
                                                         SILabs does not belong            01/01/70 00:00      
                                                            ICE cathegorisation (C) Erik            01/01/70 00:00      
                              my guess            01/01/70 00:00      
                                 the big shots...            01/01/70 00:00      
                           please elaborate            01/01/70 00:00      
                              Debugging challenges            01/01/70 00:00      
   It depends on what you want            01/01/70 00:00      
   Realy What is Important, is there any paradox            01/01/70 00:00      
   AVR or C51 ,PLease Choose ?!!            01/01/70 00:00      
   Embedded System or your noodle Code            01/01/70 00:00      

Back to Subject List