FAQ 1011373 : -overrun_fetchオプションを指定すると、アクセス禁止領域に対してもNOP命令が挿入されてしまいます。

Q: 質問

-overrun_fetchオプションを指定すると、アクセス禁止領域に対してもNOP命令が挿入されてしまいます。


A: 回答

-overrun_fetchオプションを指定すると、セクション間および終端コード・セクションの直後に128バイト以上の空き領域が存在する場合に空き領域に対して128バイト分のNOP命令を挿入します。このとき、空き領域の属性までは判断できないため、アクセス禁止領域に対してもNOP命令を挿入する可能性があります。

特定領域に対するNOP命令の挿入を抑止するには、-cpuオプションと組み合わせて指定して下さい。

例:ROM領域(0xFF000000~0xFFFDFFFF)の直後にアクセス禁止領域が配置されている場合
    ----------------------------   
  -cpu=ROM=FF000000-FFFDFFFF
    ----------------------------
FF000000H番地からFFFDFFFFH番地をROM領域として認識しますので、この領域外にはNOP命令を生成しません。

CS+の場合、[リンク・オプション]タブ->[ベリファイ]カテゴリ->[epレジスタの扱い]で「セクションの割り付けアドレスをチェックする]で指定してください。

 

適用製品

RH850ファミリ用Cコンパイラパッケージ
他にご質問がございましたら、リクエストを送信してください