3.19 位置非依存から絶対ベニアへの生成

位置非依存コードから絶対コードへの呼び出しにはベニアが必要です。

通常の呼び出し命令では、呼び出しアドレスからのオフセットとしてターゲットのアドレスがエンコードされます。位置非依存(PI)コードから絶対コードへの呼び出しが行われるとリンク時にはオフセットを計算できないため、リンカは長分岐ベニアを挿入する必要があります。

PI から絶対ベニアへの生成は、 --piveneer オプションを使用して制御できます。これはデフォルトです。このオプションを --no_piveneer を使用してオフにすると、PI コードから絶対コードへの呼び出しが検出されたときにリンカによってエラーが生成されます。

関連する概念
3.16 ベニアの概要
関連する参考文書
12.98 --max_veneer_passes=value
12.108 --piveneer、--no_piveneer
非機密扱いPDF file icon PDF 版ARM DUI0474JJ
Copyright © 2010-2013 ARM.All rights reserved.