Overview

Description

The Renesas SH C Compiler is an optimising ANSI C and ANSI C++ compiler for the SuperH embedded RISC microprocessor family. The SH C package includes a compiler, assembler and linker is supplied as part of the High-performance Embedded Workshop IDE.

In addition to full ANSI C support, the compiler provides #pragma language extensions and command-line switches to support target specific features and extended compiler functionality.

The SH C compiler has powerful and reliable code generation facilities for SH targets. 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...

Features

  • High-performance Embedded Workshop
  • Tool chain
  • Simulator
  • Call Walker
  • MapViewer
  • Learn More

Release Information

Latest Ver.: V.9.04 Release03

Released: Mar 7, 2016

Details of upgrade (See Tool News)

Operating Environment

Standard life cycle of Compilers (PDF | English, 日本語)

Note: V.9.xx is Renesas new product. Upgrading from any of older versions, V.8.xx, V.7.xx, V.6.xx and V.5.xx is not available.

Target Devices

Downloads

Title Type Date
ZIP122.72 MB日本語
Software & Tools - Evaluation Software
ZIP369 KB日本語
Software & Tools - Other
ZIP19 KB
Software & Tools - Other
ZIP116.76 MB日本語
Upgrade - Compiler
ZIP116.72 MB日本語
Upgrade - Compiler
ZIP115.27 MB日本語
Upgrade - Compiler
ZIP113.47 MB日本語
Upgrade - Compiler
EXE102.84 MB日本語
Upgrade - Compiler
EXE101.36 MB日本語
Upgrade - Compiler
EXE97.25 MB日本語
Upgrade - Compiler
EXE92.27 MB日本語
Upgrade - Compiler
EXE90.79 MB日本語
Upgrade - Compiler
EXE67.04 MB日本語
Upgrade - Compiler
EXE54.02 MB日本語
Upgrade - Compiler
EXE36.91 MB日本語
Upgrade - Compiler
EXE59.84 MB
Upgrade - Compiler
EXE66.97 MB日本語
Upgrade - Compiler
EXE16.40 MB日本語
Upgrade - Compiler
EXE4.34 MB日本語
Upgrade - Compiler
EXE1019 KB日本語
Upgrade - Compiler
LZH718 KB
Upgrade - Compiler
EXE15.74 MB日本語
Upgrade - Compiler
EXE4.01 MB日本語
Upgrade - Compiler
EXE54.54 MB日本語
Upgrade - Compiler
ZIP21.21 MB日本語
Upgrade - Debugger
ZIP3.46 MB日本語
Upgrade - IDE
ZIP14.57 MB日本語
Upgrade - IDE
ZIP66.81 MB日本語
Upgrade - IDE
ZIP719 KB日本語
Upgrade - IDE

Documentation

Title Type Date
PDF243 KB日本語
Application Note
PDF280 KB日本語
Application Note
PDF478 KB日本語
Application Note
PDF147 KB日本語
Application Note
PDF339 KB日本語
Application Note
PDF300 KB日本語
Application Note
PDF331 KB日本語
Application Note
PDF665 KB日本語
Application Note
PDF715 KB日本語
Application Note
PDF333 KB日本語
Application Note
PDF553 KB日本語
Application Note
PDF1.08 MB日本語
Application Note
PDF401 KB日本語
Application Note
PDF601 KB日本語
Application Note
PDF365 KB日本語
Application Note
PDF549 KB日本語
Application Note
PDF537 KB日本語
Application Note
PDF610 KB日本語
Application Note
PDF649 KB日本語
Application Note
PDF1.21 MB日本語
Application Note
PDF305 KB日本語
Application Note
PDF248 KB日本語
Application Note
PDF5.54 MB日本語
Application Note
PDF1007 KB日本語
Guide
PDF1.30 MB日本語
Guide
PDF352 KB日本語
Guide
PDF15.12 MB日本語
Manual - Development Tools
PDF4.16 MB日本語
Manual - Development Tools
PDF1.85 MB日本語
Manual - Development Tools
PDF212 KB日本語
Manual - Development Tools
PDF1.89 MB日本語
Manual - Development Tools
PDF2.67 MB日本語
Manual - Development Tools
PDF835 KB日本語
Manual - Development Tools
PDF1.46 MB日本語
Manual - Development Tools
PDF120 KB日本語
Manual - Development Tools
PDF307 KB日本語
Release Note
PDF136 KB日本語
Release Note
PDF186 KB日本語
Tool News - Note
PDF225 KB日本語
Tool News - Note
PDF144 KB日本語
Tool News - Note
PDF178 KB日本語
Tool News - Note
PDF101 KB日本語
Tool News - Note
PDF104 KB日本語
Tool News - Note
PDF44 KB日本語
Tool News - Note
PDF329 KB日本語
Tool News - Note
PDF204 KB日本語
Tool News - Note
PDF226 KB日本語
Tool News - Note
PDF319 KB日本語
Tool News - Note
PDF202 KB日本語
Tool News - Note
PDF206 KB日本語
Tool News - Note
PDF206 KB日本語
Tool News - Note
PDF197 KB日本語
Tool News - Note
PDF240 KB日本語
Tool News - Note
PDF201 KB日本語
Tool News - Note
PDF223 KB日本語
Tool News - Note
PDF201 KB日本語
Tool News - Note
PDF194 KB日本語
Tool News - Note
PDF194 KB日本語
Tool News - Note
PDF230 KB日本語
Tool News - Note
PDF201 KB日本語
Tool News - Note
PDF205 KB日本語
Tool News - Note
PDF235 KB日本語
Tool News - Note
PDF199 KB日本語
Tool News - Note
PDF195 KB日本語
Tool News - Note
PDF223 KB日本語
Tool News - Note
PDF192 KB日本語
Tool News - Note
PDF213 KB日本語
Tool News - Note
PDF195 KB日本語
Tool News - Note
PDF194 KB日本語
Tool News - Note
PDF195 KB日本語
Tool News - Note
PDF199 KB日本語
Tool News - Note
PDF195 KB日本語
Tool News - Note
PDF196 KB日本語
Tool News - Note
PDF195 KB日本語
Tool News - Note
PDF196 KB日本語
Tool News - Note
PDF215 KB日本語
Tool News - Note
PDF194 KB日本語
Tool News - Note
PDF197 KB日本語
Tool News - Note
PDF192 KB日本語
Tool News - Notification
PDF194 KB日本語
Tool News - Notification
PDF184 KB日本語
Tool News - Release
PDF824 KB日本語
Tool News - Release
PDF205 KB日本語
Tool News - Release
PDF202 KB日本語
Tool News - Release
PDF595 KB日本語
Tool News - Release
PDF422 KB日本語
Tool News - Release
PDF197 KB日本語
Tool News - Release
PDF195 KB日本語
Tool News - Release
PDF205 KB日本語
Tool News - Release
PDF195 KB日本語
Tool News - Release
PDF198 KB日本語
Tool News - Release
PDF197 KB日本語
Tool News - Release
PDF199 KB日本語
Tool News - Release
PDF203 KB日本語
Tool News - Release
PDF197 KB日本語
Tool News - Release
PDF196 KB日本語
Tool News - Release
PDF202 KB日本語
Tool News - Release
PDF208 KB日本語
Tool News - Release
PDF198 KB日本語
Tool News - Release
PDF195 KB日本語
Tool News - Release
PDF218 KB日本語
Tool News - Release
PDF201 KB日本語
Tool News - Release

Design & Development

Additional Details

Functions

[C/C++ Compiler]

  • Language specification: Exception handling and Template functions are supported according to ANSI/ISO standards.
  • Complies with C/C++ language in ANSI specification
    • Supports C89, C99 (subset of functions*), and C++98. * long long, // comments
  • 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.
  • Introduces the latest optimization technology developed for supercomputers
    • Optimization at recompilation using link information (optimization of access to external variable)
    • Inter-module optimization of access to external variable
  • 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.
  • Extended language function for SuperH RISC engine family
    • Intrinsic functions
    • Section address operators
    • #pragma directives
  • Object generation in all CPUs from SH-1 to SH-4
  • Improved output way of compile list
  • Standard object format (ELF/DWARF2)
  • Embedded C++ language spec-compliant class libraries
  • High performance DSP library optimized by DSP instruction
  • The header file fixed.h that defines various limitations concerning the internal representation of fixed-point numbers is also added
  • Supports DSP-C language
  • Loosening limits on number of switch statements: 256 -> 2048
  • DSP library of fixed-point type is supported
  • Specify bit-field of union
  • Enhanced to 4096 level of nesting by combination of iteration statement and selection statement

[Assembler]

  • 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..
  • Instruction support to all CPU from SH-4 to SH-1 include DSP
  • Description of Double accuracy floating point constant is possible
  • File include function
  • Assembly function with condition
  • Macro function
  • Support ELF/DWARF2 format
  • Floating-point arithmetic operations can be specified in the assambler directive for reserving floationg-point data
  • Supports .STACK Directive which enables the stack size of a function written in the assembly language to be reflected in the stack analysis tool
  • The number of characters in a replacement symbol specified in .DEFINE was extended from 32 characters to unlimited

[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.
  • Compression function of debug information
  • Inter-module optimization function
  • Plurality load module selection
    • Relocatable ELF format
    • Absolute ELF format
    • S type format.
    • HEX format
    • Binray format
  • Support ELF/DWARF2 format
  • Creation and edition of library file is possible
  • Analysis by list file output
    • Output the number of times of symbol reference
    • Output symbol reference information (cross-reference information)
  • Changing error level when a section address is overlapped
  • A boundary alignment value can be specified for the section specified by the binary option.

[Standard Library Configuration Tool]

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.

  • Customize of standard library by generating standard library for every project is possible.
  • Support reentrant library.
  • Variable change per malloc reservation size (Saving of RAM capacity is possible).
  • Variable change of the number of open file (Saving of RAM capacity is possible).
  • Support for simple I/O (Generate a small size function with no supporting floating point).

[Format Converter]

  • Conversion from the old format to ELF format
  • Conversion from ELF format to the old format

Components

For details, refer to the "C/C++ Compiler Package for SuperH Family Software Component List (PDF | English, 日本語)".

Supported MCU core, DSP Instructions, Object Format

Compiler Package Version Supported Devices (MCUs) DSP Instructions (Note1) Support Object Format Device File Updater (Note2)
V.9 Windows version SH-1, SH-2 (Note5), SH-2E, SH2-DSP, SH-2A, SH2A-FPU, SH-3, SH3-DSP, SH-4, SH-4A, SH4AL-DSP, SH-Mobile (Note4) DSP-C language Assembly language DSP library (Note3) ELF/DWARF2 Available
V.9 UNIX version (Discontinued) SH-1, SH-2 (Note5), SH-2E, SH2-DSP, SH-2A, SH2A-FPU, SH-3, SH3-DSP, SH-4, SH-4A, SH4AL-DSP, SH-Mobile (Note4) ELF/DWARF2 Unsupported
V.8 (Discontinued) SH-1, SH-2, SH-2E, SH2-DSP, SH-3, SH3-DSP, SH-4, SH-4A, SH4AL-DSP, SH-Mobile (Note4) ELF/DWARF2
V.7 (Discontinued) SH-1, SH-2, SH-2E, SH2-DSP, SH-3, SH3-DSP, SH-4 Assembly language DSP library (Note3) ELF/DWARF2
V.6 (Discontinued) ELF/DWARF2
V.5 (Discontinued) SYSROF

Notes

  1. Available only for MCU/MPU with a DSP module.
  2. 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.
  3. The DSP library is included in this C/C++ compiler package.
  4. If you use middleware, make sure the version of your C/C++ compiler package is supported by the middleware to be used. (Please inquire of the middleware distributor.)
  5. Supports little endian. (V.9.00 Release01 or later)

(Discontinued): This version is no longer marketed.