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.
I just downloaded the newest tools from Keil and updated everything. Oops. I guess we should have checked the version number from the beginning. Jon
Yes, Stefan _did_ ask which versions I was using. I looked through the update notes, but didn't find anything specifically related to this problem. Might have another surprise waiting for us in a few months :)
"I looked through the update notes, but didn't find anything specifically related to this problem." Indeed, perhaps Jon can show us where this bug is documented? Stefan