CC-RXが使用する最適化リンケージエディタ(Optlnk)は,プログラム中に定義した複数のセクションを同じアドレスに割り付けることができるstartオプションを提供しています。このように割り付けられたセクションを“オーバーレイ・セクション”と呼びます。
この節では,ロード・モジュール内のオーバーレイ・セクションに対する“オーバーレイ・セクションの選択機能”の設定方法について説明します。
プログラムの実行時,ロード・モジュール内の同じアドレスに割り付けられたセクションはいずれか1つのセクションしか実行されません。
デバッグ・ツールは,同じアドレスに割り付けられたセクションのうち,デバッグ対象とするオーバーレイ・セクション(以降,優先セクションと呼びます)を選択する“オーバーレイ・セクションの選択機能”を提供しています。
プログラムの実行前に優先セクションを選択することにより,非優先セクションのデバッグ情報が隠蔽されるため,優先セクションをデバッグしやすくなります。
以下は,Optlnkのstartオプションを使用したオーバーレイ・セクションの定義例になります。
start = Psect01/1000,Psect02/2000,Psect03/3000,ram01:ram02:ram03/5000 rom = Psect01=ram01,Psect02=ram02,Psect03=ram03 |
romオプションにより,“PsectXX”セクションと同サイズの“ramXX”セクションを確保し,“PsectXX”セクション内定義シンボルを“ramXX”セクションのアドレス上でリロケーションします(“XX”は,この例では01, 02, または03になります)。