symdefs ファイルの形式

symdefs ファイルにはシンボルとその値が定義されています。 ファイルは以下で構成されます。

識別行

symdefs ファイルの識別行は以下で構成されます。

  • 識別文字列 #<SYMDEFS>#(ファイルが symdefs ファイルとしてリンカに認識されるには、そのファイル内の最初の 11 文字がこの文字列である必要があります)

  • 以下の形式のリンカのバージョン情報

    ARM Linker, N.nn [Build num]:

  • 以下の形式の、symdefs ファイルを最後に更新した日付と時刻

    Last Updated: Date

バージョン情報と更新情報は、識別文字列の一部ではありません。

コメント

コメントは、テキストエディタを使用して手動で挿入できます。 コメントには、以下の特性があります。

  • 先頭行は、特殊な識別コメント #<SYMDEFS># で始まる必要があります。 このコメントは、ファイル作成時にリンカによって挿入されます。このコメントを手動で削除しないで下さい。

  • ホワイトスペース以外の最初の文字がセミコロン(;)またはハッシュ(#)の行は、すべてコメントです。

  • ホワイトスペース以外の最初の文字の後にセミコロン(;)またはハッシュ(#)がある行は、コメントではありません。

  • 空白行は無視されるので、読みやすくするために空白行を挿入できます。

シンボル情報

シンボル情報は 1 行に記述され、以下で構成されます。

シンボルの値

リンカでは、シンボルの絶対アドレスを固定長の 16 進形式(例 0x00008000)で書き込みます。 このファイルを編集する場合、アドレス値には 16 進形式と 10 進形式のどちらも使用できます。

タイプフラグ

シンボルのタイプは 1 文字で以下のように表されます。

A

ARM コード

T

Thumb コード

D

データ

N

数値

シンボル名

シンボルの名前です。

Show/hidesymdefs ファイルの例

この例では、一般的な symdefs ファイルの形式を示しています。

Example 5. symdefs ファイルの形式

#<SYMDEFS># ARM Linker, 5.01 [Build num]: Last Updated: 日付
; 値の型名、これは追加されたコメント
0x00008000 A __main
0x00008004 A __scatterload
0x000080E0 T main
0x0000814D T _main_arg
0x0000814D T __argv_alloc
0x00008199 T __rt_get_argv
...
   # これもまたコメントであり、空白行は無視される
...
0x0000A4FC D __stdin
0x0000A540 D __stdout
0x0000A584 D __stderr
0xFFFFFFFD N __SIG_IGN

Show/hide関連項目

Copyright © 2010-2012 ARM. All rights reserved.ARM DUI 0474GJ
Non-ConfidentialID051612