1LLVM-CXXFILT(1) LLVM LLVM-CXXFILT(1)
2
3
4
6 llvm-cxxfilt - LLVM symbol name demangler
7
9 llvm-cxxfilt [options] [mangled names...]
10
12 llvm-cxxfilt is a symbol demangler that can be used as a replacement
13 for the GNU c++filt tool. It takes a series of symbol names and prints
14 their demangled form on the standard output stream. If a name cannot be
15 demangled, it is simply printed as is.
16
17 If no names are specified on the command-line, names are read interac‐
18 tively from the standard input stream. When reading names from standard
19 input, each input line is split on characters that are not part of
20 valid Itanium name manglings, i.e. characters that are not alphanu‐
21 meric, '.', '$', or '_'. Separators between names are copied to the
22 output as is.
23
25 $ llvm-cxxfilt _Z3foov _Z3bari not_mangled
26 foo()
27 bar(int)
28 not_mangled
29 $ cat input.txt
30 | _Z3foov *** _Z3bari *** not_mangled |
31 $ llvm-cxxfilt < input.txt
32 | foo() *** bar(int) *** not_mangled |
33
35 --format=<value>, -s
36 Mangling scheme to assume. Valid values are auto (default,
37 auto-detect the style) and gnu (assume GNU/Itanium style).
38
39 --help, -h
40 Print a summary of command line options.
41
42 --no-strip-underscore, -n
43 Do not strip a leading underscore. This is the default for all
44 platforms except Mach-O based hosts.
45
46 --strip-underscore, -_
47 Strip a single leading underscore, if present, from each input
48 name before demangling. On by default on Mach-O based platforms.
49
50 --types, -t
51 Attempt to demangle names as type names as well as function
52 names.
53
54 --version
55 Display the version of the llvm-cxxfilt executable.
56
57 @<FILE>
58 Read command-line options from response file <FILE>.
59
61 llvm-cxxfilt returns 0 unless it encounters a usage error, in which
62 case a non-zero exit code is returned.
63
65 llvm-nm(1)
66
68 Maintained by the LLVM Team (https://llvm.org/).
69
71 2003-2023, LLVM Project
72
73
74
75
7616 2023-07-20 LLVM-CXXFILT(1)