Commit graph

95 commits

Author SHA1 Message Date
Baptiste Daroussin
7bb36fb551 Generate manpage out of the texinfo files using texi2mdoc 2015-03-02 17:20:34 +00:00
John Baldwin
180e57e5c7 Improve support for XSAVE with debuggers.
- Dump an NT_X86_XSTATE note if XSAVE is in use. This note is designed
  to match what Linux does in that 1) it dumps the entire XSAVE area
  including the fxsave state, and 2) it stashes a copy of the current
  xsave mask in the unused padding between the fxsave state and the
  xstate header at the same location used by Linux.
- Teach readelf() to recognize NT_X86_XSTATE notes.
- Change PT_GET/SETXSTATE to take the entire XSAVE state instead of
  only the extra portion. This avoids having to always make two
  ptrace() calls to get or set the full XSAVE state.
- Add a PT_GET_XSTATE_INFO which returns the length of the current
  XSTATE save area (so the size of the buffer needed for PT_GETXSTATE)
  and the current XSAVE mask (%xcr0).

Differential Revision:	https://reviews.freebsd.org/D1193
Reviewed by:	kib
MFC after:	2 weeks
2014-11-21 20:53:17 +00:00
Pedro F. Giffuni
0944614655 cxxfilt: small changes from Apple's developer tools
From Apple's Developer Tools 4.0 [1]:

demangle.patch
2007-05-05  Geoffrey Keating
	(d_name): Detect local-source-name.
	(d_prefix): Likewise.
	(d_unqualified_name): Implement local-source-name.

libiberty-printf.patch

MFC after:	1 month

[1] http://opensource.apple.com/source/cxxfilt/cxxfilt-9/patches/
2013-11-11 21:18:02 +00:00
Sean Bruno
9113c7c613 Queisce warning about attempting to add char * together and use explicit
array indexing to indicate what is meant to be done
2013-10-31 18:53:13 +00:00
Andrew Turner
27b7672219 Add an elf note on ARM to store the MACHINE_ARCH an executable was built
for. This is useful for software needing to know which architecture a
binary is built for as arm and armv6 have slight differences meaning only
some binaries build for one will work as expected on the other. It is
expected pkgng will be able to make use of this to simplify the logic to
determine which package ABI to use.

Approved by:	re (kib)
2013-09-26 07:53:18 +00:00
Ed Maste
377fc97958 Improve readelf notes output for Linux ELF files
Add four ELF note constants:
- NT_FILE and NT_SIGINFO (core file notes output by recent Linux kernels)
- NT_GNU_ABI_TAG (was incorrectly reported as NT_VERSION)
- NT_GNU_BUILD_ID (used for locating standalone debug files)

Approved by:	re (kib)
2013-09-13 18:21:31 +00:00
Ed Maste
750288f343 Correct ELF note decoding for non-core files
Requested by:	kib
2013-07-19 01:04:17 +00:00
Ed Maste
9be99d951b Correct alignment in note output 2013-07-18 20:36:21 +00:00
Ed Maste
4e7a9c2e6f Remove accidentally cut-and-pasted colons 2013-07-18 19:17:58 +00:00
Ed Maste
c158e13f7d Handle FreeBSD-specific ELF notes
Add a function to return the specific type, when the note's Name field is
'FreeBSD'.

r249558 added FreeBSD-specific ELF note types that reuse type numbers of
existing generic / Linux types.  This caused 'readelf -n' to produce
incorrect output on FreeBSD core files.

Sponsored by:	DARPA, AFRL
MFC after:	3 days
2013-07-18 17:25:50 +00:00
Jung-uk Kim
a7880d59c9 Improve compatibility with recent flex from flex.sourceforge.net. 2013-05-03 23:51:32 +00:00
Dimitry Andric
9333231988 Similar to r239870 and r239872, teach the other binutils tools about the
DW_FORM_flag_present dwarf attribute, so they do not print errors or
warnings on files that contain it.  (This attribute can be emitted by
newer versions of clang and gcc.)

MFC after:	1 week
2013-03-27 19:21:36 +00:00
Dimitry Andric
6a1fba3556 Fix a twelve year old bug in readelf: when process_dynamic_segment()
encounters a DT_RUNPATH entry, the global dynamic_info[] array is
overrun, causing some other global variable to be overwritten.

In my testcase, this was the section_headers variable, leading to
segfaults or jemalloc assertions when it was freed later on.

Thanks to Koop Mast for providing samples of a few "bad" .so files.

MFC after:	1 week
2012-08-31 23:28:41 +00:00
Ben Laurie
479718927a Fix clang warnings.
Approved by:	philip (mentor)
2011-05-22 22:15:16 +00:00
Dimitry Andric
a35d3535ee Sync: merge r215464 through r215708 from ^/head. 2010-11-22 20:52:18 +00:00
Attilio Rao
7f08176ee8 Add the ability for GDB to printout the thread name along with other
thread specific informations.

In order to do that, and in order to avoid KBI breakage with existing
infrastructure the following semantic is implemented:
- For live programs, a new member to the PT_LWPINFO is added (pl_tdname)
- For cores, a new ELF note is added (NT_THRMISC) that can be used for
  storing thread specific, miscellaneous, informations. Right now it is
  just popluated with a thread name.

GDB, then, retrieves the correct informations from the corefile via the
BFD interface, as it groks the ELF notes and create appropriate
pseudo-sections.

Sponsored by:	Sandvine Incorporated
Tested by:	gianni
Discussed with:	dim, kan, kib
MFC after:	2 weeks
2010-11-22 14:42:13 +00:00
Dimitry Andric
97d40d3d4a Merge ^/vendor/binutils/dist@214571 into contrib/binutils, which brings
us up to version 2.17.50.20070703, at the last GPLv2 commit.

Amongst others, this added upstream support for some FreeBSD-specific
things that we previously had to manually hack in, such as the OSABI
label support, and so on.

There are also quite a number of new files, some for cpu's (e.g. SPU)
that we may or may not be interested in, but those can be cleaned up
later on, if needed.
2010-11-01 19:35:33 +00:00
Dimitry Andric
dfd2f2d4bb Merge ^vendor/binutils/dist@214082 into contrib/binutils. 2010-10-21 19:11:14 +00:00
Dimitry Andric
d1728c43cb Merge ^vendor/binutils/dist@213996 into contrib/binutils. Skip adding
any files we do not need, delete some files that were removed upstream,
but keep our own customizations and backports from later binutils.
2010-10-18 20:57:43 +00:00
Andriy Gapon
3f8ed583e6 readelf.1: remove duplicate -u/--unwind option description
MFC after:	2 weeks
2010-06-22 07:31:05 +00:00
David E. O'Brien
f51ee0a16d Rename vendor/binutils/*/contrib to vendor/binutils/*/x
Binutils has a "contrib" subdirectory - thus flattening cannot happen
without renaming the upper level contrib directory in a first pass.

Also, don't record this move and remove any keyword expansion.
2009-01-19 17:25:17 +00:00
David E. O'Brien
6c81463f56 Update HEAD with the stock binutils_2_15_20040523 file. 2004-06-16 06:55:49 +00:00
David E. O'Brien
da03bc7002 Import of Binutils from the FSF 2.15 branch (just post-.0 release).
These bits are taken from the FSF anoncvs repo on 23-May-2004 04:41:00 UTC.
2004-06-16 05:45:41 +00:00
David E. O'Brien
ad6e3f2b73 This commit was generated by cvs2svn to compensate for changes in r130561,
which included commits to RCS files with non-trunk default branches.
2004-06-16 05:45:41 +00:00
David E. O'Brien
ca88f70eac GC some stuff I thought was long gone. 2002-12-02 09:14:25 +00:00
David E. O'Brien
898696a8b3 Import of Binutils from the FSF 2.13 branch (just pre-.2 release).
These bits are taken from the FSF anoncvs repo on 27-Oct-2002 21:12:00 EST.
2002-12-02 09:06:04 +00:00
David E. O'Brien
6c3a332e94 This commit was generated by cvs2svn to compensate for changes in r107492,
which included commits to RCS files with non-trunk default branches.
2002-12-02 09:06:04 +00:00
David E. O'Brien
e4c6a19966 Try to keep CVS from pissing over the next binutils import by returning
to purely stock files.
2002-12-02 08:42:08 +00:00
David E. O'Brien
024d322c4b Use the vendor's 2.13.1_snap vendor version of this file as in rev 1.5. 2002-10-11 06:06:01 +00:00
David E. O'Brien
8dae927e1f We use the stock version of this file as in rev 1.4. 2002-10-11 06:05:36 +00:00
David E. O'Brien
88e5f95a93 Import of Binutils from the FSF 2.13 branch (just pre-.1 release).
These bits are taken from the FSF anoncvs repo on 11-Oct-2002 22:39:35 PDT.
2002-10-11 06:01:20 +00:00
David E. O'Brien
8febaae8e2 This commit was generated by cvs2svn to compensate for changes in r104834,
which included commits to RCS files with non-trunk default branches.
2002-10-11 06:01:20 +00:00
David E. O'Brien
c06f26c5b8 Remove these Bintuils 2.11 files that aren't part of 2.12. 2002-09-01 17:51:18 +00:00
David E. O'Brien
f862c555e6 Import of Binutils from the FSF 2.12 branch (post-.1 release). 2002-08-31 20:20:07 +00:00
David E. O'Brien
a00bb00510 This commit was generated by cvs2svn to compensate for changes in r102729,
which included commits to RCS files with non-trunk default branches.
2002-08-31 20:20:07 +00:00
David E. O'Brien
67fc1b2b4d We use the stock version of this file as in rev 1.4. 2002-07-05 20:35:38 +00:00
David E. O'Brien
c7549e32a4 Import of Binutils from the FSF 2.12 branch (just post-.1 release).
These bits are taken from the FSF anoncvs repo on 22-June-2002 23:28:00 EDT.
2002-07-05 20:16:34 +00:00
David E. O'Brien
95cd50e6d7 This commit was generated by cvs2svn to compensate for changes in r99461,
which included commits to RCS files with non-trunk default branches.
2002-07-05 20:16:34 +00:00
David E. O'Brien
0aecce1e34 Import of Binutils from the FSF 2.12 branch.
(this fixes several linker problems and coredumps)
These bits are taken from the FSF anoncvs repo on 10-April-2002 13:24 Zulu
2002-04-12 19:33:52 +00:00
David E. O'Brien
d31ed8e471 This commit was generated by cvs2svn to compensate for changes in r94536,
which included commits to RCS files with non-trunk default branches.
2002-04-12 19:33:52 +00:00
David E. O'Brien
701de7a951 Manpages moved into doc/ for 2.12. 2002-03-20 23:13:45 +00:00
David E. O'Brien
55ba99bb8d Import of Binutils from the FSF 2.12 branch (just post-.0 release).
These bits are taken from the FSF anoncvs repo on 20-March-2002 13:33:33 PST.
2002-03-20 21:37:13 +00:00
David E. O'Brien
771ecfb273 This commit was generated by cvs2svn to compensate for changes in r92828,
which included commits to RCS files with non-trunk default branches.
2002-03-20 21:37:13 +00:00
David E. O'Brien
a4029a1784 Use the vendor's 2.12_20020221_snap version of this file as in rev 1.4. 2002-02-22 04:47:16 +00:00
David E. O'Brien
eb1d121cb5 Import of Binutils from the FSF 2.12 branch (pre-.0 release).
These bits are taken from the FSF anoncvs repo on 21-Feburary-2002 20:15 PST.
2002-02-22 04:18:42 +00:00
David E. O'Brien
9e68b78882 This commit was generated by cvs2svn to compensate for changes in r91041,
which included commits to RCS files with non-trunk default branches.
2002-02-22 04:18:42 +00:00
David E. O'Brien
04f0ba0a6c Use the vendor's 2.12.0_snap vendor version of this file as in rev 1.5. 2002-01-27 12:12:53 +00:00
David E. O'Brien
eb18cc2ed5 Use the vendor's 2.12.0_snap version of this file as in rev 1.4. 2002-01-27 12:09:38 +00:00
David E. O'Brien
dbbf32dd39 Enlist the FreeBSD-CURRENT users as testers of what is to become Binutils
version 2.12.0.  These bits are taken from the FSF anoncvs repo on
27-January-2002 03:41 PST.
2002-01-27 12:00:11 +00:00
David E. O'Brien
e85f989710 This commit was generated by cvs2svn to compensate for changes in r89857,
which included commits to RCS files with non-trunk default branches.
2002-01-27 12:00:11 +00:00