6.18 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

数値

シンボル名

シンボルの名前です。

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

#<SYMDEFS># ARM Linker, 5.04 [Build num]:Last Updated:Date ; 値の型名、これは追加されたコメント 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

関連する概念
6.14 別のイメージに含まれているシンボルへのアクセス
関連する作業
6.15 symdefs ファイルの作成
6.16 グローバルシンボルのサブセットの出力
6.17 symdefs ファイルの読み出し
非機密扱いPDF file icon PDF 版ARM DUI0474JJ
Copyright © 2010-2013 ARM.All rights reserved.