|
|
|
ソースオプション
|
-lang
|
ソース・ファイルをコンパイルする言語を選択します。
|
-include
|
インクルード・ファイルの取り込み先フォルダを指定します。
|
-preinclude
|
コンパイル単位の先頭にインクルードするファイルを指定します。
|
-define
|
マクロ定義を指定します。
|
-undefine
|
無効化するプリデファインド・マクロを指定します。
|
-message
|
インフォメーションレベル・メッセージを出力します。
|
-nomessage
|
抑止するインフォメーションレベル・メッセージ番号を指定します。
|
-change_message
|
コンパイラ出力メッセージレベル変更します。
|
-no_warning 【V2.08.00 以降】
|
ワーニング及びインフォメーションレベル・メッセージを抑止します。
|
-file_inline_path
|
(無効オプション) このオプションはV2.00以降では使用できません。指定しても意味を持ちません。
【V.1.02以前】 ファイル間インライン展開ファイル取り込み先フォルダの指定
|
-comment
|
コメント(/* */)のネストを許すかどうかを選択します。
|
-truncated_address_initializer 【V3.01.00以降】
|
C言語において、1, 2バイト型の外部変数をアドレスで初期化することを許します。
|
-check
|
M16C(R8C),H8(H8S,H8SX),SuperHファミリ用の既存プログラムとの互換性をチェックします。
|
-misra2004 【Professional版のみ】
|
MISRA-C:2004ルールによるソースチェックをします。
|
-misra2012 【Professional版のみ】 【V2.04.00以降】
|
MISRA-C:2012ルールによるソースチェックをします。
|
-ignore_files_misra 【Professional版のみ】
|
MISRA-C:2004、MISRA-C:2012チェック対象外のファイルを指定します。
|
-check_language_extension 【Professional版のみ】
|
拡張機能の使用によって部分抑止しているMISRA-C:2004ルールまたはMISRA-C:2012ルールのチェックを有効にします。
|
-misra_intermodule 【Professional版のみ】 【V3.01.00以降】
|
複数ファイルにまたがるMISRA-C:2012ルールによるソースチェックを行います。
|
オブジェクトオプション
|
-output
|
出力ファイル形式を選択します。
|
-noline
|
プリプロセッサ展開時に#lineを出力しません。
|
-debug
|
オブジェクト・ファイルにデバッグ情報を出力します。
|
-nodebug
|
オブジェクト・ファイルにデバッグ情報を出力しません。
|
-g_line 【V3.02.00 以降】
|
最適化時にソースデバッグ用の情報を強化します。
|
-section
|
変更するセクション名を指定します。
|
-stuff
|
変数のアライメントに応じたセクションに配置します。
|
-nostuff
|
変数のアライメントに応じたセクションに配置しません。
|
-instalign4
|
分岐先を4バイトで命令実行向け整合します。
|
-instalign8
|
分岐先を8バイトで命令実行向け整合します。
|
-noinstalign
|
分岐先を命令実行向け整合しません。
|
-nouse_div_inst
|
除算、剰余算にDIV,DIVU,FDIV,DDIV命令を使用しません。
|
-create_unfilled_area【V2.03.00以降】
|
.OFFSETが作る空き領域に対してデータを出力しません。
|
-stack_protector/-stack_protector_all 【Professional版のみ】 【V2.04.00以降】
|
スタック破壊検出コードを生成します。
|
-avoid_cross_boundary_prefetch 【V2.07.00以降】
|
文字列操作ライブラリ関数をストリング命令に展開する際、データプリフェッチによる4バイト境界をまたいだ読み出しを防ぎます。
|
-insert_nop_with_label 【V2.08.00 以降】
|
ローカルラベルおよびnop命令を挿入します。
|
-control_flow_integrity 【Professional版のみ】 【V2.08.00以降】
|
不正な間接関数呼び出しを検出するコードを生成します。
|
リストオプション
|
-listfile
|
ソース・リスト・ファイルを出力します。
|
-nolistfile
|
ソース・リスト・ファイルを出力しません。
|
-show
|
ソース・リスト・ファイルの内容を指定します。
|
最適化オプション
(1/2)
|
-optimize
|
最適化レベルを選択します。
|
-goptimize
|
モジュール間最適化用付加情報を出力します。
|
-speed
|
実行性能重視の最適化を実施します。
|
-size
|
コード・サイズ重視の最適化を実施します。
|
-loop
|
ループ展開の最大展開数を指定します。
|
-inline
|
自動インライン展開行います。
|
-noinline
|
自動インライン展開を行いません。
|
-file_inline
|
(無効オプション) このオプションはV2.00以降では使用できません。指定しても意味を持ちません。
【V.1.02以前】ファイル間インライン展開対象ファイルの指定
|
-case
|
switch文のコード展開方式を選択します。
|
-volatile
|
外部変数をvolatile化します。
|
-novolatile
|
外部変数をvolatile化しません。
|
-type_size_access_to_volatile【V3.04.00以降】
|
volatileを指定した変数に、変数の型のサイズでアクセスします。
|
-const_copy
|
const修飾された外部変数の定数伝播を実施します。
|
-noconst_copy
|
const宣言された外部変数の定数伝播を実施しません。
|
-const_div
|
整数型定数による除算および剰余算を変換します。
|
-noconst_div
|
整数型定数による除算および剰余算を変換しません。
|
-library
|
ライブラリ関数の実行方法を選択します。
|
-scope
|
最適化範囲を複数に分割してコンパイルします。
|
-noscope
|
最適化範囲を複数に分割しないでコンパイルします。
|
-schedule
|
パイプライン処理を考慮した命令並べ替えを行います。
|
-noschedule
|
命令並べ替えを行いません。
|
最適化オプション
(2/2)
|
-map
|
外部変数アクセス最適化を行います。
|
-smap
|
コンパイル単位内で定義された外部変数に対し、外部変数アクセス最適化を行います。
|
-nomap
|
外部変数アクセス最適化を行いません。
|
-approxdiv
|
浮動小数点定数除算の乗算化を行います。
|
-enable_register
|
(無効オプション) このオプションはV2.00以降では使用できません。指定しても意味を持ちません。
【V.1.02以前】register 指定変数を優先的にレジスタ割り付け
|
-simple_float_conv
|
浮動小数点型、整数型間の型変換を一部省略します。
|
-fpu
|
単精度浮動小数点処理命令を使用します。
|
-nofpu
|
単精度浮動小数点処理命令を使用しません。
|
-dpfpu 【V3.01.00以降】
|
倍精度浮動小数点処理命令を使用します。
|
-nodpfpu 【V3.01.00以降】
|
倍精度浮動小数点処理命令を使用しません。
|
-tfu 【V3.01.00以降】
|
三角関数演算器の利用方法を選択します。
|
-tfu_version【V3.05.00以降】
|
三角関数演算器のバージョンを選択します。
|
-nosave_tfu【V3.05.00以降】
|
割り込み関数に対して、三角関数演算器 (v2) の出力の退避・回復コードを生成しません。
|
-alias
|
ポインタ指示先の型を考慮した最適化を実施するかどうかを選択します。
|
-float_order
|
(無効オプション) このオプションはV2.00以降では使用できません。指定しても意味を持ちません。
【V.1.02以前】 浮動小数点式の演算順序変更の最適化を行います。
|
-branch_chaining 【V3.03.00 以降】
|
分岐命令のサイズを削減する最適化を実施します。
|
-nobranch_chaining 【V3.03.00 以降】
|
分岐命令のサイズを削減する最適化を実施しません。
|
-ip_optimize
|
大域最適化を実施します。
|
-merge_files
|
複数ソースのコンパイル結果をひとつのオブジェクトに出力します。
|
-whole_program
|
指定ソースファイルをプログラム全体と仮定して最適化を実施します。
|
マイコンオプション
|
-isa
|
命令セット・アーキテクチャを選択します。
|
-cpu
|
マイコン種別を選択します。
|
-endian
|
エンディアン選択します。
|
-round
|
浮動小数点定数演算の丸め方式を選択します。
|
-denormalize
|
浮動小数点定数での非正規化数の扱いを選択します。
|
-dbl_size
|
double 型、およびlong double 型の精度を選択します。
|
-int_to_short
|
int をshort に、unsigned int をunsigned short に置換します。
|
-signed_char
|
char型をsigned char型として扱います。
|
-unsigned_char
|
char型をunsigned char型として扱います。
|
-signed_bitfield
|
ビットフィールドの符号をsignedで解釈します。
|
-unsigned_bitfield
|
ビットフィールドの符号をunsignedで解釈します。
|
-auto_enum
|
列挙型データのサイズを自動選択するかどうかを選択します。
|
-bit_order
|
ビットフィールドメンバの並び順を選択します。
|
-pack
|
構造体メンバ、クラスメンバのアライメント数を1にします。
|
-unpack
|
構造体メンバ、クラスメンバのアライメント数をデータのアライメントに従います。
|
-exception
|
例外処理機能を有効にします。
|
-noexception
|
例外処理機能を無効にします。
|
-rtti
|
C++実行時型情報(dynamic_cast、typeid)を有効または、無効を選択します。
|
-fint_register
|
高速割り込み関数でのみ使用する汎用レジスタを選択します。
|
-branch
|
分岐幅のサイズを選択します。
|
-base
|
ROM,RAM用ベースレジスタ選択します。
|
-patch
|
CPUタイプ特有の問題を回避するかどうかを選択します。
|
-pic
|
PIC機能を有効にします。
|
-pid
|
PID機能を有効にします。
|
-nouse_pid_register
|
PIDレジスタをコード生成に使用しません。
|
-save_acc
|
割り込み関数でアキュムレータ を退避・回復します。
|
アセンブル・リンクオプション
|
-asmcmd
|
asrxのオプションのサブコマンドファイルを指定します。
|
-lnkcmd
|
rlinkのオプションのサブコマンドファイルを指定します。
|
-asmopt
|
asrxのオプションを指定します。
|
-lnkopt
|
rlinkのオプションを指定します。
|
その他オプション
|
-logo
|
コピーライトを出力します。
|
-nologo
|
コピーライトを出力しません。
|
-euc
|
入力プログラムの文字コードをEUCコードと解釈します。
|
-sjis
|
入力プログラムの文字コードをSJISコードと解釈します。
|
-latin1
|
入力プログラムの文字コードをISO-Latin1コードと解釈します。
|
-utf8
|
入力プログラムの文字コードをUTF-8コードと解釈します。
|
-big5
|
入力プログラムの文字コードをBIG5コードと解釈します。
|
-gb2312
|
入力プログラムの文字コードをGB2312コードと解釈します。
|
-outcode
|
出力アセンブリ言語ファイルの文字コードを選択します。
|
-subcommand
|
コマンドオプションを取り込むファイルを指定します。
|