Everything
 

変数一覧 パネル


取得した変数情報を表示します。

このパネルで表示対象となる変数の種類は次のとおりです。

-

グローバル変数

-

ファイル内スタティック変数

-

関数内スタティック変数

-

クラス変数(C++ソース・ファイルを対象とする場合)

 

ただし,解析対象外に指定されているファイル内の変数情報は表示されません(「1.1.1解析対象」参照)。

なお,変数情報を表示するための操作手順は,「2.1概  要」を参照してください。

注意 1.

【E20【RX】】
デバッグ・ツールのプロパティ パネルにおける,[デバッグ・ツール設定]タブ上の[トレース]カテゴリ内[トレース・データの種別]プロパティで[分岐]を選択している場合,分岐命令間の命令を補完するため,トレース・データによる動的解析情報の取得に時間がかかります。
変数のみに着目する場合は,同プロパティで[データアクセス]を選択することを推奨します。

注意 2.

【CC-RX】
C++ソース・ファイルを対象とする場合は,「3.6CC-RX(C++ソース・ファイル)を使用する場合について」を参照してください。

注意 3.

【CC-RX】
最適化により削除された未使用スタティック変数は一覧に表示されません。

備考 1.

変数情報は,フィルタを設定して表示することができます(「2.6.5解析情報をフィルタ表示する」参照)。

備考 2.

ツールバーの ,または[Ctrl]キーを押下しながらマウス・ホイールを前後方に動かすことにより,本パネルの表示を拡大/縮小することができます。

備考 3.

【RH850】
このパネル上の動的解析情報と現在デバッグ・マネージャ パネルで選択しているPEnとの関係については,「(a)トレース機能」を参照してください。

図 A.6

変数一覧 パネル

 

ここでは,次の項目について説明します。

[オープン方法]

-

メイン・ウインドウのツールバーの ボタンのクリック

-

[表示]メニュー→[プログラム解析]→[変数一覧]の選択

[各エリアの説明]

(1)

ヘッダ・エリア

(a)

項目名

取得した変数情報の項目名を表示します。

なお,各項目名に表示されるマーク(アイコン)の意味は次のとおりです。

マーク(アイコン)

意味

ソート表示設定の有無を示します(「2.6.4解析情報をソート表示する」参照)。

フィルタ表示設定の有無を示します(「2.6.5解析情報をフィルタ表示する」参照)。

固定表示設定の有無を示します(「2.6.3特定項目を固定表示に設定する」参照)。

 

該当項目の情報に関するメッセージを出力 パネルに出力していることを示します。マウス・カーソルを重ねることにより,出力した最新のメッセージをポップアップ表示します。

備考

表示項目は,このエリアをマウスで操作することにより,次のカスタマイズを行うことができます。
- 表示項目を設定する
- 表示項目を並び替える
- 特定項目を固定表示に設定する

(b)

ボタン

 

このパネルに表示する項目(列)の並び替え,表示/非表示の設定,およびそれらのカスタマイズをデフォルトに戻す設定を行うための列の選択 ダイアログをオープンします(「2.6表示方法をカスタマイズする」参照)。

(2)

情報表示エリア

取得した変数情報を表示します。

解析ツールが取得する変数情報には,静的解析情報動的解析情報の2つの種別があり,それぞれ表示可能なタイミングは異なります(「1.1.2解析情報の種別」参照)。

変数情報を表示した状態で,アクティブ・プロジェクトを変更した場合は,変更先プロジェクトの情報を表示します(ただし,変更先プロジェクトにおいて,クロス・リファレンス情報が生成されていない場合,または解析ツールをサポートしていない場合は,何も表示されません)。

なお,プログラムの実行により値が変化した情報は強調表示されます(強調表示の際の文字色/背景色は,オプション ダイアログにおける[全般 - フォントと色]カテゴリの設定に依存)。強調表示を解除する場合は,ツールバーの ボタンをクリックしてください。

変数情報として取得する項目と内容は次のとおりです。

項目

種別

内容

変数名

静的解析

C/C++ソース・ファイルで定義/参照されているグローバル変数/ファイル内スタティック変数/関数内スタティック変数/クラス変数(クラス型の静的なメンバ変数)の名前を表示します。

1024文字まで表示可能です。

なお,表示アイコンは次の意味を示します。

-

:変数

-

:メンバ変数【CC-RX】

【CC-RX】

無名共用体を使用している場合,“<unnamed_N>”の形式で変数名を表示します(N:1から出現順に自動的に付与される番号)。

クラス名

【CC-RX】

静的解析

変数が属しているクラス名を表示します。

なお,テンプレート・クラスの場合は,“クラス名<T:テンプレート引数の数>”の形式でテンプレート引数の数も表示します。

ただし,変数がメンバ変数以外の場合,または解析未完の場合は空欄となります。

名前空間

【CC-RX】

静的解析

変数が属している名前空間名を表示します。

名前空間がネストしている場合は,“名前空間名::名前空間名”の形式で表示します。また,無名名前空間の場合は,“<unnamed>”を表示します。

ただし,解析未完の場合は空欄となります。

ファイル名

静的解析

変数が定義されているC/C++ソース・ファイル名を表示します(パスを除く)。

ただし,プロジェクト内のC/C++ソース・ファイルで定義されていない場合,または解析未完の場合は,“(定義箇所なし)”を表示します。

なお,ヘッダ・ファイルで定義されている場合は,該当ヘッダ・ファイル名を表示します。

関数名注1

静的解析

変数が定義されている関数の関数名を表示します。

だたし,関数内スタティック変数以外の場合は空欄となります。

【CC-RX】

上記に加え,“()”内に関数の引数の型を列挙します。

また,constメンバ関数/volatileメンバ関数の場合は,関数名の直後に“const”/“volatile”を表示します。

ファイル・パス注1

静的解析

変数が定義されているC/C++ソース・ファイルの絶対パスを表示します。

ただし,プロジェクト内のC/C++ソース・ファイルで定義されていない場合,または解析未完の場合は空欄となります。

なお,ヘッダ・ファイルで定義されている場合は,該当ヘッダ・ファイルの絶対パスを表示します。

PM情報【RH850】

静的解析

変数に対してアクセス可能なPEを次にように表示します。

-

PEnからアクセス : PMn

-

PEでアクセス : Common

-

不明 : -

ただし,この項目は,選択しているマイクロコントローラがマルチコア対応版の場合のみ表示します。

インポート注1

静的解析

変数情報の取得先を次のように表示します。

-

アクティブ・プロジェクト内から取得した場合

“Original”を表示

-

インポート・ファイルから取得した場合

インポート・ファイル名のすべてを表示

-

アクティブ・プロジェクト内とインポート・ファイルから取得した場合

“Original”とインポート・ファイル名のすべてを表示

なお,インポート機能については,「2.12情報ファイルをインポート/エクスポートする」を参照してください。

アクセス指定子

【CC-RX】

静的解析

メンバ変数に指定されているアクセス指定子を表示します。

ただし,解析未完の場合は“-”を表示します。

表示可能なアクセス指定子は次のとおりです。

public,private,protected

属性

静的解析

変数のシンボル属性/シンボル修飾属性を表示します。

複数の属性が存在する場合は,“,”で区切り表示します。

ただし,解析未完の場合は“-”を表示します。

表示可能な属性は次のとおりです。

-

【CC-RH】
static,ior,const,volatile

-

【CC-RX】
static,const,volatile,restrict

-

【CC-RL】
static,const,volatile, near,far,saddr

静的解析

変数の型を表示します注2

なお,“#define文”/“typedef文”により型に別名が付与されている場合,別名ではなく,基となる型を表示します。

ただし,または解析未完の場合は“-”を表示します。

表示可能な最大ポインタ数に制限はありません(配列は最大4次元まで表示可)。

メンバ

静的解析

構造体/共用体のメンバを表示します。

複数のメンバが存在する場合は,“,”で区切り表示します。

ただし,構造体/共用体以外の場合,または解析未完の場合は“-”を表示します。

アドレス

静的解析

変数の配置アドレスを16進数で表示します。

表示桁数は選択しているマイクロコントローラの最大アドレス値と同等です。

ただし,解析未完の場合は“-”を表示します。

サイズ[バイト]

静的解析

変数のサイズを10進数で表示します。

ただし,サイズがバイトで表示できないビット変数などの場合,または解析未完の場合は“-”を表示します。

【CC-RX(V1.xx.xx)】

定義のみで参照されていない変数は,コンパイラの最適化によりサイズ情報が削除されるため“0”が表示されます。

参照回数

静的解析

プログラム中で変数が参照されている回数を10進数で表示します。

変数の定義箇所も参照として計数します。また,構造体/共有体/配列の場合は,変数単位で計数します(メンバごとや要素ごとの参照回数は非表示)。

変数定義行において,代入文が記述されている行(“int variable = 10”など)も参照回数に計数します。

また,“variable++;”を記述している行は“variable = variable + 1”と解釈するため,参照回数は2回と計数します。

なお,C/C++ソース・ファイル中の“#if”/“#ifdef”などで,コンパイル時にプリプロセッサにより除外されるコードにおいて参照されている箇所は参照回数に含みません(コンテキスト・メニューの[すべての参照を検索]による検索結果においても出力しません)。

ただし,解析未完の場合は“-”を表示します。

リード回数

【Full-spec emulator】

【IECUBE】

【E1/E20/E2【RH850】】

【E1/E2/E2 Lite/E20【RX】】

【シミュレータ】

動的解析

プログラムを実行した結果,変数がリードされた回数を10進数で表示します注3,4

構造体/共用体の場合は,構造体/共用体の変数単位でリード回数を計数します(メンバごとや要素ごとのリード回数は非表示)。

ただし,デバッグ・ツールのトレース機能が無効,または解析未完の場合は“-”を表示します。

ライト回数

【Full-spec emulator】

【IECUBE】

【E1/E20/E2【RH850】】

【E1/E2/E2 Lite/E20【RX】】

【シミュレータ】

動的解析

プログラムを実行した結果,変数がライトされた回数を10進数で表示します注3,4

構造体/共用体の場合は,構造体/共用体の変数単位でライト回数を計数します(メンバごとや要素ごとのライト回数は非表示)。

ただし,デバッグ・ツールのトレース機能が無効,または解析未完の場合は“-”を表示します。

リード/ライト回数注1

【Full-spec emulator】

【IECUBE】

【E1/E20/E2【RH850】】

【E1/E2/E2 Lite/E20【RX】】

【シミュレータ】

動的解析

プログラムを実行した結果,変数がリード/ライトされた回数を10進数で表示します注3,4

構造体/共用体の場合は,構造体/共用体の変数単位でリード/ライト回数を計数します(メンバごとや要素ごとのリード/ライト回数は非表示)。

なお,コンパイラの最適化により変数がレジスタに割り当てられている区間では,変数に対するリード/ライトが解析不能であるため,この区間のリード/ライトは計数されません。

ただし,デバッグ・ツールのトレース機能が無効,または解析未完の場合は“-”を表示します。

最小値

【Full-spec emulator】

【IECUBE】

【E1/E20/E2【RH850】】

【E1/E2/E2 Lite/E20【RX】】

【シミュレータ】

動的解析

プログラムを実行した結果,計測時間内での最小値を10進数で表示します注3

4バイト以下の変数のみ表示可能です。

ただし,bit型/boolean型/Bool型/構造体/共用体/配列/ポインタの場合,デバッグ・ツールのトレース機能が無効,または解析未完の場合は“-”を表示します。

最大値

【Full-spec emulator】

【IECUBE】

【E1/E20/E2【RH850】】

【E1/E2/E2 Lite/E20【RX】】

【シミュレータ】

動的解析

プログラムを実行した結果,計測時間内での最大値を10進数で表示します注3

4バイト以下の変数のみ表示可能です。

ただし,bit型/boolean型/Bool型/構造体/共用体/配列/ポインタの場合,デバッグ・ツールのトレース機能が無効,または解析未完の場合は“-”を表示します。

データ・カバレッジ[%]

【IECUBE【RL78】】

【シミュレータ】

動的解析

変数のデータ・カバレッジ率(”アクセス6れたアドレス範囲のバイト数”÷”変数のサイズ”×100)を表示します(「3.2カバレッジ結果について」参照)。

なお,セル内背景色の比率は,データ・カバレッジ率を示します。

ただし,デバッグ・ツールのカバレッジ機能【IECUBE】【E20【RX】】【シミュレータ】が無効,または解析未完の場合は“-”を表示します。

注 1.

この項目は,デフォルトでは表示されません。表示方法についての詳細は,「2.6.1表示項目を設定する」を参照してください。

注 2.

“#define文”または“typedef文”により型に別名が付与されている場合,別名ではなく,基となる型を表示します。

注 3.

プロパティ パネル[設定]タブ上の[全般]カテゴリ内[解析結果を累積する]プロパティにおいて[はい]を選択している場合,プログラム実行ごとの累積による数値を表示します。

注 4.

取得したトレース・データを基に計数するため,たとえば,4バイト領域への1回のライトが,トレース・データ上では上位2バイトと下位2バイトで出力されている場合では,2回と表示します。

 

なお,[変数名]項目の最下段には,[合計値]として,各ファイル単位ごとの次の情報を表示します。

ただし,[ファイル名]項目に“(定義箇所なし)”を表示している場合は,これを1つのファイルとして扱います。

図 A.7

[合計値]の表示(変数一覧 パネル)

項目

内容

ファイル名

対象ファイル名

ファイル・パス

対象ファイル・パス

サイズ[バイト]

対象ファイル内変数のサイズの合計値

参照回数

対象ファイル内変数の参照回数の合計値

リード回数

対象ファイル内変数からのリード回数の合計値

ライト回数

対象ファイル内変数へのライト回数の合計値

リード/ライト回数

対象ファイル内変数へのリード/ライト回数の合計値

データ・カバレッジ(%)

対象ファイル内変数のファイル単位でのデータ・カバレッジ率

この項目は,デフォルトでは表示されません。表示方法についての詳細は,「2.6.1表示項目を設定する」を参照してください。

注意 1.

デバッグ・ツールと切断時は,動的解析情報の項目は非表示となります(デフォルト)。

注意 2.

bit型変数/boolean型/_Bool型変数/構造体ビット・フィールドに対する[リード回数]/[ライト回数]/[リード/ライト回数]/[データ・カバレッジ[%]]項目の計測は,バイト単位で行います(変数が割り当てられているアドレスへのアクセスを計測)。このため,同一アドレスに割り当てられているbit型変数/boolean型/_Bool型変数/構造体ビット・フィールドに対するこれらの項目の値は同じ値となります。

備考 1.

同一関数内に同名の関数内スタティック変数が宣言されている場合の扱いは次のとおりです。

-

[メンバ]/[アドレス]/[サイズ[バイト]]/[リード回数]/[ライト回数]/[リード/ライト回数]/[最小値]/[最大値]/[データ・カバレッジ[%]]
関数内で最初に宣言された変数の情報を表示します。

-

上記以外の項目
関数内で最後に宣言された変数の情報を表示します。

備考 2.

ヘッダ・ファイル内に“static”の変数定義を記述して,1つ以上のソース・ファイルでインクルードしている場合,ヘッダ・ファイルとすべてのソース・ファイルの情報を1行にまとめて表示します。

備考 3.

各情報の表示は,次のカスタマイズを行うことができます。
- 解析情報をソート表示する
- 解析情報をフィルタ表示する

備考 4.

このエリア左端のカレント行マーク( )は,該当行がカレント行であることを示します。
カレント行に対しては,次の操作を行うことができます。
- 定義箇所へジャンプする
- ウォッチ式に登録する
- 参照箇所を一覧表示する
- 値の推移をグラフ化する

[ツールバー]

ツールバー上の各ボタン,および機能は次のとおりです。

 

最新情報を取得し,表示内容を更新します。

 

プログラムの実行が停止するごとに最新情報を取得し,表示内容を更新します。

ただし,プロパティ パネル[設定]タブ上の[全般]カテゴリ内[プログラム停止時に更新を行う]プロパティにおいて[個別に指定する]以外を指定している場合,このボタンは無効となります(プロパティ パネルでの設定を反映した状態で固定されます)。

 

プログラムの実行により値が変化したことを示す強調表示を解除します。

ただし,プログラム実行中は無効となります。

 

プロジェクト・ツリー パネルで現在選択しているファイル/カテゴリ内の変数の情報値のみを表示します(「(a)プロジェクト・ツリー パネルとの連携」参照)。

 

エディタ パネル上のキャレット位置の単語で始まる変数の情報値のみを表示します(「(b)エディタ パネルとの連携」参照)。

 

【RH850】

デバッグ・マネージャ パネルで選択しているPEn,および共通領域内の変数の情報値のみを表示します(「(c)デバッグ・マネージャ パネルとの連携【RH850】」参照)。

ただし,選択しているマイクロコントローラがマルチコア対応版でない場合,またはデバッグ・ツールと切断時は無効となります。

[[ファイル]メニュー(変数一覧 パネル専用部分)]

変数一覧 パネル専用の[ファイル]メニューの各項目,および機能は次のとおりです。

変数一覧データ を保存

このパネルの内容を前回保存したファイルに保存します(「2.14解析情報をファイルに保存する」参照)。

なお,起動後に初めてこの項目を選択した場合は,[名前を付けて 変数一覧データ を保存...]の選択と同等の動作となります。

名前を付けて 変数一覧データ を保存...

このパネルの内容を指定したファイルに保存するために,名前を付けて保存 ダイアログをオープンします(「2.14解析情報をファイルに保存する」参照)。

印刷...

現在このパネルに表示している内容を印刷するために,Windows の印刷用 ダイアログをオープンします。

[[編集]メニュー(変数一覧 パネル専用部分)]

変数一覧 パネル専用の[編集]メニューの各項目,および機能は次のとおりです。

コピー

選択している行の内容をタブ区切りの文字列としてクリップ・ボードにコピーします(複数行選択可)。

なお,コピーした内容をこのパネル上に貼り付けることはできません。

すべて選択

このパネルに表示されているすべての行を選択状態にします。

[コンテキスト・メニュー]

このパネル上において,マウスを右クリックすることにより表示されるコンテキスト・メニューの各項目,および機能は次のとおりです。

すべての参照を検索

選択している行(複数行選択可)の変数を参照している箇所を検索し,出力 パネル[参照の検索]タブ上に参照箇所一覧を表示します(「2.11参照箇所を一覧表示する」参照)。

解析グラフに登録

選択している行(複数行選択可)の変数を解析グラフ パネルに登録します(「2.13.1値の推移をグラフ化する」参照)。

ただし,デバッグ・ツールと切断時は無効となります。

アクセス・ブレークの設定

ブレーク関連のイベントを設定するために,次のカスケード・メニューを表示します(「2.9.2変数にブレーク・イベントを設定する」参照)。

ただし,デバッグ・ツールと切断時は無効となります。

 

変数に読み込みブレークを設定

カレント行の変数に,リード・アクセスのブレーク・イベントを設定します。

変数に書き込みブレークを設定

カレント行の変数に,ライト・アクセスのブレーク・イベントを設定します。

変数に読み書きブレークを設定

カレント行の変数に,リード/ライト・アクセスのブレーク・イベントを設定します。

ウォッチ1に登録

選択している行(複数行選択可)の変数をウォッチ式としてウォッチ パネル(ウォッチ1)に登録します(「2.10ウォッチ式に登録する」参照)。

ただし,デバッグ・ツールと切断時は無効となります。

ソースへジャンプ

カレント行の変数が定義されているソース・ファイルをエディタ パネル上にオープンします(「2.7定義箇所へジャンプする」参照)。

メモリへジャンプ

カレント行の変数の開始アドレスに対応するメモリ・リストをメモリ パネル(メモリ1)上にオープンします(「2.7定義箇所へジャンプする」参照)。

ただし,デバッグ・ツールと切断時は無効となります。

コピー

選択している行の内容をタブ区切りの文字列としてクリップ・ボードにコピーします(複数行選択可)。

なお,コピーした内容をこのパネル上に貼り付けることはできません。

【RX】
組み合わせブレークの場合,組み合わせ条件が“OR”の場合のみ有効となります。