変数や関数を効率よく配置するには,変数/関数情報ヘッダ・ファイルを生成・使用します。プロパティ パネルの[リンク・オプション]タブの[変数/関数情報ヘッダ・ファイルを出力する]プロパティを設定することにより,変数/関数情報ヘッダ・ファイル(参照される変数と関数の参照回数順から,saddr領域とcallt領域の効率的な割り当てを行うためのヘッダ・ファイル)を生成し,その変数/関数情報ヘッダ・ファイルを使用してコンパイルを行うことで,変数はsaddr領域,関数はcallt領域に配置されます。
なお,本機能を使用する前に,ビルドが正常に終了してロード・モジュール・ファイルが生成されていることを確認してください。
1回のビルドにより,変数/関数情報ヘッダ・ファイルを自動生成し,そのファイルを使用して変数や関数の配置までを行う場合の手順を示します。
プロジェクト・ツリーでビルド・ツール・ノードを選択し,プロパティ パネルの[リンク・オプション]タブを選択します。
[変数/関数情報ヘッダ・ファイルを出力する]プロパティで[はい]を選択すると,空の変数/関数情報ヘッダ・ファイルを生成し,プロジェクトに追加します(プロジェクト・ツリーのファイル・ノードにも表示されます)。ファイルの出力先は,[変数/関数情報ヘッダ・ファイル出力フォルダ]プロパティ,および[変数/関数情報ヘッダ・ファイル名]プロパティで設定されているものとなります。
変数/関数情報ヘッダ・ファイルの出力フォルダ,およびファイル名の設定は,変更することもできます。
[変数/関数情報ヘッダ・ファイル出力フォルダ]プロパティにおいて,テキスト・ボックスへの直接入力,または[...]ボタンにより行います。
%ActiveProjectDir% : アクティブ・プロジェクト・フォルダの絶対パスに置換します。
%ActiveProjectName% : アクティブ・プロジェクト名に置換します。
%BuildModeName% : ビルド・モード名に置換します。
%MainProjectDir% : メイン・プロジェクト・フォルダの絶対パスに置換します。
%MainProjectName% : メイン・プロジェクト名に置換します。
%MicomToolPath% : 本製品のインストール・フォルダの絶対パスに置換します。
%ProjectDir% : プロジェクト・フォルダの絶対パスに置換します。
%ProjectName% : プロジェクト名に置換します。
%TempDir% : テンポラリ・フォルダの絶対パスに置換します。
%WinDir% : Windowsシステム・フォルダの絶対パスに置換します。
デフォルトでは,“%BuildModeName%”が設定されています。
本プロパティを変更すると,空の変数/関数情報ヘッダ・ファイルを生成し,プロジェクトに追加します(プロジェクト・ツリーのファイル・ノードにも表示されます)。
[変数/関数情報ヘッダ・ファイル名]プロパティにおいて,テキスト・ボックスへの直接入力により行います。
%ActiveProjectName% : アクティブ・プロジェクト名に置換します。
%MainProjectName% : メイン・プロジェクト名に置換します。
%ProjectName% : プロジェクト名に置換します。
デフォルトでは,“%ProjectName%_vfi.h”が設定されています。
本プロパティを変更すると,空の変数/関数情報ヘッダ・ファイルを生成し,プロジェクトに追加します(プロジェクト・ツリーのファイル・ノードにも表示されます)。
変数/関数情報ヘッダ・ファイルが生成され,自動的にそれをCソースにインクルードして再度リビルドが実行されます。
ビルドの実行により,「(a) 変数/関数情報ヘッダ・ファイルの生成の設定」で生成した変数/関数情報ヘッダ・ファイルが上書きされます。 |
ビルドが正常に終了すると,変数や関数の配置を行ったロード・モジュール・ファイルが生成されます。
変数/関数情報ヘッダ・ファイルは,ユーザが編集することも可能です。
「(1) 変数/関数情報ヘッダ・ファイルを自動生成して変数や関数の配置を行う場合」で生成した変数/関数情報ヘッダ・ファイルをユーザが編集し,そのファイルを使用して変数や関数の配置を行う場合の手順を示します。
「(1) 変数/関数情報ヘッダ・ファイルを自動生成して変数や関数の配置を行う場合」で自動生成した変数/関数情報ヘッダ・ファイルを編集します。
プロジェクト・ツリーでビルド・ツール・ノードを選択し,プロパティ パネルの[リンク・オプション]タブを選択します。
[変数/関数情報ヘッダ・ファイルを出力する]プロパティで[いいえ]を選択します。
次に,[コンパイル・オプション]タブを選択します。
[コンパイル単位の先頭にインクルードするファイル]プロパティに編集した変数/関数情報ヘッダ・ファイルを指定します。