--strict_symbols--no_strict_symbols

オプション --strict_symbols は、マッピングシンボル型が、ABI シンボル型と一致していることを確認します。型が一致しない場合は、リンカによって警告が表示されます。

不一致が起こりうるのは、独自のアセンブラを手作業でコーディングした場合だけです。

Show/hideデフォルト

デフォルトは --no_strict_symbols です。

Show/hide

以下のアセンブラコードにおいて、シンボル sym は ARM であり、STT_FUNC という型を持ちます。

    area code, readonly
        DCD sym + 4
        ARM
sym  PROC
        NOP
        THUMB
        NOP
        ENDP
        END

動作の違いは、DCD sym + 4 の意味です。

  • ABI 以前のリンカでは、シンボルの状態は、その位置に唯一存在するマッピングシンボルの状態です。この例では、Thumb が該当します。

  • ABI リンカでは、シンボルの型は、シンボルの位置 + オフセットの状態です。

Show/hide関連項目

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0493EJ
Non-ConfidentialID081711