Everything
8.6.2 PIROD

CC-RHでは,定数データの参照をPC相対で行うことにより,位置独立を実現します。コードと同じ相対参照方法であるため,PIROD機能はPIC機能と同時に有効にしたうえで,コード領域と定数データ領域の距離がリンク時と同じになるように,実行したい位置に適切に配置する必要があります。

-pirodオプションを指定すると,定数データの配置先のデフォルト・セクションが.pcconst32セクションになります。そして,.pcconst32セクションに配置した定数データへの参照を,PC相対参照で行うことにより,任意の位置への配置と参照をを実現します。#pragma section指令や-Xsectionオプションを使用することで,配置先セクションを.pcconst16セクションや.pcconst23セクションに変更できます。これにより,より短い命令長で定数データを参照できます。