This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Another Optimization Problem

Greetings all,

I'm fairly new to the Keil Toolset and had a question regarding the C51 code optimization levels.

It seems that on Level 8: Reuse Common Entry Code (default), the main() entry function gets completely optimized out if the main() function grows too large. I can avoid this by either changing the optimization level, or by adding the debug flag in the Output tab.

The actual assembly is correct in the .LST file, but if I check the hex file, the main() function doesn't appear at the location specified by the map file.

Is this normal behaviour? Is there some setting I'm misinterpreting somewhere?


TIA,
JG.

Parents
  • Hi Jon,

    I just downloaded the newest tools from Keil and updated everything.

    Seems like the problem is gone and I get the same results as you.

    Thanks a lot for all your help. I just hope the problem is _really_ fixed this time. It just seems a bit scary that things were so intermittent.

Reply
  • Hi Jon,

    I just downloaded the newest tools from Keil and updated everything.

    Seems like the problem is gone and I get the same results as you.

    Thanks a lot for all your help. I just hope the problem is _really_ fixed this time. It just seems a bit scary that things were so intermittent.

Children