# DWARF plugin

#### DWARF plugin

The DWARF plugin will search for DWARF-encoded debug information either in the input file, or a "companion" file (using a strategy similar to that of GDB), when some is found, will extract the following:

```
  - type information
  - function names, prototypes, local variables
  - global variables names & types
```

In addition, the DWARF plugin provides source-level debugging.

#### Dialog box

```
  Global name               : create global names based on DWARF informations
  Functions                 : Create functions based on DWARF informations
  Use function bounds       : Uses DWARF to determine functions boundaries
  Types (uncheck for speed) : Create types, needed for Apply calling
                              convention or Function prototype are definitive
  Apply calling convention  : DWARF will try and guess the calling convention
                              instead of using platform default calling
                              convention. Needed for Allow __usercall
  Allow __usercall          : If DWARF detects __usercall, allow to use it. If
                              not allowed, the default calling convention for
                              the platform will be used
  Function prototypes are definitive: Decompiler will not try to change the
                                     prototype if set. Use this with caution
  Import file names/line numbers: Import all information
```

'cfg/dwarf.cfg' file presents in details all the options

#### List of '-Odwarf' options

```
 - off : disable the plugin for the current session
 - import_lnnums=1 : import file name and line number into idb
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.hex-rays.com/extensions/plugins/concepts/plugins-shipped-with-ida/dwarf-plugin.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
