The Renesas H8 C/C++ Compiler is an optimising ANSI C and ANSI C++ compiler for H8, H8S, H8SX family microcontrollers. The package includes a compiler, assembler, linker. A variety of optimisation features allow you to generate highly optimised PROMable code. In particular, code can be optimised for size or speed to match the requirements of the particular application being developed. The compiler toolchain is supplied as part of the High-performance Embedded Workshop IDE.
HEW, a powerful yet easy to use tool suite, features an industry standard user interface and is designed using a modular approach seamlessly incorporating device family-specific C/C++ compilers and the debugger elements for various debugging platforms including emulators and evaluation boards.
- V.6.02 Release 02 is the latest version in Ver.6.
- When you run MISRA C Rule Checker SQMlint in combination with the C/C++ Compiler Package for H8SX, H8S, H8 Family V.7.00 or later, use SQMlint V.1.03 Release 00A or later.
As the development environment of an embedded program, we provide a toolchain bundles an optimizing C/C++ compiler, an assembler and an optimizing linkage editor etc,.
High-performance Embedded Workshop
High-performance Embedded Workshop provides a GUI-based integrated development environment for the development and debugging of embedded applications for Renesas microcontrollers. It runs on windows-based operating systems; Windows®98, Me, NT4.0, 2000 and XP. Software and hardware development tools are supported under the same single user interface. It supports development of application software using SuperH, M32R, M16C, H8SX, H8S and H8 families. See more info
For development environment of an embedded program, we provide an optimization C/C++ compiler, an assembler and an optimizing linkage editor.
- Language specification
- Exception handling and Template functions are supported according to ANSI/ISO standards.
- Optimizing function
- The dedicated optimization which are for each microcomputer have been implemented in addition to the general optimization techniques that are deletion of common expression, register allocation, etc. Furthermore, the optimization function has also realized the optimization over between source files at the time of a link.
- Embedded function
- Interruption function description, system command description, etc., which are not supported by ANSI C/C++ language Specification and which are useful to support the function for the embedded program as an extended function.
- Pre-processor function
- A source program is described efficiently by pre-processor functions such as a file inclusion function, conditional assembly function, macro function, etc..
Optimizing Linkage Editor
- Optimizing function
- It executes optimizations that are memory allocation and code optimizations that related functions callings. These optimizations can not be done in the C/C++ compiler.
- Output file
- Linkage Editor outputs several formats like ELF from, S type form and HEX form. And it is available to output the symbol reference list.
Standard Library Generator
Generate the standard library file, which is provided by a compiler, by using the user-specified option. Select of the optimization and generation of the standard library file that is the reentrants type (case of SH) are available by options.
Change to the ELF/DWARF2 form (Support over SHC V6 and H8C V4) from the SYSROF and the ELF/DWARF form (make before SHC V5 and H8C V3) in an object file or a library file. And change to the SYSROF, ELF/DWARF form from a load module of the ELF/DWARF2 form.
The cycle accurate simulator was improved in the profiler function and the debugging function. As the development environment of an embedded system, the cycle accurate simulator which supports the program performance evaluation function and the powerful debugging function is provided. See more info
It has the stack value display function with C,C++ function and module tree. Function allocation editing by drag and drop is available.
It has the GUI display function of a map file output by the optimizing linkage editor.
- Generation of Object code for all CPUs in the H8, H8S, H8SX family
- Fully compatible with the ANSI/ISO:9899/1990 standard for C
- Support for C99-language specifications(except for variable-length arrays)
- Support for C99 libraries
Note C99 supports H8SX and H8S families. Note, however, that programs for the H8 family cannot be compiled in the C99 language
- Supports extended language function for H8, H8S, H8SX family
- Intrinsic functions
- Section address operators
- #pragma directives
- Support for information level message
- Mixed source and assembler listing files
- Supports ELF/DWARF format
- Embedded C++ language spec-compliant class libraries
- Expanded number of switch statement to 2048
- Supports instructions to all CPUs in the H8, H8S, H8SX family
- Supports assembly file inclusion
- Supports conditional assembly
- Supports macro in assembly
- Supports structured assembly
- Supports ELF/DWARF formats
- Allows .BEQU symbol to be externally defined and referenced by using .BIMPORT and .BEXPORT
[Optimizing linkage editor]
- Supports object file input in H8SX family
- Compact debug information function
- Inter-module optimization function
- Allows multiple load module selection
- Supports ELF/DWARF format
- Relocatable ELF format
- Absolute ELF format
- S type format
- HEX format
- Binary format
- Allows library files to be created and edited
- Analysis with an output list file (outputs referenced count of symbols)
- Checks for section address duplication
[Standard library configuration tool]
- Allows standard library to be customized by generating the standard library in project units
- Supports reentrant libraries
- Variable size for malloc allocation (to save RAM capacity)
- Variable number of open file (to save RAM capacity)
- Conversion from old format to ELF format
- Conversion from ELF format to old format
[Stack analysis tool (CallWalker)]
- Shows stack values in units of the C, C++ function
- Shows stack value on module hierarchy basis
- Edits the function allocation by drag and drop
Target Devices, Object Format
|Compile Package Version||Supported Devices (MCUs)||Object Format||Device File Updater (Note1)|
|V.7 Windows version||H8/300、H8/300L、H8/300H H8S/2000、H8S/2600 H8SX、AE-5 (Note2)||ELF/DWARF2||Available|
|V.6 Windows version||H8/300、H8/300L、H8/300H H8S/2000、H8S/2600 H8SX、AE-5 (Note2)||ELF/DWARF2|
|V.6 UNIX version (Discontinued)||H8/300、H8/300L、H8/300H H8S/2000、H8S/2600 H8SX、AE-5 (Note2)||Unsupported|
|V.5 (Discontinued)||H8/300、H8/300L、H8/300H H8S/2000、H8S/2600||ELF/DWARF2|
- Device File Updater is a utility tool which adds or updates automatically the High-performance Embedded Workshop's source files such as a start-up routine, I/O header file, etc.
- The AE-5 Series MCU is supported by V.6.01 Release 00 or later. A V.6.00 user can upgrade to the latest V.6.01 free of charge.
Information supporting development tools
|My Renesas||Create a My Renesas account to use our tool download services,
receive e-newsletter/update notifications, and take advantage of our other services.
|e-learning||Information for studying and learning about microcontrollers and microprocessors.|
|FAQ||Frequently asked questions and useful hints for development.|
|Forum||A forum and community site to share technical information,
questions and opinions with others who use Renesas MCU's.
|Tool News||Tool release information and other important information.|
|Operating Environment||Information on system requirements and operating environment for the latest
version of tools.
|Info on Discontinued Products||A list of Renesas software and tools that have been discontinued and
are no longer being offered for new projects.