mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 04:02:41 +01:00
f75dcd7d67
Sphinx allows for definitions of command-line options using `.. option <name>` and references to those options via `:option:<name>`. However, it looks like there is no scoping of these options by default, meaning that links can end up pointing to incorrect documents. See for example the llvm-mca document, which contains references to -o that, prior to this patch, pointed to a different document. What's worse is that these links appear to be non-deterministic in which one is picked (on my machine, some references end up pointing to opt, whereas on the live docs, they point to llvm-dwarfdump, for example). The fix is to add the .. program <name> tag. This essentially namespaces the options (definitions and references) to the named program, ensuring that the links are kept correct. Reviwed by: andreadb Differential Revision: https://reviews.llvm.org/D63873 llvm-svn: 364538
82 lines
1.9 KiB
ReStructuredText
82 lines
1.9 KiB
ReStructuredText
llvm-cxxfilt - LLVM symbol name demangler
|
|
=========================================
|
|
|
|
.. program:: llvm-cxxfilt
|
|
|
|
SYNOPSIS
|
|
--------
|
|
|
|
:program:`llvm-cxxfilt` [*options*] [*mangled names...*]
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
|
|
:program:`llvm-cxxfilt` is a symbol demangler that can be used as a replacement
|
|
for the GNU :program:`c++filt` tool. It takes a series of symbol names and
|
|
prints their demangled form on the standard output stream. If a name cannot be
|
|
demangled, it is simply printed as is.
|
|
|
|
If no names are specified on the command-line, names are read interactively from
|
|
the standard input stream. When reading names from standard input, each input
|
|
line is split on characters that are not part of valid Itanium name manglings,
|
|
i.e. characters that are not alphanumeric, '.', '$', or '_'. Separators between
|
|
names are copied to the output as is.
|
|
|
|
EXAMPLE
|
|
-------
|
|
|
|
.. code-block:: console
|
|
|
|
$ llvm-cxxfilt _Z3foov _Z3bari not_mangled
|
|
foo()
|
|
bar(int)
|
|
not_mangled
|
|
$ cat input.txt
|
|
| _Z3foov *** _Z3bari *** not_mangled |
|
|
$ llvm-cxxfilt < input.txt
|
|
| foo() *** bar(int) *** not_mangled |
|
|
|
|
OPTIONS
|
|
-------
|
|
|
|
.. option:: --format=<value>, -s
|
|
|
|
Mangling scheme to assume. Valid values are ``auto`` (default, auto-detect the
|
|
style) and ``gnu`` (assume GNU/Itanium style).
|
|
|
|
.. option:: --help, -h
|
|
|
|
Print a summary of command line options.
|
|
|
|
.. option:: --help-list
|
|
|
|
Print an uncategorized summary of command line options.
|
|
|
|
.. option:: --strip-underscore, -_
|
|
|
|
Discard a single leading underscore, if present, from each input name before
|
|
demangling.
|
|
|
|
.. option:: --types, -t
|
|
|
|
Attempt to demangle names as type names as well as function names.
|
|
|
|
.. option:: --version
|
|
|
|
Display the version of this program.
|
|
|
|
.. option:: @<FILE>
|
|
|
|
Read command-line options from response file `<FILE>`.
|
|
|
|
EXIT STATUS
|
|
-----------
|
|
|
|
:program:`llvm-cxxfilt` returns 0 unless it encounters a usage error, in which
|
|
case a non-zero exit code is returned.
|
|
|
|
SEE ALSO
|
|
--------
|
|
|
|
:manpage:`llvm-nm(1)`
|