JADA099C February 2019 – March 2026
EXIDX テーブルおよび EXTAB テーブルの一部のフィールドは、プログラム メモリのアドレスや、テーブル内の他の位置へのポインタを記録する必要があります。これらはいずれも通常、コード セグメントまたは読み取り専用セグメントに存在します。位置の独立性を実現するために、これらは R_C28x_PREL31 (ここでは略して PREL31) と呼ばれる、特殊な用途向けの PC 相対再配置を用いて処理されます。PREL31 フィールドは、32 ビット ワードの最下位 31 ビットに格納される、スケーリングされた符号付き 31 ビットオフセットとしてエンコードされます。残りの (最上位の) 1 ビットは、コンテキストによって異なる目的に使用されます。当該フィールドが参照する再配置されたアドレスは、エンコードされたオフセットを 1 ビット左シフトし、それをフィールドのアドレスに加えることで求められます。