Hey folks. I've been using SDCC for many years, but this is one issue I've not run across before.
I'm writing some code for an 87C751 microcontroller, and I looked at some of SDCC's .rst files, and noticed lots of LCALL and LJMP instructions. The 87C751 doesn't implement LCALL or LJMP (nor MOVX for that matter) because it has only 2KB of on-chip code memory and no external RAM capabilities. If memory serves, the offset width for ACALL and AJMP is 11 bits, which should be enough to cover the entire 2KB code space on this chip. So...can SDCC be told to only generate ACALL instructions if the target address is within range? This also (obviously) has significant code size implications, as an LCALL is three bytes long whereas an ACALL is only two bytes long. Unless, of course, I've not yet had enough caffeine and am missing something stupid and obvious. -Dave -- Dave McGuire Port Charlotte, FL ------------------------------------------------------------------------------ SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ _______________________________________________ Sdcc-user mailing list Sdcc-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sdcc-user