非機密扱い
PDF 版
ARM DUI0474LJ
ARM
®
コンパイラ
armlink
ユーザガイド
バージョン 5.06
ホーム
>
イメージの構造と生成
>
リンカによって生成されるベニア
> 位置非依存から絶対ベニアへの生成
3.6.4 位置非依存から絶対ベニアへの生成
絶対コードに対して位置非依存コードを呼び出すには、ベニアが必要です。
通常の呼び出し命令では、呼び出しアドレスからのオフセットとしてターゲットのアドレスがエンコードされます。
位置非依存
(PI)コードから絶対コードへの呼び出しが行われるとリンク時にはオフセットを計算できないため、リンカは長分岐ベニアを挿入する必要があります。
PI から絶対ベニアへの生成は、
--piveneer
オプションを使用して制御できます。これはデフォルトです。このオプションを
--no_piveneer
を使用してオフにすると、PI コードから絶対コードへの呼び出しが検出されたときにリンカによってエラーが生成されます。
関連する概念
3.6.1
ベニアとは
関連する参考文書
12.97
--max_veneer_passes=value
12.107
--piveneer、--no_piveneer