- Important information
- New features
- Known problems
- Program corrections
- User guide corrections
- Miscellaneous
- Release history
Important information
- None.
New features
- None
Known problems
-
[EWRL78-794] In some cases the installer for an IAR Embedded Workbench Service Pack (SP) displays an error message stating that there is no previous version of the product installed, even when a previous version actually is installed. This misleading message is displayed when the existing version is too old to be updated by the Service Pack installer, for example, when EWXX v1.10 is installed and you try to apply EWXX SP v1.30.2.
Program corrections
-
[EWRL78-894] The reserved area 0xE6 to 0x131 is incorrect in the RL78/F24 linker configuration files (.icf) and the start address of the ROM memory should be 0x132.
-
[EWRL78-903] The E1 and E20 emulators are not able to update their firmware due to missing files in the product installation. This leads to a crash in the debugger driver.
- IAR Embedded Workbench IDE - Corrected problems
User guide corrections
-
[EWRL78-856] All data _init sections have incorrect placement descriptions in the IAR C/C++ Development Guide (repeating the placement descriptions for the corresponding data section). The correct placement for data _init sections is: "This section can be placed anywhere in ROM memory."
RAM Start Setting Register handling (RAMSAR)
The system startup code (cstartup.s) allows setting up the RAM Start Setting Register (RAMSAR) available for some microcontroller groups, dynamically via a linker defined symbol. By default, this symbol (_RAMSAR_ADDR) defined in the linker configuration file (.icf), is set to enable the whole RAM area.
Miscellaneous
- Nothing
Release history
4.21.3 2022-01-20
4.21.2 2021-08-12
4.21.1 2021-04-29
4.20.2 2020-02-20
4.20.1 2019-12-04
Program corrections
-
[EWRL78-764]
If several interrupts share a vector, the interrupt priority levels for the simulator will be incorrect for all following interrupts.
-
[EWRL78-763]
The Library Configuration tab under Project Options>General Options displays the old style library names instead of the new naming used from v4.10 and onwards.
-
[EWRL78-761]
For targets with RAM only in the short address area, the end of the short address area may extend beyond the end of the actual RAM in the linker file.
Known devices that exhibit this error are all in the RL78/G10 series: R5F10Y14, R5F10Y16, R5F10Y17, R5F10Y44, R5F10Y46, R5F10Y47.
-
[EWRL78-742]
When using the /args option to pass command line arguments to the debugged application on the Project>Options>Debugger>Extra Options page, only one single argument will be used: the first argument to the final /args option, regardless of how many time the option is specified. See "Extra Options" in the chapter "Debugger options" in the C-SPY Debugging Guide for RL78 for more information about the /args option.
-
[EWRL78-702]
The C-SPY Debugging Guide (UCSRL78_I-3) incorrectly says on page 35 that the C-SPY hardware debugger drivers do not support data breakpoints.
New features
Improved Source Browser
The following improvements have been made to the
Source Browser:
- The source browser data is generated faster as it
is now running as a separate thread.
- New Source Browser Log window.
- Status indicator in the status bar.
- Enhanced feedback in case source browsing data
cannot be generated.
Documentation Comments support in the editor
The editor can distinguish comments that start with /**,
/*!, /// or //! as Documentation Comments. Inside a
Documentation Comment, the editor can recognize keywords
that begin with \ or @. If the keyword is recognized as a
doxygen keyword, the Documentation Comment will appear in
tooltips and parameter hints for variables and functions.
See IAR Embedded Workbench IDE Project Management and
Building Guide for more information.
4.10.1 2018-12-18
Program corrections
-
[EWRL78-673]
If you set the ROM mirror area size on the Project>Options>General Options>Target page in the IAR Embedded Workbench IDE, the symbol _NEAR_CONST_LOCATION_SIZE used by the linker will be one byte smaller than if you edit the linker configuration file directly.
New features
Unicode support
The Unicode standard for consistent encoding, representation, and handling of text is now supported.
This means that you can use Unicode characters (alphabetic, numeric, symbols, emoji, etc)
in the source code.
IDE performance improvements
General improvements of the IDE startup time and overall performance.
3.10.1 2017-09-15
Program corrections
-
[EWRL78-629] When a project is opened, a message saying that "A register bitfield cannot be used because the location is different from the location of the register" is generated for some devices.
-
[EWRL78-518] The Development guide incorrectly states that the source code for the checksum algorithm is included in the product installation file tree. It is not included.
-
[EWRL78-515] The source code for ielftool is not available in the rl78\src\elfutils directory as documented.
-
[EWRL78-514] Some I/O files contain multiple I/O registers located on the same address. This causes a linker error when two or more of them are accessed from the same application.
-
[EWRL78-511] The section name .textf_unit64kp is misspelled in the linker configuration files.
-
[EWRL78-510] The interrupt definitions in the C-SPY device definition file (.ddf) are not correct for all devices.
2.21.5 2017-04-03
Program corrections
-
[EWRL78-541] The Near constant location area end-address in the Project Options dialog box is displaying the real end-address plus one.
-
[EWRL78-540] When you set Near constant location to Mirror ROM 1 in the Project Options dialog box, the reserved area for constants gets too big.
2.21.3 2016-10-05
New features
-
Device support for RL78/G11 and RL78/L1A has been added.
2.21.2 2016-07-04
Program corrections
-
[EWRL78-496] If the option Use far runtime library calls is used, assembler support routines are placed in an incorrect section.
-
[EWRL78-497] Some assembler support routines do not use correct call syntax when building with the option Use far runtime library calls. This can result in range check linker errors.
2.21.1 2016-05-31
Program corrections
-
[EW26031] Devices with mirror area 0xF8000 are not correctly set up under Project Options.
-
[EW25922] The Information Center hyperlink for the Japanese C-SPY Debugging guide is wrong.
-
[EW25995] The common library used in the example projects for RDKRL78G13 cannot be linked.
2.20.1 2015-12-17
Program corrections
-
[EW25758] Memory areas reserved for debugging, like for example OCD_ROM_AREA, are included as "read-write" memory in the linker map file module summary.
New features
-
C-STAT
The add-on product C-STAT for static analysis is now
supported. C-STAT features innovative static analysis
that can detect defects, bugs, and security
vulnerabilities as defined by CERT and the Common
Weakness Enumeration, as well as help keeping code
compliant to coding standards like MISRA C:2012/2004 or
MISRA C++:2008. For more information, see the C-STAT Static
Analysis Guide.
-
Improved double-precision floating-point routines
The 64-bit double-precision floating-point routines have
been re-written for higher execution speed.
-
Renesas AP4 for RL78 included
Renesas AP4 (former Applilet) is a standalone tool for
automatically generating control programs (device driver
programs) for peripheral modules in accordance with
settings. It fully supports code generation for IAR
Embedded Workbench for RL78 and the generated modules are
incorporated via the IAR Project Connection mechanism.
2.10.4 2015-11-05
Program corrections
-
[EW25784] The assembler routines for the Hardware Multiply/Division Unit do not support far runtime library calls.
New features
-
The Japanese user documentation, option dialog boxes, and release notes have been updated.
2.10.1 2015-06-15
Program corrections
-
[EW24987] The project option Use Hardware Multiplier/Divider Unit might incorrectly change state without user interaction.
-
[EW25197] When you switch project configuration in the project manager, the mirror area start address setting is reset to default if you use different devices in different project configurations.
-
[EW25271] The memory area for the OCD monitor firmware was reserved within the near address range in the linker configuration file for devices with more than 64 Kbytes flash.
-
[EW25183] Stack size specified on the Project>Options>General Options>Stack/Heap>Stack size page sometimes gets corrupt or lost.
New features
-
The compiler can now run in several parallel processes to better use the available processor cores in the PC.
1.40.6 2014-11-12
Program corrections
-
[EW25088] The stack size set under Project Options is reset to the default size when the project is reopened.
1.40.5 2014-10-24
1.40.3 2014-09-17
Program corrections
-
[EW24842] The register PU5 is missing in the header and SFR files for RL78/F13 devices.
-
[EW24879] If CPU core S2 or S3 is selected under Project Options, it is not possible to define a stacksize of 64 bytes.
1.40.2 2014-06-10
New features
-
Japanese translation.
1.40.1 2014-04-10
New features
-
External analyzers
A flexible mechanism to invoke external analyzers for
project files. This is typically used as an interface to
static analysis tools like PC-lint.
-
Custom argument variables
Custom argument variables can be used in the IAR Embedded
Workbench IDE whenever there is a need for a macro-like
expansion that depends on the current context. This could
for example be in arguments to an external build tool.
1.30.4 2013-10-10
Program corrections
-
[EW24075] Using Mirror ROM 1 as near constant location causes overflow in the NEAR_CONST segment due to an error in the linker file.
-
[EW24033] The registers MDAL and MDAH are not correctly defined in the device files.
-
[EW24135] Library selection fails due to that the project option Use far runtime library calls is treated as checked even though it is grayed out (disabled).
1.30.3 2013-06-14
Program corrections
-
[EW23890] Each time a project is opened using a custom configuration file, an error message about an invalid driver option occurs and the C-SPY driver field is empty.
-
[EW23943] A problem in the RL78 Core 1 Hardware Multiplier/Divider library replacement module v1.5 leads to that the negative flag is not cleared in case of 32-bit signed division by zero or 32-bit signed modulo operation by zero. Due to this, the next following signed operation (8-, 16- or 32-bit) may be wrong.
-
[EW23867], [EW23864] The project template used to create a new C project has an incorrect initial stack size value.
1.30.2 2012-03-15
Program corrections
-
[EW23789] 16-bit SFR registers are defined as unsigned char in the header files when it should be unsigned short.
-
[EW23632] The MDUC register is not setup correctly in the MUL routines for the hardware multiplier/division unit.
New features
-
A new optimization option Static clustering has been introduced. When enabled, static and global variables that are defined within the same module are arranged so that variables that are accessed in the same function are stored close to each other. This makes it possible for the compiler to use the same base pointer for several accesses.
-
If you use the optimization level High Speed, the new compiler option No size constraints relaxes the normal restrictions for code size expansion and enables more aggressive optimizations.
-
An option has been introduced to place the runtime library support routines in __far_func memory. This option can be used for moving the support routines from near to far memory when building a customized library. The startup code will still be located in near memory.
-
A new text editor and source browser are introduced in
this version. The new features include auto completion,
parameter hint, code folding, block select, block indent,
bracket matching, zoom and word/paragraph navigation. The
new source browser adds features like Go to Declaration
and Find All References to symbols.
-
Files or file packages generated by external code
generation tools can be imported and IAR Embedded
Workbench automatically detects changes in the generated
file set. This enables automated integration with for
example device configuration tools.
1.30.1 2013-03-01
-
Pre-release.
1.20.3 2012-08-09
Program corrections
-
[EW23186] When running iarbuild.exe, the library replacement file picked for the hardware multiplier/divider was always for core 2 regardless of the actually selected core.
1.20.1 2012-04-13
New features
-
New licensing management system (LMS) introduced
The new LMS used with this release introduces new features like commuter licenses, automatic license activation and support for virtual servers. It is easier to administrate and all variants of IAR Embedded Workbench for your microcontroller are included in one and the same installer.
-
Subversion
The version control integration has been extended with
support for Subversion (SVN).
1.10.6 2011-12-14
Program corrections
-
[EW22899] The project option Near constant location was not properly saved in the project file as it was reset to the default value each time the project was opened.
1.10.2 2011-06-23
New features
-
Device support added for the RL78/G14, RL78/F12 and RL78/I1A
series.
-
The hardware multiplier/divider unit on RL78 core_2
devices is now supported
1.10.1 2011-03-01
-
Initial release.
4.21.1 2021-04-29
4.20.2 2020-02-20
4.20.1 2019-12-04
Program corrections
-
[EWRL78-764] If several interrupts share a vector, the interrupt priority levels for the simulator will be incorrect for all following interrupts.
-
[EWRL78-763] The Library Configuration tab under Project Options>General Options displays the old style library names instead of the new naming used from v4.10 and onwards.
-
[EWRL78-761] For targets with RAM only in the short address area, the end of the short address area may extend beyond the end of the actual RAM in the linker file.
Known devices that exhibit this error are all in the RL78/G10 series: R5F10Y14, R5F10Y16, R5F10Y17, R5F10Y44, R5F10Y46, R5F10Y47.
-
[EWRL78-742] When using the /args option to pass command line arguments to the debugged application on the Project>Options>Debugger>Extra Options page, only one single argument will be used: the first argument to the final /args option, regardless of how many time the option is specified. See "Extra Options" in the chapter "Debugger options" in the C-SPY Debugging Guide for RL78 for more information about the /args option.
-
[EWRL78-702] The C-SPY Debugging Guide (UCSRL78_I-3) incorrectly says on page 35 that the C-SPY hardware debugger drivers do not support data breakpoints.
New features
Improved Source Browser
The following improvements have been made to the Source Browser:- The source browser data is generated faster as it is now running as a separate thread.
- New Source Browser Log window.
- Status indicator in the status bar.
- Enhanced feedback in case source browsing data cannot be generated.
Documentation Comments support in the editor
The editor can distinguish comments that start with /**, /*!, /// or //! as Documentation Comments. Inside a Documentation Comment, the editor can recognize keywords that begin with \ or @. If the keyword is recognized as a doxygen keyword, the Documentation Comment will appear in tooltips and parameter hints for variables and functions. See IAR Embedded Workbench IDE Project Management and Building Guide for more information.
4.10.1 2018-12-18
Program corrections
-
[EWRL78-673] If you set the ROM mirror area size on the Project>Options>General Options>Target page in the IAR Embedded Workbench IDE, the symbol _NEAR_CONST_LOCATION_SIZE used by the linker will be one byte smaller than if you edit the linker configuration file directly.
New features
Unicode support
The Unicode standard for consistent encoding, representation, and handling of text is now supported. This means that you can use Unicode characters (alphabetic, numeric, symbols, emoji, etc) in the source code.IDE performance improvements
General improvements of the IDE startup time and overall performance.
3.10.1 2017-09-15
Program corrections
-
[EWRL78-629] When a project is opened, a message saying that "A register bitfield cannot be used because the location is different from the location of the register" is generated for some devices.
-
[EWRL78-518] The Development guide incorrectly states that the source code for the checksum algorithm is included in the product installation file tree. It is not included.
-
[EWRL78-515] The source code for ielftool is not available in the rl78\src\elfutils directory as documented.
-
[EWRL78-514] Some I/O files contain multiple I/O registers located on the same address. This causes a linker error when two or more of them are accessed from the same application.
-
[EWRL78-511] The section name .textf_unit64kp is misspelled in the linker configuration files.
-
[EWRL78-510] The interrupt definitions in the C-SPY device definition file (.ddf) are not correct for all devices.
2.21.5 2017-04-03
Program corrections
-
[EWRL78-541] The Near constant location area end-address in the Project Options dialog box is displaying the real end-address plus one.
-
[EWRL78-540] When you set Near constant location to Mirror ROM 1 in the Project Options dialog box, the reserved area for constants gets too big.
2.21.3 2016-10-05
New features
-
Device support for RL78/G11 and RL78/L1A has been added.
2.21.2 2016-07-04
Program corrections
-
[EWRL78-496] If the option Use far runtime library calls is used, assembler support routines are placed in an incorrect section.
-
[EWRL78-497] Some assembler support routines do not use correct call syntax when building with the option Use far runtime library calls. This can result in range check linker errors.
2.21.1 2016-05-31
Program corrections
-
[EW26031] Devices with mirror area 0xF8000 are not correctly set up under Project Options.
-
[EW25922] The Information Center hyperlink for the Japanese C-SPY Debugging guide is wrong.
-
[EW25995] The common library used in the example projects for RDKRL78G13 cannot be linked.
2.20.1 2015-12-17
Program corrections
-
[EW25758] Memory areas reserved for debugging, like for example OCD_ROM_AREA, are included as "read-write" memory in the linker map file module summary.
New features
-
C-STAT
The add-on product C-STAT for static analysis is now supported. C-STAT features innovative static analysis that can detect defects, bugs, and security vulnerabilities as defined by CERT and the Common Weakness Enumeration, as well as help keeping code compliant to coding standards like MISRA C:2012/2004 or MISRA C++:2008. For more information, see the C-STAT Static Analysis Guide. -
Improved double-precision floating-point routines
The 64-bit double-precision floating-point routines have been re-written for higher execution speed. -
Renesas AP4 for RL78 included
Renesas AP4 (former Applilet) is a standalone tool for automatically generating control programs (device driver programs) for peripheral modules in accordance with settings. It fully supports code generation for IAR Embedded Workbench for RL78 and the generated modules are incorporated via the IAR Project Connection mechanism.
2.10.4 2015-11-05
Program corrections
-
[EW25784] The assembler routines for the Hardware Multiply/Division Unit do not support far runtime library calls.
New features
-
The Japanese user documentation, option dialog boxes, and release notes have been updated.
2.10.1 2015-06-15
Program corrections
-
[EW24987] The project option Use Hardware Multiplier/Divider Unit might incorrectly change state without user interaction.
-
[EW25197] When you switch project configuration in the project manager, the mirror area start address setting is reset to default if you use different devices in different project configurations.
-
[EW25271] The memory area for the OCD monitor firmware was reserved within the near address range in the linker configuration file for devices with more than 64 Kbytes flash.
-
[EW25183] Stack size specified on the Project>Options>General Options>Stack/Heap>Stack size page sometimes gets corrupt or lost.
New features
-
The compiler can now run in several parallel processes to better use the available processor cores in the PC.
1.40.6 2014-11-12
Program corrections
-
[EW25088] The stack size set under Project Options is reset to the default size when the project is reopened.
1.40.5 2014-10-24
1.40.3 2014-09-17
Program corrections
-
[EW24842] The register PU5 is missing in the header and SFR files for RL78/F13 devices.
-
[EW24879] If CPU core S2 or S3 is selected under Project Options, it is not possible to define a stacksize of 64 bytes.
1.40.2 2014-06-10
New features
-
Japanese translation.
1.40.1 2014-04-10
New features
-
External analyzers
A flexible mechanism to invoke external analyzers for project files. This is typically used as an interface to static analysis tools like PC-lint. -
Custom argument variables
Custom argument variables can be used in the IAR Embedded Workbench IDE whenever there is a need for a macro-like expansion that depends on the current context. This could for example be in arguments to an external build tool.
1.30.4 2013-10-10
Program corrections
-
[EW24075] Using Mirror ROM 1 as near constant location causes overflow in the NEAR_CONST segment due to an error in the linker file.
-
[EW24033] The registers MDAL and MDAH are not correctly defined in the device files.
-
[EW24135] Library selection fails due to that the project option Use far runtime library calls is treated as checked even though it is grayed out (disabled).
1.30.3 2013-06-14
Program corrections
-
[EW23890] Each time a project is opened using a custom configuration file, an error message about an invalid driver option occurs and the C-SPY driver field is empty.
-
[EW23943] A problem in the RL78 Core 1 Hardware Multiplier/Divider library replacement module v1.5 leads to that the negative flag is not cleared in case of 32-bit signed division by zero or 32-bit signed modulo operation by zero. Due to this, the next following signed operation (8-, 16- or 32-bit) may be wrong.
-
[EW23867], [EW23864] The project template used to create a new C project has an incorrect initial stack size value.
1.30.2 2012-03-15
Program corrections
-
[EW23789] 16-bit SFR registers are defined as unsigned char in the header files when it should be unsigned short.
-
[EW23632] The MDUC register is not setup correctly in the MUL routines for the hardware multiplier/division unit.
New features
-
A new optimization option Static clustering has been introduced. When enabled, static and global variables that are defined within the same module are arranged so that variables that are accessed in the same function are stored close to each other. This makes it possible for the compiler to use the same base pointer for several accesses.
-
If you use the optimization level High Speed, the new compiler option No size constraints relaxes the normal restrictions for code size expansion and enables more aggressive optimizations.
-
An option has been introduced to place the runtime library support routines in __far_func memory. This option can be used for moving the support routines from near to far memory when building a customized library. The startup code will still be located in near memory.
-
A new text editor and source browser are introduced in this version. The new features include auto completion, parameter hint, code folding, block select, block indent, bracket matching, zoom and word/paragraph navigation. The new source browser adds features like Go to Declaration and Find All References to symbols.
-
Files or file packages generated by external code generation tools can be imported and IAR Embedded Workbench automatically detects changes in the generated file set. This enables automated integration with for example device configuration tools.
1.30.1 2013-03-01
-
Pre-release.
1.20.3 2012-08-09
Program corrections
-
[EW23186] When running iarbuild.exe, the library replacement file picked for the hardware multiplier/divider was always for core 2 regardless of the actually selected core.
1.20.1 2012-04-13
New features
-
New licensing management system (LMS) introduced
The new LMS used with this release introduces new features like commuter licenses, automatic license activation and support for virtual servers. It is easier to administrate and all variants of IAR Embedded Workbench for your microcontroller are included in one and the same installer. -
Subversion
The version control integration has been extended with support for Subversion (SVN).
1.10.6 2011-12-14
Program corrections
-
[EW22899] The project option Near constant location was not properly saved in the project file as it was reset to the default value each time the project was opened.
1.10.2 2011-06-23
New features
-
Device support added for the RL78/G14, RL78/F12 and RL78/I1A series.
-
The hardware multiplier/divider unit on RL78 core_2 devices is now supported
1.10.1 2011-03-01
-
Initial release.