Renesas Synergy™

FAQ 3000219 : オプション・バイトをアセンブラソースで記述した時のE0562320メッセージ(CC-RL)

Q: 質問

RL78コンパイラCC-RLを使用しています。アセンブラソースプログラムで、オプション・バイトの値を設定するプログラムを作成したのですが、次のエラーになります。対処方法を教えてください。

「E0562320:Section address overflowed out of range : ".option_byte_ATC4"」

(例)
.cseg OPT_BYTE
.db 0xef
.db 0xff
.db 0xe8
.db 0x84

.org 0xc4
.db 0


A: 回答

オプション・バイトのセクション名.option_byteを、特別に扱います。そのサイズがオプション・バイトの領域より大きいためにエラーになっています。

0xc4番地に配置するセクション疑似命令.ORGの前の行に、.CSEG疑似命令を追加してください。

(例)
.cseg OPT_BYTE
.db 0xef
.db 0xff
.db 0xe8
.db 0x84

.cseg ; 追加
.org 0xc4
.db 0

.CSEG疑似命令で、再配置属性にOPT_BYTEを指定した際には、セクション名.option_byteを出力します。
その後の.ORG疑似命令では、セクション名は、.ORG疑似命令を記述したセクション名(例では、.option_byte)を使用したセクション名.option_byte_ATC4となります。

このように、オプション・バイトに配置するための特別なセクションの扱いになることで、オプション・バイトの領域のサイズを超えたため、エラーを出力します。

.ORG疑似命令の前に、.CSEG疑似命令を使用することにより、.ORG疑似命令で生成されるセクション名が、.option_byteを含まなくなるため、エラーを回避できます。

 

適用製品

CS+ (旧 CubeSuite+)
e² studio
RL78ファミリ用Cコンパイラパッケージ
他にご質問がございましたら、リクエストを送信してください