Keil Logo

Version 5.0 Differences

  • Optimize Level 7, 8, and 9
    C51 offers three new optimizer levels. These new optimizations focus primarily on code density. Refer to Optimizer for more information.
  • Directives for Dual DPTR Support
    C51 provides dual DPTR support for Atmel, Atmel WM, and Philips with the MODA2 and MODP2 directives.
  • data, pdata, xdata Automatic Variables Are Overlaid in All Memory Models
    C51 now overlays all data, pdata, and xdata automatic variables regardless of the selected memory model. In previous C51 versions, only automatic variables of the default memory type are overlaid. For example, C51 Version 5 did not overlay pdata or xdata variables if a function were compiled in the SMALL memory model.
  • The data type enum adjusts automatically 8 or 16 bits
    C51 now uses a char variable to represent an enum, if the enum range allows it.
  • modf, strtod, strtol, strtoul Library Functions
    C51 now includes the ANSI standard library functions modf, strtod, strtol, and strtoul.
  • BROWSE, INCDIR, ONEREGBANK, RET_XSTK, and RET_PSTK Directives
    C51 supports new directives for generating Browse Information, specifying include directives, optimizing interrupt code, and using the reentrant stack for return addresses. Refer to Compiling Programs for more information.
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.