[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
以下のマクロは、全てのデバッグ情報形式に関係する。
DBX_REGISTER_NUMBER (regno)
コンパイラが使用するレジスタ番号 regno に対応する、DBX のレジスタ 番号を返す C の式。 単純な場合は、この式の値は regno そのものになる。 だが、コンパイラは知っているが DBX は知らないレジスタがあったり、 その逆もある。 そういう場合は、あるレジスタはコンパイラとDBX で別の番号を必要とする。
ある二つのレジスタが GNU CC 内部で連続する番号になっており、
それらをペアとして使って複数ワードの値を保持する事ができるのであれば、
DBX_REGISTER_NUMBER
で番号を付け替えた後でも連続する
番号になっていなければならない。
そうなってないと、デバッガがそのレジスタのペアをアクセスできなく
なってしまう。デバッガは、レジスタのペアは、
デバッガ自身の番号付けの仕組みで連続になっていることを想定しているからである。
DEBX_REGISTER_NUMBER
を、レジスタのペアを保存しないようなやりかたで
定義したことがわかったら、代わりにしなければならないことは
実際のレジスタ番号付の仕組みの方を再定義することである。
DEBUGGER_AUTO_OFFSET (x)
アドレスが x(RTL式)である自動変数の整数オフセット値を 返す C の式。 デフォルトの計算方法では、x はフレームポインタをベースにしており、 フレームポインタからのオフセットを与えると仮定している。 このことは、DBX 向けのデバッグ情報出力や SDB 向けの COFF形式デバッグ情報出力 を生成し、かつ、‘-g’ オプションを指定したときにフレームポインタの 消去を許すターゲットでは必要とされる。
DEBUGGER_ARG_OFFSET (offset, x)
アドレスが x(RTL 式) である引数の整数のオフセット値を返す C の式。 名目上のオフセットは offset である。
PREFERRED_DEBUGGING_TYPE
単に ‘-g’ オプションを指定した場合に GNU CC が生成すべき
デバッグ情報形式を返す C の式である。
GNU CC がデバッグ情報出力の形式を複数サポートするにはこのマクロを定義する。
現在、指定可能な値は、DBX_DEBUG
、SDB_DEBUG
、
DWARF_DEBUG
、DWARF2_DEBUG
である。
ユーザが ‘-ggdb’ を指定したとき、GNU CC は通常このマクロの値を
基にデバッグ情報の出力形式を選択する。しかし、例外が二つある。
DWARF2_DEBUGGING_INFO
は定義されているが
LINKER_DOES_NOT_WORK_WITH_DWARF2
が定義されていない場合は、
GNU CC は DWARF2_DEBUG
という値を使う。
そうではなくて、DBX_DEBUGGING_INFO
が定義されている場合は、
GNU CC は DBX_DEBUG
を使う。
このマクロの値が影響するのはデフォルトのデバッグ出力だけである。 ユーザはいつでも、‘-gstabs’、‘-gcoff’、‘-gdwarf-1’、 ‘-gdwarf-2’、‘-gxcoff’ を使って特定の出力形式を 選ぶことができる。
This document was generated
using texi2html 1.78.