summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSaleem Abdulrasool <compnerd@compnerd.org>2017-01-21 02:36:26 +0000
committerSaleem Abdulrasool <compnerd@compnerd.org>2017-01-21 02:36:26 +0000
commit4c33f7f2e302d1b54bac9ac05fc9bacb6743d26e (patch)
tree7f36ea7425f2a4340920d536ff5ae68acb91ef6d
parent28eae8f4e0fa4f5b7329a1255c2cf61b88901f33 (diff)
downloadbcm5719-llvm-4c33f7f2e302d1b54bac9ac05fc9bacb6743d26e.tar.gz
bcm5719-llvm-4c33f7f2e302d1b54bac9ac05fc9bacb6743d26e.zip
llvm-cxxfilt: support the `-s` option
This is a stub implementation of the `-s` or `--format` option that allows the user to specify the demangling style. Since we only support the Itanium (GNU) style demangling, auto is synonymous with `gnu`. Simply swallow the option to permit some level of commandline compatibility. llvm-svn: 292706
-rw-r--r--llvm/tools/llvm-cxxfilt/llvm-cxxfilt.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/llvm/tools/llvm-cxxfilt/llvm-cxxfilt.cpp b/llvm/tools/llvm-cxxfilt/llvm-cxxfilt.cpp
index 6076a6313b3..8f90bcfc897 100644
--- a/llvm/tools/llvm-cxxfilt/llvm-cxxfilt.cpp
+++ b/llvm/tools/llvm-cxxfilt/llvm-cxxfilt.cpp
@@ -17,6 +17,25 @@
using namespace llvm;
+enum Style {
+ Auto, ///< auto-detect mangling
+ GNU, ///< GNU
+ Lucid, ///< Lucid compiler (lcc)
+ ARM,
+ HP, ///< HP compiler (xCC)
+ EDG, ///< EDG compiler
+ GNUv3, ///< GNU C++ v3 ABI
+ Java, ///< Java (gcj)
+ GNAT ///< ADA copiler (gnat)
+};
+static cl::opt<Style>
+ Format("format", cl::desc("decoration style"),
+ cl::values(clEnumValN(Auto, "auto", "auto-detect style"),
+ clEnumValN(GNU, "gnu", "GNU (itanium) style")),
+ cl::init(Auto));
+static cl::alias FormatShort("s", cl::desc("alias for --format"),
+ cl::aliasopt(Format));
+
static cl::opt<bool>
Types("types",
cl::desc("attempt to demangle types as well as function names"),
OpenPOWER on IntegriCloud