Update to ELF Tool Chain r3668

Highlights:
- Make sure that only TLS sections are sorted into TLS segment.
- Fixed multiple errors in "Section to Segment mapping".
- Man page updates
- ar improvements
- elfcopy: avoid filter_reloc uninitialized variable for rela
- elfcopy: avoid stripping relocations from static binaries
- readelf: avoid printing directory in front of absolute path
- readelf: add NT_FREEBSD_FEATURE_CTL FreeBSD note type
- test improvements

NOTES:

Some of these changes originated in FreeBSD and simply reduce diffs
between contrib and vendor.

ELF Tool Chain ar is not (currently) used in FreeBSD, and there are
improvements in both FreeBSD and ELF Tool Chain ar that are not in
the other.

Sponsored by:	The FreeBSD Foundation
This commit is contained in:
Ed Maste 2019-01-10 14:35:23 +00:00
commit ae500c1ff8
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=342918
218 changed files with 1382 additions and 1085 deletions

View file

@ -0,0 +1,126 @@
The Elftoolchain Project
========================
.. contents:: Table of Contents
Description
-----------
This software implements essential compilation tools and libraries for:
- managing program objects conforming to the ELF_ object format, and
- for managing DWARF_ debugging information in ELF objects.
The project currently implements the following utilities and
libraries:
=========== ============================================
Name Description
=========== ============================================
ar Archive manager.
addr2line Debug tool.
brandelf Manage the ELF brand on executables.
c++filt Translate encoded symbols.
elfcopy Copy and translate between object formats.
elfdump Diagnostic tool.
findtextrel Find undesired text relocations.
libdwarf DWARF access library.
libelf ELF access library.
mcs Manage comment sections.
nm List symbols in an ELF object.
ranlib Add archive symbol tables to an archive.
readelf Display ELF information.
size List object sizes.
strings Extract printable strings.
strip Discard information from ELF objects.
=========== ============================================
.. _ELF: http://en.wikipedia.org/wiki/Executable_and_Linkable_Format
.. _DWARF: http://www.dwarfstd.org/
Project Documentation
---------------------
- Release notes for released versions of this software are present in
the file ``RELEASE-NOTES`` in the current directory.
- The file ``INSTALL`` in the current directory contains instructions
on building and installing this software.
- Reference documentation in the form of manual pages is provided for
the utilities and libraries developed by the project.
- Additional tutorial documentation is present in the
``documentation`` directory.
Tracking Ongoing Development
----------------------------
The project uses subversion_ for its version control system.
.. _subversion: https://subversion.apache.org/
The subversion branch for the current set of sources may be accessed
at the following URL::
https://elftoolchain.svn.sourceforge.net/svnroot/elftoolchain/trunk
The project's source tree may be checked out from its repository by
using the ``svn checkout`` command::
% svn checkout https://elftoolchain.svn.sourceforge.net/svnroot/elftoolchain/trunk
Checked-out sources may be kept upto-date by running ``svn update``
inside the source directory::
% svn update
Instructions on building and installing the software are given in the
file ``INSTALL`` in the current directory.
Downloading Released Software
-----------------------------
Released versions of the project's software may also be downloaded
from SourceForge's `file release system`_.
.. _file release system: http://sourceforge.net/projects/elftoolchain/files/
Copyright and License
---------------------
This code is copyright its authors, and is distributed under the `BSD
License`_.
.. _BSD License: http://www.opensource.org/licenses/bsd-license.php
Developer Community
-------------------
The project's developers may be contacted using the mailing list:
``<elftoolchain-developers@lists.sourceforge.net>``.
Reporting Bugs
--------------
Please use our `Trac instance`_ for viewing existing bug reports and
for submitting new bug reports.
.. _`Trac instance`: http://sourceforge.net/apps/trac/elftoolchain/report
Additional Information
----------------------
Additional information about the project may be found on the `project
website`_.
.. _project website: http://elftoolchain.sourceforge.net/
.. $Id: README.rst 3656 2018-12-26 09:46:24Z jkoshy $
.. Local Variables:
.. mode: rst
.. End:

View file

@ -22,11 +22,11 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.\" $Id: addr2line.1 3263 2015-11-30 04:25:54Z kaiwang27 $
.\" $Id: addr2line.1 3642 2018-10-14 14:24:28Z jkoshy $
.\"
.Dd November 30, 2015
.Os
.Dt ADDR2LINE 1
.Os
.Sh NAME
.Nm addr2line
.Nd translate program addresses to source file names and line numbers

View file

@ -40,7 +40,7 @@
#include "uthash.h"
#include "_elftc.h"
ELFTC_VCSID("$Id: addr2line.c 3499 2016-11-25 16:06:29Z emaste $");
ELFTC_VCSID("$Id: addr2line.c 3544 2017-06-05 14:51:44Z emaste $");
struct Func {
char *name;

View file

@ -21,51 +21,52 @@
.\" out of the use of this software, even if advised of the possibility of
.\" such damage.
.\"
.\" $Id: ar.1 3230 2015-07-27 17:11:38Z emaste $
.\" $Id: ar.1 3642 2018-10-14 14:24:28Z jkoshy $
.\"
.Dd July 27, 2015
.Os
.Dd September 30, 2018
.Dt AR 1
.Os
.Sh NAME
.Nm ar
.Nd manage archives
.Sh SYNOPSIS
.Nm
.Fl d
.Op Fl T
.Op Fl f
.Op Fl j
.Op Fl T
.Op Fl v
.Op Fl z
.Ar archive
.Ar
.Nm
.Fl m
.Op Fl T
.Op Fl a Ar position-after
.Op Fl b Ar position-before
.Op Fl f
.Op Fl i Ar position-before
.Op Fl j
.Op Fl s | Fl S
.Op Fl T
.Op Fl z
.Ar archive
.Ar
.Nm
.Fl p
.Op Fl T
.Op Fl f
.Op Fl s
.Op Fl T
.Op Fl v
.Ar archive
.Op Ar
.Nm
.Fl q
.Op Fl T
.Op Fl c
.Op Fl D
.Op Fl f
.Op Fl F Ar flavor | Fl -flavor Ar flavor
.Op Fl s | Fl S
.Op Fl T
.Op Fl U
.Op Fl v
.Op Fl z
@ -73,7 +74,6 @@
.Ar
.Nm
.Fl r
.Op Fl T
.Op Fl a Ar position-after
.Op Fl b Ar position-before
.Op Fl c
@ -83,6 +83,7 @@
.Op Fl i Ar position-before
.Op Fl j
.Op Fl s | Fl S
.Op Fl T
.Op Fl u
.Op Fl U
.Op Fl v
@ -99,6 +100,7 @@
.Nm
.Fl t
.Op Fl f
.Op Fl s
.Op Fl T
.Op Fl v
.Ar archive
@ -106,9 +108,10 @@
.Nm
.Fl x
.Op Fl C
.Op Fl T
.Op Fl f
.Op Fl o
.Op Fl s
.Op Fl T
.Op Fl u
.Op Fl v
.Ar archive

View file

@ -21,11 +21,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: ar.5 3182 2015-04-10 16:08:10Z emaste $
.\" $Id: ar.5 3642 2018-10-14 14:24:28Z jkoshy $
.\"
.Dd November 28, 2010
.Os
.Dd September 30, 2018
.Dt AR 5
.Os
.Sh NAME
.Nm ar
.Nd archive file format for
@ -84,6 +84,8 @@ An archive header comprises the following fixed sized fields:
.Bl -tag -width "Li ar_name"
.It Ar ar_name
(16 bytes) The file name of the archive member.
This field names a leaf file; absolute paths and relative paths containing
directory names are not supported.
The format of this field varies between the BSD and SVR4/GNU formats and
is described in more detail in the section
.Sx "Representing File Names"

View file

@ -72,7 +72,7 @@
#include "ar.h"
ELFTC_VCSID("$Id: ar.c 3319 2016-01-13 21:37:53Z jkoshy $");
ELFTC_VCSID("$Id: ar.c 3629 2018-09-30 19:26:28Z jkoshy $");
enum options
{
@ -100,11 +100,12 @@ main(int argc, char **argv)
struct bsdar *bsdar, bsdar_storage;
char *arcmd, *argv1_saved;
size_t len;
int i, opt;
int exitcode, i, opt;
bsdar = &bsdar_storage;
memset(bsdar, 0, sizeof(*bsdar));
exitcode = EXIT_SUCCESS;
arcmd = argv1_saved = NULL;
bsdar->output = stdout;
@ -152,9 +153,9 @@ main(int argc, char **argv)
bsdar->options |= AR_S;
while ((bsdar->filename = *argv++) != NULL)
ar_write_archive(bsdar, 's');
exitcode |= ar_write_archive(bsdar, 's');
exit(EXIT_SUCCESS);
exit(exitcode);
} else {
if (argc < 2)
bsdar_usage();
@ -331,30 +332,33 @@ main(int argc, char **argv)
if ((!bsdar->mode || strchr("ptx", bsdar->mode)) &&
bsdar->options & AR_S) {
ar_write_archive(bsdar, 's');
exitcode = ar_write_archive(bsdar, 's');
if (!bsdar->mode)
exit(EXIT_SUCCESS);
exit(exitcode);
}
switch(bsdar->mode) {
case 'd': case 'm': case 'q': case 'r':
ar_write_archive(bsdar, bsdar->mode);
exitcode = ar_write_archive(bsdar, bsdar->mode);
break;
case 'p': case 't': case 'x':
ar_read_archive(bsdar, bsdar->mode);
exitcode = ar_read_archive(bsdar, bsdar->mode);
break;
default:
bsdar_usage();
/* NOTREACHED */
}
for (i = 0; i < bsdar->argc; i++)
if (bsdar->argv[i] != NULL)
for (i = 0; i < bsdar->argc; i++) {
if (bsdar->argv[i] != NULL) {
bsdar_warnc(bsdar, 0, "%s: not found in archive",
bsdar->argv[i]);
exitcode = EXIT_FAILURE;
}
}
exit(EXIT_SUCCESS);
exit(exitcode);
}
static void

View file

@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: ar.h 2496 2012-04-24 02:33:40Z jkoshy $
* $Id: ar.h 3629 2018-09-30 19:26:28Z jkoshy $
*/
#include <libelf.h>
@ -135,8 +135,8 @@ struct bsdar {
};
void ar_mode_script(struct bsdar *ar);
void ar_read_archive(struct bsdar *_ar, int _mode);
void ar_write_archive(struct bsdar *_ar, int _mode);
int ar_read_archive(struct bsdar *_ar, int _mode);
int ar_write_archive(struct bsdar *_ar, int _mode);
void bsdar_errc(struct bsdar *, int _code, const char *fmt, ...);
int bsdar_is_pseudomember(struct bsdar *_ar, const char *_name);
const char *bsdar_strmode(mode_t m);

View file

@ -21,11 +21,11 @@
.\" out of the use of this software, even if advised of the possibility of
.\" such damage.
.\"
.\" $Id: ranlib.1 3195 2015-05-12 17:22:19Z emaste $
.\" $Id: ranlib.1 3642 2018-10-14 14:24:28Z jkoshy $
.\"
.Dd December 9, 2012
.Os
.Dt RANLIB 1
.Os
.Sh NAME
.Nm ranlib
.Nd update archive symbol tables

View file

@ -34,16 +34,20 @@
#include <errno.h>
#include <libgen.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "ar.h"
ELFTC_VCSID("$Id: read.c 3180 2015-04-09 15:13:57Z emaste $");
ELFTC_VCSID("$Id: read.c 3629 2018-09-30 19:26:28Z jkoshy $");
/*
* Handle read modes: 'x', 't' and 'p'.
*
* Returns EXIT_SUCCESS if all operations completed successfully or returns
* EXIT_FAILURE otherwise.
*/
void
int
ar_read_archive(struct bsdar *bsdar, int mode)
{
FILE *out;
@ -60,8 +64,8 @@ ar_read_archive(struct bsdar *bsdar, int mode)
gid_t gid;
char **av;
char buf[25];
char find;
int i, flags, r;
int found;
int exitcode, i, flags, r;
assert(mode == 'p' || mode == 't' || mode == 'x');
@ -70,6 +74,7 @@ ar_read_archive(struct bsdar *bsdar, int mode)
archive_read_support_format_ar(a);
AC(archive_read_open_filename(a, bsdar->filename, DEF_BLKSZ));
exitcode = EXIT_SUCCESS;
out = bsdar->output;
for (;;) {
@ -96,12 +101,27 @@ ar_read_archive(struct bsdar *bsdar, int mode)
if (bsdar_is_pseudomember(bsdar, name))
continue;
/* The ar(5) format only supports 'leaf' file names. */
if (strchr(name, '/')) {
bsdar_warnc(bsdar, 0, "ignoring entry: %s",
name);
continue;
}
/*
* If we had been given a list of file names to process, check
* that the current entry is present in this list.
*/
if (bsdar->argc > 0) {
find = 0;
found = 0;
for(i = 0; i < bsdar->argc; i++) {
av = &bsdar->argv[i];
if (*av == NULL)
continue;
/*
* Per POSIX, only the basename of a file
* argument should be compared.
*/
if ((bname = basename(*av)) == NULL)
bsdar_errc(bsdar, errno,
"basename failed");
@ -109,10 +129,10 @@ ar_read_archive(struct bsdar *bsdar, int mode)
continue;
*av = NULL;
find = 1;
found = 1;
break;
}
if (!find)
if (!found)
continue;
}
@ -157,7 +177,7 @@ ar_read_archive(struct bsdar *bsdar, int mode)
/* mode == 'x' */
if (stat(name, &sb) != 0) {
if (errno != ENOENT) {
bsdar_warnc(bsdar, 0,
bsdar_warnc(bsdar, errno,
"stat %s failed",
bsdar->filename);
continue;
@ -174,12 +194,6 @@ ar_read_archive(struct bsdar *bsdar, int mode)
if (bsdar->options & AR_V)
(void)fprintf(out, "x - %s\n", name);
/* Disallow absolute paths. */
if (name[0] == '/') {
bsdar_warnc(bsdar, 0,
"Absolute path '%s'", name);
continue;
}
/* Basic path security flags. */
flags = ARCHIVE_EXTRACT_SECURE_SYMLINKS |
ARCHIVE_EXTRACT_SECURE_NODOTDOT;
@ -189,11 +203,19 @@ ar_read_archive(struct bsdar *bsdar, int mode)
r = archive_read_extract(a, entry, flags);
}
if (r)
if (r) {
bsdar_warnc(bsdar, 0, "%s",
archive_error_string(a));
exitcode = EXIT_FAILURE;
}
}
}
if (r == ARCHIVE_FATAL)
exitcode = EXIT_FAILURE;
AC(archive_read_close(a));
ACV(archive_read_free(a));
return (exitcode);
}

View file

@ -40,7 +40,7 @@
#include "ar.h"
ELFTC_VCSID("$Id: write.c 3183 2015-04-10 16:18:42Z emaste $");
ELFTC_VCSID("$Id: write.c 3629 2018-09-30 19:26:28Z jkoshy $");
#define _ARMAG_LEN 8 /* length of the magic string */
#define _ARHDR_LEN 60 /* length of the archive header */
@ -352,17 +352,20 @@ read_objs(struct bsdar *bsdar, const char *archive, int checkargv)
/*
* Write an archive.
*
* Returns EXIT_SUCCESS if the write succeeded or EXIT_FAILURE otherwise.
*/
void
int
ar_write_archive(struct bsdar *bsdar, int mode)
{
struct ar_obj *nobj, *obj, *obj_temp, *pos;
struct stat sb;
const char *bname;
char **av;
int i;
int exitcode, i;
TAILQ_INIT(&bsdar->v_obj);
exitcode = EXIT_SUCCESS;
nobj = NULL;
pos = NULL;
memset(&sb, 0, sizeof(sb));
@ -376,16 +379,16 @@ ar_write_archive(struct bsdar *bsdar, int mode)
*/
if (stat(bsdar->filename, &sb) != 0) {
if (errno != ENOENT) {
bsdar_warnc(bsdar, 0, "stat %s failed",
bsdar_warnc(bsdar, errno, "stat %s failed",
bsdar->filename);
return;
return (EXIT_FAILURE);
}
/* We do not create archive in mode 'd', 'm' and 's'. */
if (mode != 'r' && mode != 'q') {
bsdar_warnc(bsdar, 0, "%s: no such file",
bsdar->filename);
return;
return (EXIT_FAILURE);
}
/* Issue a message if the '-c' option was not specified. */
@ -474,8 +477,10 @@ ar_write_archive(struct bsdar *bsdar, int mode)
*/
nobj = create_obj_from_file(bsdar, *av,
obj->mtime);
if (nobj == NULL)
if (nobj == NULL) {
exitcode = EXIT_FAILURE;
goto skip_obj;
}
}
if (bsdar->options & AR_V)
@ -510,9 +515,13 @@ ar_write_archive(struct bsdar *bsdar, int mode)
av = &bsdar->argv[i];
if (*av != NULL && (mode == 'r' || mode == 'q')) {
nobj = create_obj_from_file(bsdar, *av, 0);
if (nobj != NULL)
insert_obj(bsdar, nobj, pos);
if (bsdar->options & AR_V && nobj != NULL)
if (nobj == NULL) {
exitcode = EXIT_FAILURE;
*av = NULL;
continue;
}
insert_obj(bsdar, nobj, pos);
if (bsdar->options & AR_V)
(void)fprintf(bsdar->output, "a - %s\n", *av);
*av = NULL;
}
@ -521,6 +530,8 @@ ar_write_archive(struct bsdar *bsdar, int mode)
write_objs:
write_objs(bsdar);
write_cleanup(bsdar);
return (exitcode);
}
/*

View file

@ -1,6 +1,6 @@
#!/bin/sh
#
# $Id: native-elf-format 3293 2016-01-07 19:26:27Z emaste $
# $Id: native-elf-format 3650 2018-11-25 12:06:28Z jkoshy $
#
# Find the native ELF format for a host platform by compiling a
# test object and examining the resulting object.
@ -35,7 +35,7 @@ $1 ~ "Machine:" {
elfarch = "EM_386";
} else if (match($0, "MIPS")) {
elfarch = "EM_MIPS";
} else if (match($0, ".*[xX]86-64")) {
} else if (match($0, ".*[xX]86[-_]64")) {
elfarch = "EM_X86_64";
} else {
elfarch = "unknown";

View file

@ -22,11 +22,11 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.\" $Id: c++filt.1 3195 2015-05-12 17:22:19Z emaste $
.\" $Id: c++filt.1 3642 2018-10-14 14:24:28Z jkoshy $
.\"
.Dd August 24, 2011
.Os
.Dt C++FILT 1
.Os
.Sh NAME
.Nm c++filt
.Nd decode C++ symbols

View file

@ -21,11 +21,11 @@
.\" out of the use of this software, even if advised of the possibility of
.\" such damage.
.\"
.\" $Id: elfcopy.1 3565 2017-08-31 02:24:19Z emaste $
.\" $Id: elfcopy.1 3642 2018-10-14 14:24:28Z jkoshy $
.\"
.Dd August 30, 2017
.Os
.Dt ELFCOPY 1
.Os
.Sh NAME
.Nm elfcopy ,
.Nm objcopy

View file

@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: elfcopy.h 3446 2016-05-03 01:31:17Z emaste $
* $Id: elfcopy.h 3615 2018-05-17 04:12:24Z kaiwang27 $
*/
#include <sys/queue.h>

View file

@ -21,11 +21,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: mcs.1 2247 2011-11-29 08:41:34Z jkoshy $
.\" $Id: mcs.1 3642 2018-10-14 14:24:28Z jkoshy $
.\"
.Dd November 29, 2011
.Os
.Dt MCS 1
.Os
.Sh NAME
.Nm mcs
.Nd manipulate the comment section of an ELF object

View file

@ -34,7 +34,7 @@
#include "elfcopy.h"
ELFTC_VCSID("$Id: sections.c 3443 2016-04-15 18:57:54Z kaiwang27 $");
ELFTC_VCSID("$Id: sections.c 3646 2018-10-27 02:25:39Z emaste $");
static void add_gnu_debuglink(struct elfcopy *ecp);
static uint32_t calc_crc32(const char *p, size_t len, uint32_t crc);

View file

@ -34,7 +34,7 @@
#include "elfcopy.h"
ELFTC_VCSID("$Id: segments.c 3449 2016-05-03 13:59:29Z emaste $");
ELFTC_VCSID("$Id: segments.c 3615 2018-05-17 04:12:24Z kaiwang27 $");
static void insert_to_inseg_list(struct segment *seg, struct section *sec);

View file

@ -21,11 +21,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: strip.1 2069 2011-10-26 15:53:48Z jkoshy $
.\" $Id: strip.1 3642 2018-10-14 14:24:28Z jkoshy $
.\"
.Dd September 17, 2011
.Os
.Dt STRIP 1
.Os
.Sh NAME
.Nm strip
.Nd discard information from ELF objects

View file

@ -21,11 +21,11 @@
.\" out of the use of this software, even if advised of the possibility of
.\" such damage.
.\"
.\" $Id: dwarf.3 3295 2016-01-08 22:08:10Z jkoshy $
.\" $Id: dwarf.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd December 21, 2014
.Os
.Dt DWARF 3
.Os
.Sh NAME
.Nm dwarf
.Nd access debugging information in object files
@ -34,7 +34,6 @@
.Sh SYNOPSIS
.In libdwarf.h
.Sh DESCRIPTION
.Pp
The
.Lb libdwarf
provides functions that allow an application to read and write debugging
@ -129,7 +128,6 @@ A descriptor representing a static variable.
A descriptor representing a weak name.
.El
.Ss Error Handling
.Pp
Library functions that encounter an error will return with a value
other than
.Dv DW_DLV_OK .
@ -173,7 +171,7 @@ below.
.Pp
.Bl -tag -compact -width "CCCC"
.It Abbreviations
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_abbrev
Retrieve abbreviation information at a given offset.
.It Fn dwarf_get_abbrev_children_flag
@ -187,7 +185,7 @@ descriptor.
Retrieve the tag for an abbreviation entry.
.El
.It Addresses
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_address_size
Return the number of bytes needed to represent an address.
.It Fn dwarf_get_arange
@ -206,7 +204,7 @@ Retrieve information about non-contiguous address ranges for
a debugging information entry.
.El
.It Attributes
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_arrayorder
Retrieve the value of a
.Dv DW_AT_ordering
@ -279,7 +277,7 @@ Retrieve the attribute code for an attribute.
Retrieve the form of an attribute.
.El
.It Call Information Entries and Frame Descriptor Entries
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_cie_index
Retrieve the index for a CIE descriptor.
.It Fn dwarf_get_cie_info
@ -308,7 +306,7 @@ Retrieve an FDE descriptor.
Retrieve range information from an FDE descriptor.
.El
.It Compilation Units
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Xo
.Fn dwarf_get_cu_die_offset_given_cu_header_offset ,
.Fn dwarf_get_cu_die_offset_given_cu_header_offset_b
@ -323,7 +321,7 @@ compilation or type unit.
Step through compilation units in a debug context.
.El
.It Debugging Information Entries
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_child
Returns the child of a debugging information entry.
.It Fn dwarf_die_abbrev_code
@ -353,7 +351,7 @@ entry.
Retrieve the tag for a debugging information entry.
.El
.It Functions
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_func_cu_offset
Retrieves the offset for the compilation unit for a function.
.It Fn dwarf_func_die_offset
@ -367,7 +365,7 @@ Retrieve both the name and offsets for a function.
Retrieve information about static functions.
.El
.It Globals
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_globals
Retrieve a list of globals.
.It Fn dwarf_global_cu_offset
@ -396,7 +394,7 @@ and
allow an application to specify alternate low-level file access
routines.
.It Line Numbers
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_lineaddr
Retrieve the program address for a source line.
.It Fn dwarf_linebeginstatement
@ -420,7 +418,7 @@ Retrieve source files for a compilation unit.
Return line number information for a compilation unit.
.El
.It Location Lists
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_loclist_entry
Retrieve a location list entry.
.It Fn dwarf_loclist , Fn dwarf_loclist_n
@ -433,7 +431,7 @@ Retrieve location expressions.
Translate a location expression into a location descriptor.
.El
.It Error Handling
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_errmsg
Retrieve a human-readable error message.
.It Fn dwarf_errno
@ -444,7 +442,7 @@ Set the argument passed to a callback error handler.
Set the callback handler to be called in case of an error.
.El
.It Frame Handling
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_expand_frame_instructions
Translate frame instruction bytes.
.It Fn dwarf_set_frame_cfa_value
@ -464,7 +462,7 @@ Set the register number representing the
rule.
.El
.It Macros
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_find_macro_value_start
Return the macro value part of a macro string.
.It Fn dwarf_get_macro_details
@ -523,7 +521,7 @@ for DWARF constants:
and
.Fn dwarf_get_VIS_name .
.It Types
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_pubtypes , Fn dwarf_get_types
Retrieve descriptors for user-defined types.
.It Fn dwarf_next_types_section
@ -540,7 +538,7 @@ Retrieve the name of a type.
Retrieve the name and offsets for a type.
.El
.It Variables
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_vars
Retrieve descriptors for static variables.
.It Fn dwarf_var_cu_offset
@ -553,7 +551,7 @@ Retrieve the name of a variable.
Retrieve the name and offsets for a variable.
.El
.It Weak Symbols
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_weaks
Retrieve information about weak symbols.
.It Fn dwarf_weak_cu_offset
@ -566,7 +564,7 @@ Retrieve the name of a weak symbol.
Retrieve the name and offsets for a weak symbol.
.El
.It Miscellaneous
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_elf
Retrieve the ELF descriptor for a debug context, see
.Xr elf 3 .
@ -605,7 +603,7 @@ information entry:
and
.Fn dwarf_add_AT_unsigned_const .
.It Debugging Information Entry Management
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_add_die_to_debug
Set the root debugging information entry for a DWARF producer instance.
.It Fn dwarf_die_link
@ -623,7 +621,7 @@ are used to initialize a producer instance.
When done, applications release resources using the function
.Fn dwarf_producer_finish .
.It Relocations and Sections
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_get_relocation_info
Retrieve a relocation array from a producer instance.
.It Fn dwarf_get_relocation_info_count
@ -636,7 +634,7 @@ Reset internal state for a producer instance.
Prepare byte streams for writing out.
.El
.It Macros
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_def_macro
Add a macro definition.
.It Fn dwarf_end_macro_file , Fn dwarf_start_macro_file
@ -647,7 +645,7 @@ Note the removal of a macro definition.
Enables storing macro information as specified in the DWARF standard.
.El
.It Symbols, Expressions, Addresses and Offsets
.Bl -tag -compact
.Bl -tag -compact -width indent
.It Fn dwarf_add_arange , Fn dwarf_add_arange_b
Add address range information.
.It Fn dwarf_add_directory_decl
@ -741,7 +739,9 @@ The DWARF(3) API originated at Silicon Graphics Inc.
.Pp
A BSD-licensed implementation of a subset of the API was written by
.An John Birrell Aq Mt jb@FreeBSD.org
for the FreeBSD project.
for the
.Fx
project.
The implementation was subsequently revised and completed by
.An Kai Wang Aq Mt kaiwang27@users.sourceforge.net .
.Pp

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_comp_dir.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_comp_dir.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_COMP_DIR 3
.Os
.Sh NAME
.Nm dwarf_add_AT_comp_dir
.Nd create and attach a DW_AT_comp_dir attribute

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_const_value_string.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_const_value_string.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_CONST_VALUE_STRING 3
.Os
.Sh NAME
.Nm dwarf_add_AT_const_value_signedint ,
.Nm dwarf_add_AT_const_value_string ,

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_dataref.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_dataref.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_DATAREF 3
.Os
.Sh NAME
.Nm dwarf_add_AT_dataref
.Nd create an attribute descriptor for a relocatable address
@ -113,8 +113,8 @@ function.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_add_AT_reference 3 ,
.Xr dwarf_add_AT_ref_address 3 ,
.Xr dwarf_add_AT_reference 3 ,
.Xr dwarf_add_AT_signed_const 3 ,
.Xr dwarf_add_AT_unsigned_const 3 ,
.Xr dwarf_new_die 3 ,

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_flag.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_flag.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_FLAG 3
.Os
.Sh NAME
.Nm dwarf_add_AT_flag
.Nd create and attach a flag attribute

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_location_expr.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_location_expr.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 5, 2011
.Os
.Dt DWARF_ADD_AT_LOCATION_EXPR 3
.Os
.Sh NAME
.Nm dwarf_add_AT_location_expr
.Nd create an attribute descriptor for a location expression

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_name.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_name.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_NAME 3
.Os
.Sh NAME
.Nm dwarf_add_AT_name
.Nd create and attach a DW_AT_name attribute

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_producer.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_producer.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_PRODUCER 3
.Os
.Sh NAME
.Nm dwarf_add_AT_producer
.Nd create and attach a DW_AT_producer attribute

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_ref_address.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_ref_address.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 7, 2011
.Os
.Dt DWARF_ADD_AT_REF_ADDRESS 3
.Os
.Sh NAME
.Nm dwarf_add_AT_ref_address
.Nd create a reference class attribute descriptor

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_reference.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_reference.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_REFERENCE 3
.Os
.Sh NAME
.Nm dwarf_add_AT_reference
.Nd create and attach an attribute that references another DIE

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_signed_const.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_signed_const.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_SIGNED_CONST 3
.Os
.Sh NAME
.Nm dwarf_add_AT_signed_const ,
.Nm dwarf_add_AT_unsigned_const

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_string.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_string.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_STRING 3
.Os
.Sh NAME
.Nm dwarf_add_AT_string
.Nd create and attach a string class attribute

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_AT_targ_address.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_AT_targ_address.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_ADD_AT_TARG_ADDRESS 3
.Os
.Sh NAME
.Nm dwarf_add_AT_targ_address ,
.Nm dwarf_add_AT_targ_address_b

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_arange.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_arange.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 18, 2011
.Os
.Dt DWARF_ADD_ARANGE 3
.Os
.Sh NAME
.Nm dwarf_add_arange ,
.Nm dwarf_add_arange_b

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_die_to_debug.3 2938 2013-04-27 05:09:17Z jkoshy $
.\" $Id: dwarf_add_die_to_debug.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd August 21, 2011
.Os
.Dt DWARF_ADD_DIE_TO_DEBUG 3
.Os
.Sh NAME
.Nm dwarf_add_die_to_debug
.Nd set the root debugging information entry

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_directory_decl.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_directory_decl.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 17, 2011
.Os
.Dt DWARF_ADD_DIRECTORY_DECL 3
.Os
.Sh NAME
.Nm dwarf_add_directory_decl
.Nd add a directory name to a producer instance

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_expr_addr.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_expr_addr.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 9, 2011
.Os
.Dt DWARF_ADD_EXPR_ADDR 3
.Os
.Sh NAME
.Nm dwarf_add_expr_addr ,
.Nm dwarf_add_expr_addr_b

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_expr_gen.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_expr_gen.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 9, 2011
.Os
.Dt DWARF_ADD_EXPR_GEN 3
.Os
.Sh NAME
.Nm dwarf_add_expr_gen
.Nd add an operator to a location expression descriptor

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_fde_inst.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_fde_inst.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd September 26, 2011
.Os
.Dt DWARF_ADD_FDE_INST 3
.Os
.Sh NAME
.Nm dwarf_add_fde_inst
.Nd add a call frame instruction to a DWARF frame descriptor
@ -101,9 +101,9 @@ function.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_add_frame_cie 3 ,
.Xr dwarf_add_frame_fde 3 ,
.Xr dwarf_add_frame_fde_b 3 ,
.Xr dwarf_add_frame_cie 3 ,
.Xr dwarf_fde_cfa_offset 3 ,
.Xr dwarf_new_fde 3
.Rs

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_file_decl.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_file_decl.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 17, 2011
.Os
.Dt DWARF_ADD_FILE_DECL 3
.Os
.Sh NAME
.Nm dwarf_add_file_decl
.Nd add a source file entry to a producer instance

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_frame_cie.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_frame_cie.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 26, 2011
.Os
.Dt DWARF_ADD_FRAME_CIE 3
.Os
.Sh NAME
.Nm dwarf_add_frame_cie
.Nd add a call frame common information entry to a DWARF producer instance

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_frame_fde.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_frame_fde.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 26, 2011
.Os
.Dt DWARF_ADD_FRAME_FDE 3
.Os
.Sh NAME
.Nm dwarf_add_frame_fde
.Nd add a call frame descriptor to a DWARF producer instance

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_funcname.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_funcname.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 24, 2011
.Os
.Dt DWARF_ADD_FUNCNAME 3
.Os
.Sh NAME
.Nm dwarf_add_funcname
.Nd add information about a static function to a DWARF producer instance

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_line_entry.3 3182 2015-04-10 16:08:10Z emaste $
.\" $Id: dwarf_add_line_entry.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd June 30, 2013
.Os
.Dt DWARF_ADD_LINE_ENTRY 3
.Os
.Sh NAME
.Nm dwarf_add_line_entry
.Nd add a line number information entry to a producer instance
@ -109,24 +109,7 @@ returns
.Dv DW_DLV_NOCOUNT
and sets the argument
.Ar err .
.Sh ERRORS
Function
.Fn dwarf_add_line_entry
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT"
.It Bq Er DW_DLE_ARGUMENT
Argument
.Ar dbg
was NULL.
.It Bq Er DW_DLE_ARGUMENT
The function
.Xr dwarf_lne_set_address 3
was not called before calling this function.
.It Bq Er DW_DLE_MEMORY
An out of memory condition was encountered during the execution of the
function.
.El
.Sh EXAMPLE
.Sh EXAMPLES
To add line number information to the producer instance, use:
.Bd -literal -offset indent
Dwarf_P_Debug dbg;
@ -154,6 +137,23 @@ if (dwarf_add_line_entry(dbg, filendx, 10, 258, 0, 1, 1, &de) !=
errx(EXIT_FAILURE, "dwarf_add_line_entry failed: %s",
dwarf_errmsg(-1));
.Ed
.Sh ERRORS
Function
.Fn dwarf_add_line_entry
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT"
.It Bq Er DW_DLE_ARGUMENT
Argument
.Ar dbg
was NULL.
.It Bq Er DW_DLE_ARGUMENT
The function
.Xr dwarf_lne_set_address 3
was not called before calling this function.
.It Bq Er DW_DLE_MEMORY
An out of memory condition was encountered during the execution of the
function.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_add_directory_decl 3 ,

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_pubname.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_pubname.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 24, 2011
.Os
.Dt DWARF_ADD_PUBNAME 3
.Os
.Sh NAME
.Nm dwarf_add_pubname
.Nd add information about a global object to a DWARF producer instance

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_typename.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_typename.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 24, 2011
.Os
.Dt DWARF_ADD_TYPENAME 3
.Os
.Sh NAME
.Nm dwarf_add_typename
.Nd add information about a user-defined type to a DWARF producer instance

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_varname.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_varname.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 24, 2011
.Os
.Dt DWARF_ADD_VARNAME 3
.Os
.Sh NAME
.Nm dwarf_add_varname
.Nd add information about a static variable to a DWARF producer instance

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_add_weakname.3 2072 2011-10-27 03:26:49Z jkoshy $
.\" $Id: dwarf_add_weakname.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 24, 2011
.Os
.Dt DWARF_ADD_WEAKNAME 3
.Os
.Sh NAME
.Nm dwarf_add_weakname
.Nd add information about a weak object to a DWARF producer instance

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_attr.3 3093 2014-09-02 22:09:40Z kaiwang27 $
.\" $Id: dwarf_attr.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd April 8, 2010
.Os
.Dt DWARF_ATTR 3
.Os
.Sh NAME
.Nm dwarf_attr
.Nd retrieve an attribute descriptor associated with a DWARF debugging information entry
@ -80,7 +80,8 @@ of an error.
Function
.Fn dwarf_attr
returns
.Dv DW_DLV_OK on success.
.Dv DW_DLV_OK
on success.
.Pp
If the debugging information entry descriptor denoted by argument
.Ar die

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_attrlist.3 2122 2011-11-09 15:35:14Z jkoshy $
.\" $Id: dwarf_attrlist.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd November 9, 2011
.Os
.Dt DWARF_ATTRLIST 3
.Os
.Sh NAME
.Nm dwarf_attrlist
.Nd retrieve DWARF attribute descriptors
@ -82,7 +82,8 @@ function.
Function
.Fn dwarf_attrlist
returns
.Dv DW_DLV_OK on success.
.Dv DW_DLV_OK
on success.
.Pp
If the debugging information entry descriptor denoted by argument
.Ar die

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_attroffset.3 3115 2014-12-20 18:26:46Z jkoshy $
.\" $Id: dwarf_attroffset.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd December 20, 2014
.Os
.Dt DWARF_ATTROFFSET 3
.Os
.Sh NAME
.Nm dwarf_attroffset
.Nd retrieve the section-relative offset of an attribute descriptor

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_attrval_signed.3 3509 2016-12-29 03:58:41Z emaste $
.\" $Id: dwarf_attrval_signed.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd December 26, 2016
.Os
.Dt DWARF_ATTRVAL_SIGNED 3
.Os
.Sh NAME
.Nm dwarf_attrval_flag ,
.Nm dwarf_attrval_signed ,

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_child.3 3127 2014-12-21 19:09:19Z jkoshy $
.\" $Id: dwarf_child.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd December 21, 2014
.Os
.Dt DWARF_CHILD 3
.Os
.Sh NAME
.Nm dwarf_child ,
.Nm dwarf_offdie ,
@ -215,27 +215,6 @@ there was no debugging information entry at the offset specified by
argument
.Ar offset .
.El
.Sh ERRORS
These functions may fail with the following errors:
.Bl -tag -width ".Bq Er DW_DLE_DIE_NO_CU_CONTEXT"
.It Bq Er DW_DLE_ARGUMENT
Arguments
.Ar dbg ,
.Ar die
or
.Ar ret_die
were NULL.
.It Bq Er DW_DLE_DIE_NO_CU_CONTEXT
Argument
.Ar dbg
was not associated with a compilation unit.
.It Bq Er DW_DLE_NO_ENTRY
The descriptor denoted by argument
.Ar die
had no child or sibling, or there was no DWARF debugging information
entry at the offset specified by argument
.Va offset .
.El
.Sh EXAMPLES
To retrieve the first DWARF Debugging Information Entry descriptor for
the first compilation unit associated with a
@ -271,8 +250,29 @@ do {
dwarf_errmsg(de));
} while (die0 != NULL);
.Ed
.Sh ERRORS
These functions may fail with the following errors:
.Bl -tag -width ".Bq Er DW_DLE_DIE_NO_CU_CONTEXT"
.It Bq Er DW_DLE_ARGUMENT
Arguments
.Ar dbg ,
.Ar die
or
.Ar ret_die
were NULL.
.It Bq Er DW_DLE_DIE_NO_CU_CONTEXT
Argument
.Ar dbg
was not associated with a compilation unit.
.It Bq Er DW_DLE_NO_ENTRY
The descriptor denoted by argument
.Ar die
had no child or sibling, or there was no DWARF debugging information
entry at the offset specified by argument
.Va offset .
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_errmsg 3 ,
.Xr dwarf_get_die_infotypes_flag.3 ,
.Xr dwarf_get_die_infotypes_flag 3 ,
.Xr dwarf_next_cu_header 3

View file

@ -21,11 +21,11 @@
.\" out of the use of this software, even if advised of the possibility of
.\" such damage.
.\"
.\" $Id: dwarf_dealloc.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_dealloc.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd July 23, 2011
.Os
.Dt DWARF_DEALLOC 3
.Os
.Sh NAME
.Nm dwarf_dealloc ,
.Nm dwarf_fde_cie_list_dealloc ,

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_def_macro.3 3182 2015-04-10 16:08:10Z emaste $
.\" $Id: dwarf_def_macro.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd November 9, 2011
.Os
.Dt DWARF_DEF_MACRO 3
.Os
.Sh NAME
.Nm dwarf_def_macro
.Nd add a macro definition to a DWARF producer instance
@ -91,7 +91,7 @@ returns
.Dv DW_DLV_ERROR
and sets the argument
.Ar err .
.Sh EXAMPLE
.Sh EXAMPLES
To record the fact that a macro named
.Dv _STDIO_H_
was defined at line 20 of the current macro file, use:

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_die_abbrev_code.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_die_abbrev_code.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd April 14, 2010
.Os
.Dt DWARF_DIE_ABBREV_CODE 3
.Os
.Sh NAME
.Nm dwarf_die_abbrev_code
.Nd retrieve the abbreviation code for a DWARF debugging information entry

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_die_link.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_die_link.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 4, 2011
.Os
.Dt DWARF_DIE_LINK 3
.Os
.Sh NAME
.Nm dwarf_die_link
.Nd link a debugging information entry

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_diename.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_diename.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd March 31, 2010
.Os
.Dt DWARF_DIENAME 3
.Os
.Sh NAME
.Nm dwarf_diename
.Nd retrieve the name associated with a debugging information entry
@ -51,7 +51,8 @@ pointed to by argument
Function
.Fn dwarf_diename
returns
.Dv DW_DLV_OK on success.
.Dv DW_DLV_OK
on success.
.Pp
If the debugging information entry descriptor denoted by argument
.Ar die
@ -85,6 +86,6 @@ attribute.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_tag 3 ,
.Xr dwarf_die_abbrev_code 3 ,
.Xr dwarf_dieoffset 3 ,
.Xr dwarf_die_abbrev_code 3
.Xr dwarf_tag 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_dieoffset.3 3129 2014-12-21 20:06:26Z jkoshy $
.\" $Id: dwarf_dieoffset.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd December 21, 2014
.Os
.Dt DWARF_DIEOFFSET 3
.Os
.Sh NAME
.Nm dwarf_die_CU_offset ,
.Nm dwarf_die_CU_offset_range ,

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_end_macro_file.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_end_macro_file.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd September 25, 2011
.Os
.Dt DWARF_END_MACRO_FILE 3
.Os
.Sh NAME
.Nm dwarf_end_macro_file
.Nd mark the end of the current source file inclusion
@ -38,7 +38,6 @@
.Fo dwarf_end_macro_file
.Fa "Dwarf_P_Debug dbg"
.Fa "Dwarf_Error *err"
.Fa
.Fc
.Sh DESCRIPTION
Function

View file

@ -21,11 +21,11 @@
.\" out of the use of this software, even if advised of the possibility of
.\" such damage.
.\"
.\" $Id: dwarf_errmsg.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_errmsg.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd December 12, 2009
.Os
.Dt DWARF_ERRMSG 3
.Os
.Sh NAME
.Nm dwarf_errmsg
.Nd retrieve a human-readable string corresponding to a

View file

@ -21,11 +21,11 @@
.\" out of the use of this software, even if advised of the possibility of
.\" such damage.
.\"
.\" $Id: dwarf_errno.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_errno.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd March 25, 2010
.Os
.Dt DWARF_ERRNO 3
.Os
.Sh NAME
.Nm dwarf_errno
.Nd retrieve the error number corresponding to a

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_expand_frame_instructions.3 3181 2015-04-10 13:22:51Z emaste $
.\" $Id: dwarf_expand_frame_instructions.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd November 9, 2011
.Os
.Dt DWARF_EXPAND_FRAME_INSTRUCTIONS 3
.Os
.Sh NAME
.Nm dwarf_expand_frame_instructions
.Nd expand frame instructions
@ -104,32 +104,7 @@ In case of an error, it returns
.Dv DW_DLV_ERROR
and sets the argument
.Ar err .
.Sh ERRORS
Function
.Fn dwarf_expand_frame_instructions
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar cie ,
.Ar instructions ,
.Ar ret_ops
or
.Ar ret_opcnt
was NULL.
.It Bq Er DW_DLE_ARGUMENT
Argument
.Ar len
was 0.
.It Bq Er DW_DLE_MEMORY
An out of memory condition was encountered during the execution of
this function.
.It Bq Er DW_DLE_FRAME_INSTR_EXEC_ERROR
An unknown instruction was found in the instruction bytes provided
in argument
.Ar instructions .
.El
.Sh EXAMPLE
.Sh EXAMPLES
To retrieve and expand the frame instructions for a given FDE
descriptor, use:
.Bd -literal -offset indent
@ -164,12 +139,37 @@ for (i = 0; i < opcnt; i++) {
/* Free the memory area when no longer needed. */
dwarf_dealloc(dbg, ops, DW_DLA_FRAME_BLOCK);
.Ed
.Sh ERRORS
Function
.Fn dwarf_expand_frame_instructions
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar cie ,
.Ar instructions ,
.Ar ret_ops
or
.Ar ret_opcnt
was NULL.
.It Bq Er DW_DLE_ARGUMENT
Argument
.Ar len
was 0.
.It Bq Er DW_DLE_MEMORY
An out of memory condition was encountered during the execution of
this function.
.It Bq Er DW_DLE_FRAME_INSTR_EXEC_ERROR
An unknown instruction was found in the instruction bytes provided
in argument
.Ar instructions .
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_frame_instructions_dealloc 3 ,
.Xr dwarf_get_cie_info 3 ,
.Xr dwarf_get_cie_index 3 ,
.Xr dwarf_get_cie_of_fde ,
.Xr dwarf_get_cie_info 3 ,
.Xr dwarf_get_cie_of_fde 3 ,
.Xr dwarf_get_fde_at_pc 3 ,
.Xr dwarf_get_fde_info_for_all_regs 3 ,
.Xr dwarf_get_fde_info_for_all_regs3 3 ,

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_expr_current_offset.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_expr_current_offset.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 13, 2011
.Os
.Dt DWARF_EXPR_CURRENT_OFFSET 3
.Os
.Sh NAME
.Nm dwarf_expr_current_offset
.Nd retrieve the number of bytes in a location expression stream

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_expr_into_block.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_expr_into_block.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd September 13, 2011
.Os
.Dt DWARF_EXPR_INTO_BLOCK 3
.Os
.Sh NAME
.Nm dwarf_expr_into_block
.Nd retrieve the byte stream for a location expression

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_fde_cfa_offset.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_fde_cfa_offset.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd September 26, 2011
.Os
.Dt DWARF_FDE_CFA_OFFSET 3
.Os
.Sh NAME
.Nm dwarf_fde_cfa_offset
.Nd add a DW_CFA_offset frame instruction to a DWARF frame descriptor
@ -93,7 +93,7 @@ function.
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_add_fde_inst 3 ,
.Xr dwarf_add_frame_cie 3 ,
.Xr dwarf_add_frame_fde 3 ,
.Xr dwarf_add_frame_fde_b 3 ,
.Xr dwarf_add_frame_cie 3 ,
.Xr dwarf_new_fde 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_find_macro_value_start.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_find_macro_value_start.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd March 26, 2011
.Os
.Dt DWARF_FIND_MACRO_VALUE_START 3
.Os
.Sh NAME
.Nm dwarf_find_macro_value_start
.Nd return the address of the first byte of a macro value

View file

@ -21,11 +21,11 @@
.\" out of the use of this software, even if advised of the possibility of
.\" such damage.
.\"
.\" $Id: dwarf_finish.3 2122 2011-11-09 15:35:14Z jkoshy $
.\" $Id: dwarf_finish.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd November 9, 2011
.Os
.Dt DWARF_FINISH 3
.Os
.Sh NAME
.Nm dwarf_finish ,
.Nm dwarf_object_finish
@ -133,8 +133,8 @@ if (dwarf_finish(dbg, &de) != DW_DLV_OK)
(void) elf_end(e);
.Ed
.Sh SEE ALSO
.Xr elf_end 3 ,
.Xr dwarf_elf_init 3 ,
.Xr dwarf_get_elf 3 ,
.Xr dwarf_init 3 ,
.Xr dwarf_object_init 3
.Xr dwarf_object_init 3 ,
.Xr elf_end 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_formaddr.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_formaddr.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd July 23, 2010
.Os
.Dt DWARF_FORMADDR 3
.Os
.Sh NAME
.Nm dwarf_formaddr
.Nd return the value of an ADDRESS class attribute

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_formblock.3 3182 2015-04-10 16:08:10Z emaste $
.\" $Id: dwarf_formblock.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd July 23, 2010
.Os
.Dt DWARF_FORMBLOCK 3
.Os
.Sh NAME
.Nm dwarf_formblock
.Nd return the value of a BLOCK attribute

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_formexprloc.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_formexprloc.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd July 25, 2010
.Os
.Dt DWARF_FORMEXPRLOC 3
.Os
.Sh NAME
.Nm dwarf_formexprloc
.Nd return information about a location expression

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_formflag.3 3181 2015-04-10 13:22:51Z emaste $
.\" $Id: dwarf_formflag.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd June 21, 2010
.Os
.Dt DWARF_FORMFLAG 3
.Os
.Sh NAME
.Nm dwarf_formflag
.Nd return the value of a BOOLEAN class attribute

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_formref.3 3181 2015-04-10 13:22:51Z emaste $
.\" $Id: dwarf_formref.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd June 21, 2010
.Os
.Dt DWARF_FORMREF 3
.Os
.Sh NAME
.Nm dwarf_formref ,
.Nm dwarf_global_formref

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_formsig8.3 3181 2015-04-10 13:22:51Z emaste $
.\" $Id: dwarf_formsig8.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd July 24, 2010
.Os
.Dt DWARF_FORMSIG8 3
.Os
.Sh NAME
.Nm dwarf_formsig8
.Nd return the 64-bit type signature for a DWARF type

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_formstring.3 2073 2011-10-27 03:30:47Z jkoshy $
.\" $Id: dwarf_formstring.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd July 24, 2010
.Os
.Dt DWARF_FORMSTRING 3
.Os
.Sh NAME
.Nm dwarf_formstring
.Nd return the value of a STRING class attribute

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_formudata.3 3181 2015-04-10 13:22:51Z emaste $
.\" $Id: dwarf_formudata.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd June 21, 2010
.Os
.Dt DWARF_FORMUDATA 3
.Os
.Sh NAME
.Nm dwarf_formudata ,
.Nm dwarf_formsdata

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_AT_name.3 3142 2015-01-29 23:11:14Z jkoshy $
.\" $Id: dwarf_get_AT_name.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd April 22, 2011
.Os
.Dt DWARF_GET_AT_NAME 3
.Os
.Sh NAME
.Nm dwarf_get_ACCESS_name ,
.Nm dwarf_get_AT_name ,
@ -250,7 +250,8 @@ constants.
.El
.Sh RETURN VALUES
These functions return
.Dv DW_DLV_OK on success.
.Dv DW_DLV_OK
on success.
If the DWARF constant denoted by argument
.Ar val
is not recognized, these function return

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_abbrev.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_abbrev.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd March 27, 2011
.Os
.Dt DWARF_GET_ABBREV 3
.Os
.Sh NAME
.Nm dwarf_get_abbrev
.Nd retrieve abbreviation information
@ -123,24 +123,7 @@ In case of an error, it returns
.Dv DW_DLV_ERROR
and sets the argument
.Ar err .
.Sh ERRORS
Function
.Fn dwarf_get_abbrev
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_NO_ENTRY"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar dbg ,
.Ar ret_abbrev ,
.Ar length
or
.Ar attr_count
was NULL.
.It Bq Er DW_DLE_NO_ENTRY
There is no abbreviation information at offset
.Ar offset .
.El
.Sh EXAMPLE
.Sh EXAMPLES
To loop through all the abbreviation information associated with
a DWARF debug context, use:
.Bd -literal -offset indent
@ -170,10 +153,27 @@ while ((ret = dwarf_next_cu_header(dbg, NULL, NULL, &aboff,
if (ret == DW_DLV_ERROR)
warnx("dwarf_next_cu_header: %s", dwarf_errmsg(de));
.Ed
.Sh ERRORS
Function
.Fn dwarf_get_abbrev
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_NO_ENTRY"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar dbg ,
.Ar ret_abbrev ,
.Ar length
or
.Ar attr_count
was NULL.
.It Bq Er DW_DLE_NO_ENTRY
There is no abbreviation information at offset
.Ar offset .
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_dealloc 3 ,
.Xr dwarf_get_abbrev_tag 3 ,
.Xr dwarf_get_abbrev_code 3 ,
.Xr dwarf_get_abbrev_children_flag 3 ,
.Xr dwarf_get_abbrev_entry 3
.Xr dwarf_get_abbrev_code 3 ,
.Xr dwarf_get_abbrev_entry 3 ,
.Xr dwarf_get_abbrev_tag 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_abbrev_children_flag.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_abbrev_children_flag.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd March 14, 2011
.Os
.Dt DWARF_GET_ABBREV_CHILDREN_FLAG 3
.Os
.Sh NAME
.Nm dwarf_get_abbrev_children_flag
.Nd return a flag indicating the presence of children
@ -69,7 +69,6 @@ If argument
.Ar err
is not NULL, it will be used to store error information in case of an
error.
.Pp
.Sh RETURN VALUES
Function
.Fn dwarf_get_abbrev_children_flag
@ -96,5 +95,5 @@ was NULL.
.Xr dwarf 3 ,
.Xr dwarf_get_abbrev 3 ,
.Xr dwarf_get_abbrev_code 3 ,
.Xr dwarf_get_abbrev_tag 3 ,
.Xr dwarf_get_abbrev_entry 3
.Xr dwarf_get_abbrev_entry 3 ,
.Xr dwarf_get_abbrev_tag 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_abbrev_code.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_abbrev_code.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd March 13, 2011
.Os
.Dt DWARF_GET_ABBREV_CODE 3
.Os
.Sh NAME
.Nm dwarf_get_abbrev_code
.Nd retrieve the abbreviation code for an abbreviation
@ -81,6 +81,6 @@ was NULL.
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_get_abbrev 3 ,
.Xr dwarf_get_abbrev_tag 3 ,
.Xr dwarf_get_abbrev_children_flag 3 ,
.Xr dwarf_get_abbrev_entry 3
.Xr dwarf_get_abbrev_entry 3 ,
.Xr dwarf_get_abbrev_tag 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_abbrev_entry.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_abbrev_entry.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd April 02, 2011
.Os
.Dt DWARF_GET_ABBREV_ENTRY 3
.Os
.Sh NAME
.Nm dwarf_get_abbrev_entry
.Nd retrieve attribute information from an abbreviation descriptor
@ -96,25 +96,7 @@ In case of an error, it returns
.Dv DW_DLV_ERROR
and sets the argument
.Ar err .
.Sh ERRORS
Function
.Fn dwarf_get_abbrev_entry
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_NO_ENTRY"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar abbrev ,
.Ar code ,
.Ar form
or
.Ar offset
was NULL.
.It Bq Er DW_DLE_NO_ENTRY
The attribute index specified by argument
.Ar ndx
was out of range.
.El
.Sh EXAMPLE
.Sh EXAMPLES
To loop through all the attribute entries contained in the
abbreviation section, use:
.Bd -literal -offset indent
@ -154,6 +136,24 @@ while ((ret = dwarf_next_cu_header(dbg, NULL, NULL, &aboff,
if (ret == DW_DLV_ERROR)
warnx("dwarf_next_cu_header: %s", dwarf_errmsg(de));
.Ed
.Sh ERRORS
Function
.Fn dwarf_get_abbrev_entry
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_NO_ENTRY"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar abbrev ,
.Ar code ,
.Ar form
or
.Ar offset
was NULL.
.It Bq Er DW_DLE_NO_ENTRY
The attribute index specified by argument
.Ar ndx
was out of range.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_get_abbrev 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_abbrev_tag.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_abbrev_tag.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd March 13, 2011
.Os
.Dt DWARF_GET_ABBREV_TAG 3
.Os
.Sh NAME
.Nm dwarf_get_abbrev_tag
.Nd retrieve the tag for an abbreviation
@ -81,6 +81,6 @@ was NULL.
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_get_abbrev 3 ,
.Xr dwarf_get_abbrev_code 3 ,
.Xr dwarf_get_abbrev_children_flag 3 ,
.Xr dwarf_get_abbrev_code 3 ,
.Xr dwarf_get_abbrev_entry 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_address_size.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_address_size.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd April 14, 2010
.Os
.Dt DWARF_GET_ADDRESS_SIZE 3
.Os
.Sh NAME
.Nm dwarf_get_address_size
.Nd return the number of bytes needed to represent an address
@ -78,5 +78,5 @@ was NULL.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_init 3 ,
.Xr dwarf_finish 3
.Xr dwarf_finish 3 ,
.Xr dwarf_init 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_arange.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_arange.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd April 16, 2011
.Os
.Dt DWARF_GET_ARANGE 3
.Os
.Sh NAME
.Nm dwarf_get_arange
.Nd retrieve the address range descriptor for an address
@ -115,7 +115,7 @@ was not found.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_get_aranges 3 ,
.Xr dwarf_get_arange_cu_header_offset 3 ,
.Xr dwarf_get_arange_info 3 ,
.Xr dwarf_get_aranges 3 ,
.Xr dwarf_get_cu_die_offset 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_arange_info.3 3142 2015-01-29 23:11:14Z jkoshy $
.\" $Id: dwarf_get_arange_info.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd April 16, 2011
.Os
.Dt DWARF_GET_ARANGE_INFO 3
.Os
.Sh NAME
.Nm dwarf_get_arange_info
.Nd extract address range information from a descriptor
@ -89,21 +89,7 @@ In case of an error, it returns
.Dv DW_DLV_ERROR
and sets the argument
.Ar err .
.Sh ERRORS
Function
.Fn dwarf_get_arange_info
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar ar ,
.Ar start ,
.Ar length
or
.Ar cu_die_offset
was NULL.
.El
.Sh EXAMPLE
.Sh EXAMPLES
To loop through all the address lookup table entries, use:
.Bd -literal -offset indent
Dwarf_Debug dbg;
@ -127,9 +113,23 @@ for (i = 0; i < cnt; i++) {
/* Do something with the returned information. */
}
.Ed
.Sh ERRORS
Function
.Fn dwarf_get_arange_info
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar ar ,
.Ar start ,
.Ar length
or
.Ar cu_die_offset
was NULL.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_get_arange 3 ,
.Xr dwarf_get_aranges 3 ,
.Xr dwarf_get_arange_cu_header_offset 3 ,
.Xr dwarf_get_aranges 3 ,
.Xr dwarf_get_cu_die_offset 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_aranges.3 2122 2011-11-09 15:35:14Z jkoshy $
.\" $Id: dwarf_get_aranges.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd November 9, 2011
.Os
.Dt DWARF_GET_ARANGES 3
.Os
.Sh NAME
.Nm dwarf_get_aranges
.Nd retrieve program address space mappings
@ -96,26 +96,7 @@ In case of an error, it returns
.Dv DW_DLV_ERROR
and sets the argument
.Ar err .
.Sh ERRORS
Function
.Fn dwarf_get_aranges
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_NO_ENTRY"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar dbg ,
.Ar ar_list
or
.Ar ar_cnt
was NULL.
.It Bq Er DW_DLE_NO_ENTRY
The debugging context
.Ar dbg
did not contain a
.Dq ".debug_aranges"
string section.
.El
.Sh EXAMPLE
.Sh EXAMPLES
To loop through all the address lookup table entries, use:
.Bd -literal -offset indent
Dwarf_Debug dbg;
@ -140,6 +121,25 @@ for (i = 0; i < cnt; i++) {
/* Do something with the returned information. */
}
.Ed
.Sh ERRORS
Function
.Fn dwarf_get_aranges
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_NO_ENTRY"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar dbg ,
.Ar ar_list
or
.Ar ar_cnt
was NULL.
.It Bq Er DW_DLE_NO_ENTRY
The debugging context
.Ar dbg
did not contain a
.Dq ".debug_aranges"
string section.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_get_arange 3 ,

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_cie_index.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_cie_index.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd May 22, 2011
.Os
.Dt DWARF_GET_CIE_INDEX 3
.Os
.Sh NAME
.Nm dwarf_get_cie_index
.Nd retrieve the index of a CIE descriptor

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_cie_info.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_cie_info.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd May 29, 2011
.Os
.Dt DWARF_GET_CIE_INFO 3
.Os
.Sh NAME
.Nm dwarf_get_cie_info
.Nd retrieve information associated with a CIE descriptor

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_cie_of_fde.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_cie_of_fde.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd May 22, 2011
.Os
.Dt DWARF_GET_CIE_OF_FDE 3
.Os
.Sh NAME
.Nm dwarf_get_cie_of_fde
.Nd retrieve CIE descriptor
@ -82,7 +82,7 @@ was NULL.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_get_cie_info 3 ,
.Xr dwarf_get_cie_index 3 ,
.Xr dwarf_get_cie_info 3 ,
.Xr dwarf_get_fde_at_pc 3 ,
.Xr dwarf_get_fde_n 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_cu_die_offset.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_cu_die_offset.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd April 10, 2011
.Os
.Dt DWARF_GET_CU_DIE_OFFSET 3
.Os
.Sh NAME
.Nm dwarf_get_arange_cu_header_offset ,
.Nm dwarf_get_cu_die_offset

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_die_infotypes_flag.3 3118 2014-12-20 20:30:06Z jkoshy $
.\" $Id: dwarf_get_die_infotypes_flag.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd December 20, 2014
.Os
.Dt DWARF_GET_DIE_INFOTYPES_FLAG 3
.Os
.Sh NAME
.Nm dwarf_get_die_infotypes_flag
.Nd indicate the originating DWARF section for a DIE

View file

@ -21,11 +21,11 @@
.\" out of the use of this software, even if advised of the possibility of
.\" such damage.
.\"
.\" $Id: dwarf_get_elf.3 2122 2011-11-09 15:35:14Z jkoshy $
.\" $Id: dwarf_get_elf.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd November 9, 2011
.Os
.Dt DWARF_GET_ELF 3
.Os
.Sh NAME
.Nm dwarf_get_elf
.Nd retrieve the
@ -98,6 +98,6 @@ if (dwarf_get_elf(dbg, &elf, &de) != DW_DLV_OK)
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_errmsg 3 ,
.Xr dwarf_init 3 ,
.Xr dwarf_finish 3 ,
.Xr dwarf_init 3 ,
.Xr elf 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_at_pc.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_fde_at_pc.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd May 22, 2011
.Os
.Dt DWARF_GET_FDE_AT_PC 3
.Os
.Sh NAME
.Nm dwarf_get_fde_at_pc
.Nd retrieve the FDE descriptor for an address

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_info_for_all_regs.3 3182 2015-04-10 16:08:10Z emaste $
.\" $Id: dwarf_get_fde_info_for_all_regs.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd June 4, 2011
.Os
.Dt DWARF_GET_FDE_INFO_FOR_ALL_REGS 3
.Os
.Sh NAME
.Nm dwarf_get_fde_info_for_all_regs
.Nd retrieve register rule row
@ -150,7 +150,7 @@ did not fall in the range covered by argument
.Xr dwarf_get_fde_info_for_reg3 3 ,
.Xr dwarf_get_fde_n 3 ,
.Xr dwarf_set_frame_cfa_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_rule_initial_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_same_value 3 ,
.Xr dwarf_set_frame_undefined_value 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_info_for_all_regs3.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_fde_info_for_all_regs3.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd June 26, 2011
.Os
.Dt DWARF_GET_FDE_INFO_FOR_ALL_REGS3 3
.Os
.Sh NAME
.Nm dwarf_get_fde_info_for_all_regs3
.Nd retrieve register rule row
@ -177,7 +177,7 @@ did not fall in the range covered by argument
.Xr dwarf_get_fde_info_for_reg3 3 ,
.Xr dwarf_get_fde_n 3 ,
.Xr dwarf_set_frame_cfa_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_rule_initial_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_same_value 3 ,
.Xr dwarf_set_frame_undefined_value 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_info_for_cfa_reg3.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_fde_info_for_cfa_reg3.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd June 12, 2011
.Os
.Dt DWARF_GET_FDE_INFO_FOR_CFA_REGS3 3
.Os
.Sh NAME
.Nm dwarf_get_fde_info_for_cfa_regs3
.Nd retrieve a CFA register rule
@ -165,7 +165,7 @@ did not fall in the range covered by argument
.Xr dwarf_get_fde_info_for_reg3 3 ,
.Xr dwarf_get_fde_n 3 ,
.Xr dwarf_set_frame_cfa_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_rule_initial_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_same_value 3 ,
.Xr dwarf_set_frame_undefined_value 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_info_for_reg.3 3181 2015-04-10 13:22:51Z emaste $
.\" $Id: dwarf_get_fde_info_for_reg.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd June 4, 2011
.Os
.Dt DWARF_GET_FDE_INFO_FOR_REG 3
.Os
.Sh NAME
.Nm dwarf_get_fde_info_for_reg
.Nd retrieve register rule
@ -150,7 +150,7 @@ did not fall in the range covered by argument
.Xr dwarf_get_fde_info_for_reg3 3 ,
.Xr dwarf_get_fde_n 3 ,
.Xr dwarf_set_frame_cfa_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_rule_initial_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_same_value 3 ,
.Xr dwarf_set_frame_undefined_value 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_info_for_reg3.3 2122 2011-11-09 15:35:14Z jkoshy $
.\" $Id: dwarf_get_fde_info_for_reg3.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd November 9, 2011
.Os
.Dt DWARF_GET_FDE_INFO_FOR_REG3 3
.Os
.Sh NAME
.Nm dwarf_get_fde_info_for_reg3
.Nd retrieve register rule
@ -140,33 +140,7 @@ In case of an error, it returns
.Dv DW_DLV_ERROR
and sets the argument
.Ar err .
.Sh ERRORS
Function
.Fn dwarf_get_fde_info_for_reg3
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_FRAME_TABLE_COL_BAD"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar block_ptr ,
.Ar fde ,
.Ar offset_or_block_len ,
.Ar offset_relevant ,
.Ar register_num ,
.Ar row_pc ,
or
.Ar type
was NULL.
.It Bq Er DW_DLE_FRAME_TABLE_COL_BAD
The column number provided in argument
.Ar table_column
was too large.
.It Bq Er DW_DLE_PC_NOT_IN_FDE_RANGE
The program counter value provided in argument
.Ar pc
did not fall in the range covered by argument
.Ar fde .
.El
.Sh EXAMPLE
.Sh EXAMPLES
To retrieve the register rules at column 3 from a rule table
associated with a FDE descriptor:
.Bd -literal -offset indent
@ -199,6 +173,32 @@ for (pc = low_pc; pc < low_pc + func_len; pc++) {
/* ... use the retrieved register rule ... */
}
.Ed
.Sh ERRORS
Function
.Fn dwarf_get_fde_info_for_reg3
can fail with:
.Bl -tag -width ".Bq Er DW_DLE_FRAME_TABLE_COL_BAD"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Ar block_ptr ,
.Ar fde ,
.Ar offset_or_block_len ,
.Ar offset_relevant ,
.Ar register_num ,
.Ar row_pc ,
or
.Ar type
was NULL.
.It Bq Er DW_DLE_FRAME_TABLE_COL_BAD
The column number provided in argument
.Ar table_column
was too large.
.It Bq Er DW_DLE_PC_NOT_IN_FDE_RANGE
The program counter value provided in argument
.Ar pc
did not fall in the range covered by argument
.Ar fde .
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_get_fde_at_pc 3 ,
@ -208,7 +208,7 @@ for (pc = low_pc; pc < low_pc + func_len; pc++) {
.Xr dwarf_get_fde_info_for_reg 3 ,
.Xr dwarf_get_fde_n 3 ,
.Xr dwarf_set_frame_cfa_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_rule_initial_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_same_value 3 ,
.Xr dwarf_set_frame_undefined_value 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_instr_bytes.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_fde_instr_bytes.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd May 23, 2011
.Os
.Dt DWARF_GET_FDE_INSTR_BYTES 3
.Os
.Sh NAME
.Nm dwarf_get_fde_instr_bytes
.Nd retrieve instructions from FDE descritpor
@ -98,9 +98,9 @@ was NULL.
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_expand_frame_instructions 3 ,
.Xr dwarf_get_cie_info 3 ,
.Xr dwarf_get_cie_index 3 ,
.Xr dwarf_get_cie_of_fde ,
.Xr dwarf_get_cie_info 3 ,
.Xr dwarf_get_cie_of_fde 3 ,
.Xr dwarf_get_fde_at_pc 3 ,
.Xr dwarf_get_fde_info_for_all_regs 3 ,
.Xr dwarf_get_fde_info_for_all_regs3 3 ,

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_list.3 2122 2011-11-09 15:35:14Z jkoshy $
.\" $Id: dwarf_get_fde_list.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd November 9, 2011
.Os
.Dt DWARF_GET_FDE_LIST 3
.Os
.Sh NAME
.Nm dwarf_get_fde_list
.Nd retrieve frame information
@ -132,23 +132,7 @@ In case of an error, they return
.Dv DW_DLV_ERROR
and set the argument
.Ar err .
.Sh ERRORS
These functions may fail with the following errors:
.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Va dbg ,
.Va cie_list ,
.Va cie_count ,
.Va fde_list
or
.Va fde_count
was NULL.
.It Bq Er DW_DLE_NO_ENTRY
There is no frame information associated with the giving DWARF debug
context.
.El
.Sh EXAMPLE
.Sh EXAMPLES
To obtain frame information from the
.Dq ".debug_frame"
section, use:
@ -202,17 +186,33 @@ for (i = 0; i < fde_count; i++) {
dwarf_fde_cie_list_dealloc(dbg, cie_list, cie_count, fde_list,
fde_count);
.Ed
.Sh ERRORS
These functions may fail with the following errors:
.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT"
.It Bq Er DW_DLE_ARGUMENT
One of the arguments
.Va dbg ,
.Va cie_list ,
.Va cie_count ,
.Va fde_list
or
.Va fde_count
was NULL.
.It Bq Er DW_DLE_NO_ENTRY
There is no frame information associated with the giving DWARF debug
context.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_fde_cie_list_dealloc 3 ,
.Xr dwarf_get_cie_index 3 ,
.Xr dwarf_get_cie_of_fde 3 ,
.Xr dwarf_get_fde_at_pc 3 ,
.Xr dwarf_get_fde_instr_bytes 3 ,
.Xr dwarf_get_fde_n 3 ,
.Xr dwarf_get_fde_range 3 ,
.Xr dwarf_fde_cie_list_dealloc 3 ,
.Xr dwarf_set_frame_cfa_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_rule_initial_value 3 ,
.Xr dwarf_set_frame_rule_table_size 3 ,
.Xr dwarf_set_frame_same_value 3 ,
.Xr dwarf_set_frame_undefined_value 3

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_n.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_fde_n.3 3640 2018-10-14 14:09:13Z jkoshy $
.\"
.Dd May 14, 2011
.Os
.Dt DWARF_GET_FDE_N 3
.Os
.Sh NAME
.Nm dwarf_get_fde_n
.Nd retrieve FDE descriptor

View file

@ -22,11 +22,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" $Id: dwarf_get_fde_range.3 2071 2011-10-27 03:20:00Z jkoshy $
.\" $Id: dwarf_get_fde_range.3 3644 2018-10-15 19:55:01Z jkoshy $
.\"
.Dd May 22, 2011
.Os
.Dt DWARF_GET_FDE_RANGE 3
.Os
.Sh NAME
.Nm dwarf_get_fde_range
.Nd retrieve range information from an FDE descriptor
@ -134,9 +134,9 @@ was NULL.
.El
.Sh SEE ALSO
.Xr dwarf 3 ,
.Xr dwarf_get_cie_info 3 ,
.Xr dwarf_get_cie_index 3 ,
.Xr dwarf_get_cie_of_fde ,
.Xr dwarf_get_cie_info 3 ,
.Xr dwarf_get_cie_of_fde 3 ,
.Xr dwarf_get_fde_at_pc 3 ,
.Xr dwarf_get_fde_info_for_all_regs 3 ,
.Xr dwarf_get_fde_info_for_all_regs3 3 ,

Some files were not shown because too many files have changed in this diff Show more