8.6.7 スキャッタファイル内のシンボルに関連する関数

シンボルに関連する関数 defined を使用すると、グローバルシンボルが定義されているかどうかに応じて、異なる値を割り当てることができます。

シンボルに関連する関数、 defined(global_symbol_name) は、 global_symbol_name が定義されていない場合はゼロを返し、定義されている場合は非ゼロを返します。

LR1 0x8000
{
    ER1 (defined(version1) ?0x8000 : 0x10000)   ; version1 が定義されている場合、ベースアドレスは 0x8000
                                                 ; version1 が定義されていない場合、
                                                 ; ベースアドレスは 0x10000
    {
        *(+RO)
    }
    ER2+0
    {
        *(+RW +ZI)
    }
}
関連する概念
8.6.1 式の評価の数値定数を指定するメソッド
8.6.3 スキャッタファイルでの式の使用
8.6.4 スキャッタファイル内の式の規則
8.6.5 スキャッタファイルで使用する実行アドレスの組み込み関数
8.6.6 ScatterAssert 関数とロードアドレスに関連する関数
8.6.11 ロード領域に厳密に配置した状態で、実行領域でベースアドレスに合わせる例
関連する参考文書
8.2 スキャッタファイルの構文
8.3.2 ロード領域記述の構文
8.4.2 実行領域の記述に含まれている構文
非機密扱いPDF file icon PDF 版ARM DUI0474LJ
Copyright © 2010-2015 ARM.All rights reserved.