Skip to main content

特長

機器組込み向けプログラムの開発環境として、最適化C/C++コンパイラ、アセンブラ、最適化リンケージエディタなどのTool chainを提供しています。詳細は下記をご覧下さい。
* NEWは、H8SX,H8S,H8ファミリ用 コンパイラパッケージVer.7からの新機能になります。

C/C++ コンパイラ

  • H8SX,H8S,H8ファミリの全CPUに対するオブジェクト生成が可能
  • ANSI仕様C/C++言語に準拠
    • C99言語仕様(ISO/IEC 9899:1999、可変長配列を除く)サポート
    • C99ライブラリサポート
      * C99対応はH8SX、H8Sファミリを対象にしたコンパイルにのみ対応しています。H8ファミリを対象にしたコンパイルでは、C99に対応していません。
  • H8SX,H8S,H8ファミリマイコン 用拡張言語機能
    • 組み込み関数
    • セクションアドレス演算子
    • #pragma拡張子
  • インフォメーションメッセージ制御
  • コンパイルリスト表示改善
  • ELF/DWARF2フォーマットサポート
  • Embedded
  • C++仕様のクラスライブラリ
オプション、#pragma拡張子追加・変更 NEW
オプション 説明
_ _ptr16 2byteサイズポインタが使用可能。(H8SXのみ)
_ _asm C/C++ソースプログラムの中にアセンブリ言語を記述することが可能。(H8SXのみ)
#pragma bit_order ビットフィールドメンバの詰め込み方を指定可能。
_ _indirect_ex 拡張メモリ間接呼び出しとなる関数を宣言。(H8SXのみ)
noline プリプロセッサ展開時の#lineの出力を抑止。
libraryオプション memcpyとstrcpyの二つのライブラリ関数をインライン展開可能。(H8SXのみ)
change_messageオプション メッセージのエラーレベルを変更。
sbrオプション 8bit絶対アドレス領域の配置アドレスを指定が可能。(H8SXのみ)
cpu=rs4 RS4マイコンのコードを生成。
divs_inst 除算を常にdivs命令でコード展開する。(H8SXまたはAE5のみ)
align=4 境界調整数・バウンダリ調整指定。
*H8Sも指定可能になりました。
lang=c99 C99言語プログラムのコンパイル可能。また、lang=c99オプション指定時にc89stdioオプションを指定することにより従来使用していたstdio関連が使用可能。 NEW
lang=cpp オプション指定時にc99stdioを指定することによりC++プログラムでC99のstdio関連が使用可能。 NEW
outcode=utf8,utf8 UTF-8コードが使用可能。 NEW
組込み関数追加 NEW
説明 組込み関数
H8SXの64bit乗算 mulsu, muluu
H8SXのブロック転送命令 movmdb, movmdw, movmdl, movsd
ブロック転送命令組み込み関数強化 eepmovb, eepmovw, eepmovi
MOVFPE命令組み込み関数見直し movfpe
デフォルトinline関数の展開抑止機能をサポート(C++言語コンパイル時)  NEW inline

アセンブラ

  • H8SX,H8S,H8ファミリの全CPUに対する命令サポート
  • ファイルインクルード機能
  • 条件付アセンブリ機能
  • マクロ機能
  • 構造化アセンブリ機能
  • ELF/DWARF2フォーマットサポート
オプション追加・変更 NEW
オプション 説明
cpu=rs4 rs4のオブジェクトを生成。
#pragma __naked_asm レジスタ退避/回復抑止機能サポート。 NEW

最適化リンケージエディタ

  • H8SXのオブジェクトファイルの入力をサポート
  • デバッグ情報の圧縮機能
  • モジュール間最適化機能
  • 複数ロードモジュール選択
    • リロケータブルELF形式
    • アブソリュートELF形式
    • Sタイプ形式
    • HEX形式
    • バイナリ形式
  • ライブラリファイルの作成、編集が可能
  • リストファイル出力による解析(シンボル参照回数出力)

 

オプション追加・変更 NEW
オプション 説明
byte_count インテルHEX形式ファイルのデータレコードの最大バイト数を変更する。
space=random 空きエリアへ乱数を充填することができる。
充填可能ファイル形式
  • Sタイプファイル
  • インテルHEX形式ファイル
  • バイナリファイル
memory=low ライブラリファイル作成時にも使用可能に。
total_size 標準出力へ以下の種別ごとのセクション合計サイズを出力できます。
  • 実行可能セクション
  • ROM配置データセクション
  • RAM配置データセクション
show=total_size リンケージリストへ以下の種別ごとのセクション合計サイズを出力できます。
  • 実行可能セクション
  • ROM配置データセクション
  • RAM配置データセクション
RTs_file 特定エミュレータ向けの情報ファイルを出力。
CRc リンク時に指定範囲のCRC(Cyclic Redundancy Check)演算を行い、計算結果を指示したアドレスのメモリに埋め込み。
cpu=stride リンクオプションcpuのアドレス範囲の情報を元に、セクションを自動的に分割して割り付けることが可能。  NEW
contiguous_section セクションを分割して割り付けるときに、分割したくないセクション(ROM-RAM転送するセクション)を指定することにより、配置可能な別メモリ領域に割り付けが可能。  NEW
show=all showオプションのサブオプションにallを追加。全てのリスト内容の出力を有効にします。  NEW

標準ライブラリ構築ツール

  • プロジェクトごとに標準ライブラリを生成することで、標準ライブラリのカスタマイズが可能
  • malloc確保サイズ単位の可変化(RAM容量の節約が可能)
  • openファイル数可変化(RAM容量の節約が可能)
  • reentオプション指定でリエントラントライブラリが生成可能

フォーマットコンバータ

  • 旧フォーマットからELFフォーマットへの変換
  • ELFフォーマットから旧フォーマットへの変換

バージョン情報

最新Ver.: V.7.00 Release 00
リリース: 2009/09/01
バージョンアップ詳細(ツールニュース)

関連情報

H8SX,H8S,H8ファミリ用シミュレータデバッガ
[2010/06/07, リビジョンアップ]

V.6リビジョンアップリリースのお知らせ
[2009/12/18, ツールニュース]

UNIX版(Solaris版/HP-UX版)販売終了のお知らせ
[2006/12/01, ツールニュース]

マイコン内蔵周辺I/Oドライバ本体と設定関数が、簡単なGUI操作で自動生成できます。[Peripheral Driver Generator]
マイコン内蔵周辺I/Oドライバを自動生成
Peripheral Driver Generator

Device File Updater
ターゲットCPUを追加するプログラム

Document Updater
ドキュメント検索/管理ユーティリティ


End of content

Back To Top